问题
填空题
请补充函数fun(),该函数的功能是判断一个数是否为素数。该数是素数时,函数返回字符串:yes!,否则函数返回字符串:no!,并在主函数中输出。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。 试题程序: #include "conio.h" #include "stdio.h" 【1】 { int i, m; m=1; for(i= 【2】 ;i<n; i++) if ( 【3】 ) { m=0; break; } if(m==1&&n>1) return("yes!"); else return("no!"); } main() { int k=0; clrscr(); printf("Input:"); scanf("%d",&k); printf("%s\n",fun(k)); }
答案
参考答案:[1] char *fun(int n) [2] 2 [3] n%i==0或!(n%i)
解析: 填空1:根据main()中调用的函数fun(k),可知函数fun的形参为int型变量,函数的返回值为字符型指针。填空2:判断一个数是否为素数时,也就是判断这个数是否有除了1和其自身之外的因子,所以for循环的变量从2开始,直到这个数的前一个数。填空3:如果一个数能被除了1和其自身之外的数整除,即余数为0,则这个数不是素数。