C语言:输入5个字符串,按由小到大(我想应该是strcmp函数比较)的顺序输出
2个回答
展开全部
#include<stdio.h>
#include<string.h>
#define M 5
#define N 20
void main()
{
char str[M][N],temp[N];
int i,j;
for(i=0;i<M;i++)
{
printf("请输入第%d个字符串:",i+1);
scanf("%s",&str[i]);
}
printf("排序前:\n");
for(i=0;i<M;i++)
printf("第%d个字符串:%s\n",i+1,str[i]);
for(j=0;j<M-2;j++)
{
for(i=0;i<=M-j-1;i++)
if(strcmp(str[i],str[i+1])>0)
{
strcpy(temp,str[i]);
strcpy(str[i],str[i+1]);
strcpy(str[i+1],temp);
}
}
printf("排序后:\n");
for(i=0;i<M;i++)
printf("第%d个字符串:%s\n",i+1,str[i]);
}
下面是程序运行的截图,供你参考。
展开全部
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
main()
{char a[6][80];
int i,j;
for(i=0;i<5;i++) gets(a[i]);
for(i=0;i<5;i++)for(j=i+1;j<5;j++)
if(strcmp(a[i],a[j])>0)
{strcpy(a[5],a[i]);strcpy(a[i],a[j]);strcpy(a[j],a[5]);}
for(i=0;i<5;i++) puts(a[i]);
system("pause");
return 0;
}
#include "stdlib.h"
#include "string.h"
main()
{char a[6][80];
int i,j;
for(i=0;i<5;i++) gets(a[i]);
for(i=0;i<5;i++)for(j=i+1;j<5;j++)
if(strcmp(a[i],a[j])>0)
{strcpy(a[5],a[i]);strcpy(a[i],a[j]);strcpy(a[j],a[5]);}
for(i=0;i<5;i++) puts(a[i]);
system("pause");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询