例题:函数fun的功能是:将形参b所指数组中的前半部分元素的值和后半部分元素的值对换。形参n中存放数组中数据的个数,若n为奇数,则中间的元素不动。
例如,若a所指数组中的数据依次为:11 22 33 1 44 55 66,则调换后为:44 55 66 1 11 22 33。
请勿改动主函数main与其他函数中的任何内容,仅在fun函数的横线上填写所需的若干表达式或语句。
代码如下:
#include<stdio.h>
#define M 7
void fun(int b[],int n)
{
int j,temp,p;
p=(n%2==0)?n/2:n/2+1;
for(j=0;j<n/2;j++)
{
temp=b[j];
b[j]=b[p+j];
b[p+j]=temp;
}
}
main()
{
int x[M]={
11,22,33,1,44,55,66},i;
printf("\nThe original data:\n");
for(i=0;i<M;i++)
printf("%4d",x[i]);
printf("\n");
fun(x,M);
printf("\nThe data after moving:\n");
for(i=0;i<M;i++)
printf("%4d ",x[i]);
printf("\n");
}
输出运行窗口如下:
越努力越幸运!
加油,奥力给!!!