#include<stdio.h>
#include<stdlib.h>
int main(void)
{
int num1,num2,temp,max,min,gcd;
scanf("%d %d",&num1,&num2);
if(num2>num1)
{
max=num2;
min=num1;
while((temp=max%min)!=0)
{
min=max;
max=temp;
}
gcd=max;
printf("%d ",gcd );
}
else
{
max=num1;
min=num2;
while((temp=max%min)!=0)
{
max=min;
min=temp;
}
gcd=min;
printf("%d ",gcd );
}
system("PAUSE");
return 0;
}
-------------------------------------------------------------------------------
改成
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
int num1,num2,temp,max,min,gcd;
scanf("%d %d",&num1,&num2);
if(num2>num1)
{
max=num2;
min=num1;
while((temp=max%min)!=0)
{
min=max;
max=temp;
}
gcd=max;
printf("%d ",gcd );
}
else
{
max=num1;
min=num2;
while((temp=max%min)!=0)
{
max=min;
min=temp;
}
gcd=min;
printf("%d ",gcd );
}
return 0;
}
==============================
錯誤訊息
您的程式未完成所有的輸出!!(line:2)
您只輸出了 1 行!
可能的原因為
* 未用 while 迴圈讀取全部的測試資料,以致輸出短少,請參考 a001 範例程式。
* 程式未充分考慮所有邊界值而導致程式提前中止
如同錯誤訊息所說的
未用 while 迴圈讀取全部的測試資料,以致輸出短少,請參考 a001 範例程式。