字母排序函数C语言,c语言字母排序编程

C语言:将输入的字符串按首字母顺序排列。

#includestdio.h

十余年的西华网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都营销网站建设的优势是能够根据用户设备显示端的尺寸不同,自动调整西华建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联建站从事“西华网站设计”,“西华网站推广”以来,每个客户项目都认真落实执行。

#includestring.h

void sort(char *a[]);

void print(char *a[]);

int main()

{

char *a[] ={"ceo","define","basic","abc","empty"};

printf("原来的序列是:\n");

print(a);

sort(a);

printf("\n排序后的序列是:\n");

print(a);

printf("\n");

return 0;

}

void sort(char *a[])

{

int i,j;

char *temp;

for(i=0;i4;i++)//注意是i4

{

for(j=0;j4;j++)//注意是j4,因为下面要+1和后面的那个字符串比较

{

if(strcmp(a[j],a[j+1])0)//字符串比较:0表示前面的字符串比后面的大则交换

{

temp=a[j];

a[j]=a[j+1];

a[j+1]=temp;

}

}

}

}

void print(char *a[])

{

int i;

for(i=0;i5;i++)

{

printf("%s ",a[i]);

}

}

运行效果:

扩展资料:

return 0的用法:

return的作用是结束正在运行的函数,并返回函数值。return后面可以跟一个常量,变量,或是表达式。

函数的定义一般是这样的,例如:

inta(inti)//第一个int是函数的返回值的类型,也就是return后面跟的值的类型,a是函数的名称,括号里的是传递给函数的参数,int是参数的类型,i是参数的名字

...//省略函数体内容

returnb;//b必须与函数头的返回值一致(此处为int型)

简单函数举例:

intaddOne(intb)

returnb+1;

该函数的作用是取得一个数,将这个数加上1,再将结果返回

调用时这样:

intresult=addOne(2);//此时result的值为3

函数括号里的参数也可以为变量或能算出值的表达式

以上就是一个基本的函数,一般的函数都有返回值,也就是return后面跟的值,返回值可以为各种数据类型,如:int,float,double,char,a[](数组),*a(指针),结构或类(c++)

但不是所有函数都有返回值,如果某个函数无返回值,那么返回值的位置则为“void”关键字,此时函数体中无返回值,即无return的值。但是函数中也可出现return,即一个空的return句子,其作用是使函数立即结束,如voidprint()//括号中为空表示无传递参数、

printf("a");

printf("b");

return;//函数执行到此处结束

printf("c");

}//该函数只执行到return语句处,即屏幕上输出的为"ab"

如何用C语言给字母排序?

#include stdio.h

int main()

{ char c[6]= {'c', 'a', 't', 'd', 'o', 'g'},t;

int i,j;

for (i=0; i5; i++)

for (j=0; j5-i; j++)

if(c[j]c[j+1])

{ t=c[j];

  c[j]=c[j+1];

  c[j+1]=t;

}

for (i=0; i6; i++)

printf("%c ", c[i]);

printf("\n");

return 0;

}

C语言 字母排列

1、该排序算法是选择排序算法

2、在i位置为大写字母时进行第二层遍历

3、如果判断不为大写字母,不需要j++之后continue,否则会跳过一个字母

修改后代码如下,修改位置注释给出:

//1072字母排列

#includestdio.h

#includestring.h

int main()

{

char a[65];

int i,j,b,min;

gets(a);  //读取一行内容

b=strlen(a);

//冒泡排序法,i为前面的字符,j为后一个字符

for(i=0;ib-1;i++)

{

if(a[i]'A'||(a[i]'Z')||a[i]==' ')continue;/////judge

for(j=i+1;jb;j++)

{

if(a[j]'A'||(a[j]'Z')||a[j]==' ')

{

//j++;//delete

continue;

}

if(a[i]a[j])//从小到大排序,小的排左边,大的排右边

{

min=a[j];

a[j]=a[i];

a[i]=min;

}

}

}

for(i=0;ib;i++)

printf("%c",a[i]);

return 0;

}

c语言程序 中文按首字母排序

#include stdio.h

#include string.h

#define MAX_NAME 20 //最大名字长度

#define MAX_NUM 100 //最大学生人数

void sort_bubble(char (*pc)[MAX_NAME],int n)//排序函数

{

int i,j;

char str[MAX_NAME];

for(i=0;in-1;i++)

{

for(j=i+1;jn;j++)

{

if(strcmp(pc[i],pc[j])0)

{

strcpy(str,pc[i]);

strcpy(pc[i],pc[j]);

strcpy(pc[j],str);

}

}

}

}

void display_name(char (*pc)[MAX_NAME],int n)//显示这n个姓名

{

int i;

for(i=0;in;i++)

{

printf("%s\n",pc[i]);

}

}

int main()

{

int i=1,n;

char str[MAX_NUM][MAX_NAME];

printf("请输入学生总数:");

scanf("%d",n);

while(i=n)

{

printf("请输入第%d个学生姓名:",i);

scanf("%s",str[i++-1]);

}

printf("排序前的学生名单如下:\n");

display_name(str,n);

sort_bubble(str,n);

printf("排序后的学生名单如下:\n");

display_name(str,n);

return 0;

}

说明:

1:采用的是冒泡排序,用快速排序当然快些,但我忘了

2:已验证通过,结果正确。

3:随意输入人数和姓名,只要数组不越界就没有问题!

4:两个函数:排序和显示

5:给分+好评


当前标题:字母排序函数C语言,c语言字母排序编程
文章位置:http://ybzwz.com/article/hdcihe.html