请补充main 函数,该函数的功能是:求n! 例如7!=5040。 注意:部分源程序给出如下。 请勿改动主函数main 和其他函数中的任何内容,仅在 main 函数的横线上填入所编写的若干表达式或语句。 试题程序: # include<stdio. h> #include<conio. h> main() { int i,n; long f=1; clrscr (); printf("Input n: "); scanf ("%d", 【1】 ); for( 【2】 ;i<=n; i++) 【3】 ; printf ("%d!=%1d\n", n, f); }
参考答案:[1] &n [2] i=1或i=2 [3] f*=i
解析:填空1:本题考查对调用标准输入函数scanf()的掌握,地址列表中都是地址值,所以在变量名前要加上取址运算符&。填空2:n的阶乘是将1、2、3……n累积相乘,所以for 循环中i从1开始取数。但因为1乘以任何数都等于这个数本身,所以地可以从2开始取数。填空3:掌握了阶乘的算法,这空就非常简单了。