C语言中输入一串字符,怎样让它按照字母从小到大的顺序排列?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中输入一串字符,怎样让它按照字母从小到大的顺序排列?相关的知识,希望对你有一定的参考价值。
C语言中输入一串字符,怎样让它按照字母从小到大的顺序排列?
这可以把字符串输入到字符数组中,然后采用排序的方法来实现:(需要包含<string.h>头文件)
char t,s[200];
int i,i;
gets(s);
for(i=0;i<strlen(s)-1;i++)
for(j=0;j<strlen(s)-1-i;j++)
if(s[j]>s[j+1])
t=s[j]; s[j]=s[j+1]; s[j+1]=t;
puts(s); 参考技术A 字符存储形式为ASCLL码
可以把他们看做是一般整数进行排序
冒泡,快速,希尔……都可以! 参考技术B #include <stdio.h>
#include <string.h>
const int MAX = 10000;
int main()
char str[MAX],tempst;
gets(str);
for(int i = 0; i < strlen(str); ++i)
for(int j = i + 1; j< strlen(str); ++j)
if(str[i]>str[j])
tempst = str[i];
str[i] = str[j];
str[j] = tempst;
for(i = 0 ; i < strlen(str); ++i)
printf("%c",str[i]);
printf("\n");
return 0;
本回答被提问者采纳 参考技术C 就用一般排序方法排就是了。
直接 用 < 或 > 比较就是了。。 参考技术D 你可以参照下这个程序,http://zhidao.baidu.com/question/55175134.html
c语言中怎样统计字符串中包含英文字母的个数?
参考技术Ac语言中要统计字符串中包含英文字母的个数可以参考以下内容:
main()
char str[100],*p;
int num[4],i;
p=str;
gets(str);
for(i=0;i<4;i++)
num[i]=0;
for(;*p!='\\0';p++)
if((*p<='z'&&*p>='a')||(*p<='Z'&&*p>='A')) num[0]++;
else if(*p==' ') num[1]++;
else if((*p<='9'&&*p>='0')) num[2]++;
else num[3]++;
printf("%d %d %d %d\\n",num[0],num[1],num[2],num[3]);
扩展资料:
在写代码的过程中需要注意:
void main()的用法并不是任何标准制定的。 C语言标准语法是int main,任何实现都必须支持int main(void) /* ... */ 和int main(int argc, char* argv[]) /* ... */ 。
类似于a+=a++;或者(i++)+(i++)+(i++)属于未定义行为,并不是说c语言中还未定义这种行为,它早有定论,它的结果取决于编译器实现,不要写这样的代码。
以上是关于C语言中输入一串字符,怎样让它按照字母从小到大的顺序排列?的主要内容,如果未能解决你的问题,请参考以下文章
C语言,将一个字符串中的元音字母复制到另一个字符串,然后按照ASCII码从小到大的顺序输出。
用C语言编一个程序,要求输入一串数字,按照从小到大的顺序输出,怎么编写啊
简单的C语言问题 Description 输入一串小些字母(无重复字母),从中取出k个字母,输出组合情况。