请补充函数fun(),该函数的功能是把数组aa中的奇数元素按原来的先后顺序放在原数组后面。
例如,输入“33,67,42,58,25,76,85,16,41,56”,输出结果“42,58,76,16,56,33,67,25,25,41。
注意:部分源程序给出如下。
请勿改动主函数main和具他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
试题程序:
#include <stdio.h>
#define N 10
void fun(int aa[])
int i, j=0,k 0;
int bb IN];
for (i 0; i<N; i++)
if ( 【1】 )
bb[k++] aa[i];
else
aa [j++] =aa Ii];
for(i=0; i<k; 【2】 )
aa[j] bb[i];
main ( )
int i;
int aa[N]=33, 67, 42,58,25, 76, 85, 16,
41,56;
clrscr ();
printf("\n*** original list ***\n");
for (i=0; i<N; i++)
printf("%4d", aa[i]);
fun (aa);
printf("\n*** new list ***\n");
for (i=0; i<N; i++)
printf("%4d", aa[i]);
参考答案:[A] aa[i]%B!=0或 aa[i]%B==A
[B] i++,j++
解析: 填空1:如果一个数对2求余,结果不为0,也就是等于1,则这个数为奇数,就把这个数先暂时存在数组bb中。否则这个数为偶数,就存在数组aa中。填空2:最后,将数组bb中的奇数都拷贝到数组aa中偶数的后面。每执行一次循环休,数组aa的下标j和数组bb的下标i都要加1。