一、知识点
char的最大值是127,最小值是-128
自己填充的char型数组,以字符串打印,打印之前要手动在末尾加上 '\0'
二、题目
1、描述
Lily上课时使用字母数字图片教小朋友们学习英语单词,每次都需要把这些图片按照大小(ASCII码值从小到大)排列收好。请大家给Lily帮忙,通过代码解决。
Lily使用的图片使用字符"A"到"Z"、"a"到"z"、"0"到"9"表示。
2、数据范围
每组输入的字符串长度满足 1<=n<=1000
3、输入
一行,一个字符串
4、输出
输出字符按ASCII码从小到大排序的字符串
三、自己的思路
1、遍历找到字符串中ASCII码最小的字符,将该字符添加到新的char型数组中,原字符串中最小值调整为127
2、不断重复1,直到原字符串中的最小值为127
3、在新字符串末尾添加'\0',打印
四、自己写的代码
#include<stdio.h>
int main() {int i = 0, j = 0;char min;char line[1001];char sort[1001];scanf("%s", line);while (1) {min = 127;i = 0;while (line[i] != '\0') {if (line[i] < min) {min = line[i];}i++;}if (min == 127) {sort[j] = '\0';break;}for (i = 0; i < 1000; i++) {if (line[i] == min) {sort[j] = line[i];j++;line[i] = 127;i = 1000;}}}printf("%s\n", sort);return 0;
}