主题:[讨论]一道字符串题!(帮忙瞧一瞧)
题目:输入3个字符串,进行从小到大排列???
#include<stdio.h>
#include<string.h>
void main()
{int i,j;
char *p,a[3][20],*t;
printf("请输入3个字符串:\n");
p=*a+j;
for(i=0;i<3;i++)
gets(a[i]);
printf("\n");
for(i=0;i<2;i++)
for(j=0;j<2-i;j++)
if(strcmp(*a+j,*a+j+1)>0)
{strcpy(t,*a+j);
strcpy(*a+j,*a+j+1);
strcpy(*a+j+1,t);
}
printf("输出从大到小的字符串:\n");
p=*a+j;
for(i=0;i<3;i++)
puts(a[i]);
}
这个程序运行是能运行,但是,输入了就是不显示从小到大排列了(只显示我输入的那个3个字符串了)我就有些不理解了!!! 郁闷
请求指点!!!
[em1][em2][em2][em2][em2][em1]
#include<stdio.h>
#include<string.h>
void main()
{int i,j;
char *p,a[3][20],*t;
printf("请输入3个字符串:\n");
p=*a+j;
for(i=0;i<3;i++)
gets(a[i]);
printf("\n");
for(i=0;i<2;i++)
for(j=0;j<2-i;j++)
if(strcmp(*a+j,*a+j+1)>0)
{strcpy(t,*a+j);
strcpy(*a+j,*a+j+1);
strcpy(*a+j+1,t);
}
printf("输出从大到小的字符串:\n");
p=*a+j;
for(i=0;i<3;i++)
puts(a[i]);
}
这个程序运行是能运行,但是,输入了就是不显示从小到大排列了(只显示我输入的那个3个字符串了)我就有些不理解了!!! 郁闷
请求指点!!!
[em1][em2][em2][em2][em2][em1]