问答题 【程序功能】 以下程序中函数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;i
【正确答案】第7行 {char s[2][N]="abcdefgh","123498765"; 改为{"abcdefgh","123498765"} 第11行 puts(s); 改为puts(s[i]) 第18行 {len=strlen(str[i][0]); 改为str[i] 第21行 for(k=j+1;k
【答案解析】