首页 > 编程语言 > 详细

c_华为机考_100分的第2题_字符串的ascii码值小到大排序,输出ascii码值排序的第k个元素, 在字符串里的索引

时间:2021-06-25 10:06:03      阅读:28      评论:0      收藏:0      [点我收藏+]

相似题目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;
}
View Code

相似题目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;
}
View Code

 

c_华为机考_100分的第2题_字符串的ascii码值小到大排序,输出ascii码值排序的第k个元素, 在字符串里的索引

原文:https://www.cnblogs.com/zhangwenzhi/p/14929283.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!