请问我做的那个地方错了阿!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
从键盘输入5个字符串,用起泡法对这5个字符串排序提示:可以定义一个二维字符数组char str[5][100], 分别将5个从键盘输入的字符串存到str[i]中(i =0 ~ 4). 请问我做的那个地方错了阿!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!11
------------------------------------------------------------
#include "stdio.h"
void main()
{char a[5][100],t;
int i,j,k,l=1;
{for(k=0;k<5;k++)
{for(i=1;i<=100;i++)
fflush(stdin);
scanf("%c",&a);
}
}
for(k=1;k<=5;k++)
{for(j=1;j<=100;j++)
{for(i=1;i<=100-j;i++)
{if(a[k][i]>a[k][i+1])
{t=a[k][i];a[k][i]=a[k][i+1];a[k][i+1]=t;}
}
}
}
printf("number\n");
for(k=0;k<5;k++)
{for(i=1;i<=100;i++)
{printf("%c",a[k][i]);}
printf("\n");}
}
----------------解决方案--------------------------------------------------------
你的那么多花括号都是干什么用的啊
把格式好好整理一下
好象是多了几个括号
----------------解决方案--------------------------------------------------------
跟括号没关系的
主要还是字符串的问题
----------------解决方案--------------------------------------------------------
如果你的源码和上面一样的话就是括号的问题
至少括号有问题
我copy到tc里用缩进看了一下
丢了好几个}
----------------解决方案--------------------------------------------------------
还有开始的时候的scanf肯定有问题
----------------解决方案--------------------------------------------------------
你问题描述的也不清楚
我都不知道你要做什么
----------------解决方案--------------------------------------------------------
我这上面运行没有错误提示哇
只是运行后出现乱码
不知道什么原因
----------------解决方案--------------------------------------------------------
例如输入五个字符串
qwer
tyu
iop
asd
gha
运行结果应该是
eqrw
tuy
iop
ads
agh
----------------解决方案--------------------------------------------------------
你那个fflush我查了一下
是跟文件读取有关的
不知道你想做什么
另外你的括号用的位置错了
应该for(){}
而不是{for()}
那个scanf("%c",&a)肯定错了,"&a"什么意义也没有,a就是整个数组的地址,数组和别的不一样
scanf("%c",&a[j][i])
这样好象可以
scanf很容易出错的,建议使用gets()
这样用个单循环就行了
还保险
----------------解决方案--------------------------------------------------------
你要是刚开始学
不要做这么复杂的题
----------------解决方案--------------------------------------------------------