问题 填空题

请补充函数fun(),该函数的功能求能整除x且是偶数的数,把这些数保存在数组bb中,并按从大到小的顺序输出。 例如当x=20时,依次输出:20 10 4 2。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。 试题程序: #include<conio.h> #include<stdio.h> void fun(int k,int bb[ ]) { int i; int j=0; for( 【l】 ;i<=k;i++) {if( 【2】 ) bb[i++]=i; } printf("\n\n"); for(i= 【3】 ;i>=0;i--)printf("%d",bb[i]); } main( ) { int k=1; int bb[100]; clrscr( ); printf("\nPlease input X="); scanf("%d",&k); fun(k,bb); }

答案

参考答案:[1] i=l [2] k%i==0&&i%2==0 [3] -j

解析: 填空1:为了求出能整除k,且是偶数的数,寻找范围是从1到k。填空2:如果i能整除k,则k对i求余为0,如果i为偶数,则i对2求余为0,由于这两个条件要同时满足,所以要使用“与”运算符“&&”。填空3:由于数组bb[]中的数是按从小到大的顺序排列的,而题目要求按从大到小输出,所以从数组的最后一个元素开始,依次输出。因为在for循环中,变量j多加了一次,所以这里要将j减1,得到数组最后一个元素的下标。

选择题
判断题