题目内容:
请补充函数proc(),该函数的功能是把数组arr中的奇数元素按原来的先后顺序放在原数组后面。例如,原始数组为“33 67 42 58 25 76 85 16 41 55”,则输出结果为“42 58 76 16 33 67 25 85 41 55”。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdlib.h>
#include<stdio.h>
#define M 10
void proc(int arr[])
{
int i,j=0,k=0;
int bb[M];
for(i=0;i<M;i++)
{
if(【1】)
bb[k++]=arr[i];
else
arr[j++]=arr[i];
}
for(i=0;i<k;【2】)
arr[j]=bb[i]:
}
void main()
{
int i;
int arr[M]={33,67,42,58,25,76,85,16,41,55};
system("CLS");
printf("\n***original list***\n");
for(i=0;i<M;i++)
printf("%4d",arr[i]);
proc(arr);
printf("\n***new list***\n");
for(i=o;i<M;i++)
printf("%4d",arr[i]);
}
参考答案:
答案解析: