#include<string.h>
#include<stdio.h>
#define MAX 10
main()
{
char str[MAX][100];
char hh[100];
int i,j,bx;
for(j=0;j<100;j++)
{scanf("%s",str[i][j]);
if(str[i][j])==13)
{i=i+1;
j=0;
if(i>MAX)
break;}}
for(bx=0;bx<MAX-1;bx++)
for(i=0;i<MAX-1-bx;i++)
for(j=0;j<100;j++)
if(strcmp(str[i+1][j]),str[i][j])>0)
{
strcpy(hh,str[i][100]);
strcpy(str[i+1][100],hh);
}
printf("排好后:\n");
for(i=0;i<10;i++)
for(j=0;j<100;j++)
printf("%s",str[i][j]);
getchar();
getchar();
getchar();
getchar();
getchar();
getchar();
}
这是我写的代码,基本思路是冒泡排序,可是编译过不去,求大能改进
这是我改进之后的,但还是有问题.........
........str我设的是char变量........
追答str是数组,而str[i][j]才是char型的元素,代表值。还有strcpy()传的参数也是地址