感激不尽!希望大家检查这个程序有什么毛病,谢谢!
#include<stdio.h>int main(){
int c1,c2; /*c1 c2是字符串数量*/
scanf("%d%d",&c1,&c2); /*得到c1c2数值*/
char ch1[20],ch2[20]; /*两个字符串*/
int a,b,k=0; /*循环变量 K记录相等数量*/
for(a=0;a<c1;a++)
scanf("%c",ch1[a]);
for(b=0;b<c2;b++)
scanf("%c",ch2[b]); /*得到字符串*/
if(c1<c2){ /*比较c1c2大小*/
for(a=0;a<c1;a++)
printf("%c",ch1[a]);
printf("\n");
for(b=0;b<c2;b++)
printf("%c",ch2[b]);
}
else if(c1>c2){
for(b=0;b<c2;b++)
printf("%c",ch2[b]);
printf("\n");
for(a=0;a<c1;a++)
printf("%c",ch1[a]);
}
else for(a=0;a<c1;a++){
if(ch1[a]>ch2[a]){
for(b=0;b<c1;b++)
printf("%c",ch2[b]);
printf("\n");
for(b=0;b<c1;b++)
printf("%c",ch1[b]);
break;
}
if(ch2[a]>ch1[a]){
for(b=0;b<c1;b++)
printf("%c",ch1[b]);
printf("\n");
for(b=0;b<c1;b++)
printf("%c",ch2[b]);
break;
}
else ++k;
if(k==c1){
for(b=0;b<c1;b++)
printf("%c",ch2[b]);
printf("\n");
for(b=0;b<c1;b++)
printf("%c",ch1[b]);
break;
}
}
return 0;
}
此程序目的是得到两个字符串,并按照ASCII的顺序输出。编译通过,但在运行时提示错误,这是为什么呢?