【程序功能】
以下程序中函数void csort(char str[][N],int n)对str指向的二维数组前n行中存储的n
个字符串分别作如下处理:从中间将字符串一分为二,左半部分字符子串按字符的ASCII码值
从大到小排序(若字符串的长度为奇数,则中间字符不参加排序)。
【测试数据与运行结果】
测试字符串:"abcdefgh","123498765"
屏幕输出:dcbaefgh
432198765
【含有错误的源程序】
以下源程序已保存在T盘myf1.c文件内,考生可直接打开该文件的调试程序。
1 #include
2 #include
3 #include
4 #define N 80
5 void csort(char str[][N],int n);
6 void main()
7 {char s[2][N]="abcdefgh","123498765";
8 int i;
9 csort(s,2);
10 for(i=0;i<2;i++)
11 puts(s);
12 getch();
13 }
14 void csort(char str[][N],int n)
15 { int i,j,k,len,half;
16 char temp;
17 for(i=0;i18 {len=strlen(str[i][0]);
19 half=len/2;
20 for(j=0;j21 for(k=j+1;k22 if(str[i][j]23 {temp=str[i][j];
24 str[i][j]=str[i][k];
25 str[i][k]=temp;
26 }
27 }
28 }
【要求】
1.打开T盘中myf1.c文件或将上述程序录入到myf1.c文件中,根据题目要求及程序中
语句之间的逻辑关系对程序中的错误进行修改。
2.改错时,可以修改语句中的一部分内容,调整语句次序,增加少量的变量说明或编译预
处理命令,但不能增加其他语句,也不能删去整条语句。
3.将改正后的源程序(文件名myf1.c)保存在T盘中供阅卷使用,否则不予评分。