c语言中从键盘输入N个字符串,将字符串按从小到大的顺序排列并输出
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言中从键盘输入N个字符串,将字符串按从小到大的顺序排列并输出相关的知识,希望对你有一定的参考价值。
参考技术A 1输入字符串;
2
对字符串进行排序;
3
输出。
排序中需要注意:
1
用strcmp比较字符串;
2
用strcpy执行字符串的赋值。
代码如下:
#define N 50
int main()
char s[N][100];
int i,j;
for(i = 0; i < N; i ++)
scanf("%s",s[i]);
for(i = 0; i < N-1; i ++)
for(j = i+1; j < N; j ++)
if(strcmp(s[i],s[j])>0)
char t[100];
strcpy(t,s[i]);
strcpy(s[i],s[j]);
strcpy(s[j],t);
for(i = 0; i < N; i ++)
puts(s[i]);
参考技术B 字符串?
小到大~~~字母是按那个对应的算?还是只算数字的?
C语言 将若干个字符串按字母顺序由小到大输出
重点考察“指针数组”
#include <stdio.h>
#include <string.h>
void sort(char *name[],int n)
char *temp;
int i,j,k;
for(i=0;i<n-1;i++) //选择排序法
k=i;
for(j=i+1;j<n;j++)
if(strcmp(name[k],name[j])>0)
k=j;
if(k!=i)
temp=name[i];
name[i]=name[k];
name[k]=temp;
void print(char *name[],int n)
int i;
printf("由小到大输入字符串:\\n");
for(i=0;i<n;i++)
printf("%s\\n",name[i]);
int main()
char *name[]="Follow me","BASIC","Great Wall","FORTRAN","Computer design";
int n=5;
sort(name,n);
print(name,n);
return 0;
以上是关于c语言中从键盘输入N个字符串,将字符串按从小到大的顺序排列并输出的主要内容,如果未能解决你的问题,请参考以下文章
内容:输入n个字符串,对这n个字符串进行排序(按升序),输出排序后的字符串。然后从键盘再次输入一字符