C语言改错题,题目:实现n个字符串的升序排列#include <stdio.h>#include <string.h>#define ROW 5#define COL 30void fun(char s[][COL],int n) {char temp[COL];int i,j;for(i=0; i<n-1; i++)/**/ for (j=i+1; j<n-1; j++) /**/ for (j=i+1; j<n; j++)if(strcmp(s[i],s[j])>0){strcpy(temp,s[i]);strcpy(s[i],s[j]);strcpy(s[j],temp);}}void main(){int i;char str[][COL]={"DEF","BAEELCS","FHIAME","CBADF","APMAE"};/**/ fun(str,COL); /**/ fun(str,ROW);clrscr();for(i=0;i<ROW;i++)printf("%s\n",str[i]);getch();/**/ /**/这个中间是有错的部分,右边是正确答案,而我不太理解的是/**/ for (j=i+1; j<n-1; j++) /**/ for (j=i+1; j<n; j++) 为什么不可以这样子写for (j=0; j<n-1; j++)还有就是/**/ fun(str,COL); /**/ fun(str,ROW);COL为什么改成ROW,求会的大神详细解析下,谢谢
- 2 回答
- 0 关注
- 1597 浏览
添加回答
举报
0/150
提交
取消