輸入其他值沒問題輸入1或2就出133,,,
#include<stdio.h>
int main(void)
{
int N,f1,f2,i,A;
f1=1;
f2=1;
scanf("%d",&N);
if(N<=2)
printf("1");
if(N>2)
{
for(i=3;i<=N;i++)
{
A=f1+f2;
f1=f2;
f2=A;
}
}
printf("%d",A%2000000003);
return 0;
}
uj5u.com熱心網友回復:
#include<stdio.h>
int main(void)
{
int N,f1,f2,i,A;
f1=1;
f2=1;
scanf("%d",&N);
if(N<=2) {
printf("1");
return 0;
}
//if(N>2)
//{
for(i=3;i<=N;i++)
{
A=f1+f2;
f1=f2;
f2=A;
}
//}
printf("%d\n",A%2000000003);
return 0;
}
供參考~
因為A沒有初始化,輸入1或2,會執行最后一個printf陳述句,由于A 是隨機值,所以可能出現133;
uj5u.com熱心網友回復:
N<=2時,A沒有賦值,所以A是不確定的,要么就在print(“1”)以后return,要么就把print(“1”)改成A=1轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/194740.html
標籤:C語言
下一篇:關于清潔代碼的規范性疑問
