求解C语言的一个问题~ 20
1#include<stdio.h>2intmain(){3intf[41],i,n;4f[0]=1;5f[1]=1;6for(i=2;i<41;i++)7f[i]=f[...
1 #include <stdio.h>
2 int main()
{ 3 int f[41], i, n;
4 f[0] = 1; 5 f[1] = 1;
6 for(i = 2; i < 41; i++)
7 f[i] = f[i-1] + f[i-2];
8 while(scanf("%d", &n) != EOF&&n)
{ 9 printf("%d\n", f[n]);10 }
11 return 0;
这是一个关于上台阶的问题 我想知道 while(scanf("%d", &n) != EOF&&n) 这个语句中EOF到底是什么意思 起什么作用 为什么我删去!=EOF一样程序通过? 展开
2 int main()
{ 3 int f[41], i, n;
4 f[0] = 1; 5 f[1] = 1;
6 for(i = 2; i < 41; i++)
7 f[i] = f[i-1] + f[i-2];
8 while(scanf("%d", &n) != EOF&&n)
{ 9 printf("%d\n", f[n]);10 }
11 return 0;
这是一个关于上台阶的问题 我想知道 while(scanf("%d", &n) != EOF&&n) 这个语句中EOF到底是什么意思 起什么作用 为什么我删去!=EOF一样程序通过? 展开
1个回答
展开全部
void fun(int x) { if(x/2>0) //if (3/2>0) 成立,执行fun(3/2)<==>fun(1),==>if(1/2>0)不成立,执行printf,输出1,然后回到函数回调出,及输出开始的3,所以输出结果为:13,另:不管if成立与否,printf都执行. fun(x/2); printf(“%d”,x); } main() { fun(3); printf(“\n”); }
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询