for(i=0;i<M;I++)< p=""></M;I++)<>
printf("%d ",a[i]);
printf("\n");
fun(a,m);
printf("排序后的顺序:");
for(i=0;i<M;I++)< p=""></M;I++)<>
printf("%d ",a[i]);
printf("\n");
}
答案及评析:
(1)错误:for(j=0;j<="">
正确:for(j=0;j<N-1;J++)< p=""></N-1;J++)<>
(2)错误:a[p]=t;
正确:a[j]=t;
【解析】错误 1:根据 C 语言语法,for 循环中循环条件后不加分号,除非做空操作。
错误 2:将两数进行交换的常用语句,借助第三个变量。
3. 编程题
下列程序定义了 N×N 的二维数组,并在主函数中赋值。请编写函数 fun(),函数的
功能是:求出数组周边元素的平方和并作为函数值返回给主函数中的 s。例如:若 a 数
组中的值为
a=0 1 2 7 9
1 11 21 5 5
2 21 6 11 1
9 7 9 10 2
5 4 1 4 1
则返回主程序后 s 的值应为 310。
注意:部分源程序给出如下。
请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun 的花括号中填入所
编写的若干语句。
试题程序:
#include
#include