c_华为机考_100分的第2题_字符串的ascii码值小到大排序,输出ascii码值排序的第k个元素, 在字符串里的索引
Posted Arsenal_张文治
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_华为机考_100分的第2题_字符串的ascii码值小到大排序,输出ascii码值排序的第k个元素, 在字符串里的索引相关的知识,希望对你有一定的参考价值。
相似题目1:
本题要求: 编写程序,将给定字符串中的字符,按照ASCII码顺序从小到大排序后输出。 输入格式: 输入是一个以回车结束的非空字符串(少于80个字符)。 输出格式: 输出排序后的结果字符串。 输入样例: ebE?9 输出样例: 9?Ebe
#include <stdio.h> #include <string.h> int main() { char s[81],t; int i,j,sum; gets(s); sum=strlen(s); for(i=0; i<sum-1; i++) for(j=0; j<sum-i-1; j++) if(s[j+1]<=s[j]) { t=s[j]; s[j]=s[j+1]; s[j+1]=t; } puts(s); return 0; }
相似题目2:
任意输入一个字符串,将其中的字符按照ASCII码值从小到大重新排序
例如:
给出:dbca
结果:abcd
// 法2: 输入固定死的 #include <stdio.h> #include <string.h> //记录字符出现的次数 void CharSort(int* array,char* str,int size) { int i = 0; for(i = 0; i < size; i++) { array[str[i]]++;//字符出现的次数 } } void Print(int* array, int size) { int i = 0; for(i = 0; i < 255; i++) { while(array[i]--) printf("%c",i); } printf("\\n"); } int main() { int array1[255]={0}; char* str = "dbca"; int size = strlen(str); CharSort(array1,str,size); Print(array1,size); return 0; }
以上是关于c_华为机考_100分的第2题_字符串的ascii码值小到大排序,输出ascii码值排序的第k个元素, 在字符串里的索引的主要内容,如果未能解决你的问题,请参考以下文章