全部问题 > 当前问题

system("cls");system("pause");为什么没有用,如果要使用该如何编写

#include<stdio.h>

#include<stdlib.h>

int f(int n)

{

if(n==1||n==2)

return 1;

else

return f(n-1)+f(n-2);

}

main()

{

int a;

system("cls");

scanf("%d",&a);

printf("%d\n",f(a));

system("pause");

}


m 2015-11-22 22:08:37

共 3 个回答

嘿嘿大人 2015-11-22 22:20:17

如果要让他有作用,你必须再加上一个while(1)函数;不然这个函数只能执行一次;

改变如下:

#include<stdio.h>


#include<stdlib.h>


int f(int n)


{


if(n==1||n==2)


return 1;


else


return f(n-1)+f(n-2);


}


main()


{


int a;

while(1)


{

system("cls");


scanf("%d",&a);


printf("%d\n",f(a));


system("pause");

}

}


m 2015-11-22 22:28:23

回复 嘿嘿大人:(。・_・。)忘了

嘿嘿大人 2015-11-22 22:28:44

回复 m:加上就行了,嘿嘿

问题来自: 递归函数