从键盘输入一个字符串(最多20个字符),将该字符串中的字符按照ASCII码值由小到大排序,并输出结果。用c语言
时间: 2024-02-17 19:01:49 浏览: 86
从键盘上输入一串英文字符(不含空格与其他字符),统计每个字符的数目,并输出字母及相应的数目。
以下是将输入字符串按照ASCII码值由小到大排序的代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[21]; // 定义一个最多包含20个字符的字符串
int len, i, j;
char temp;
printf("请输入一个字符串(最多20个字符):");
scanf("%s", str);
len = strlen(str); // 获取字符串的长度
// 冒泡排序,将字符串中的字符按照ASCII码值由小到大排序
for (i = 0; i < len - 1; i++) {
for (j = 0; j < len - 1 - i; j++) {
if (str[j] > str[j + 1]) {
temp = str[j];
str[j] = str[j + 1];
str[j + 1] = temp;
}
}
}
printf("排序后的字符串为:%s\n", str);
return 0;
}
```
以上代码中,首先使用`scanf`函数从键盘获取一个最多包含20个字符的字符串,然后使用`strlen`函数获取字符串的长度。接着,使用冒泡排序算法将字符串中的字符按照ASCII码值由小到大排序,最后输出排序后的字符串。
运行程序,输入字符串后,程序会输出按照ASCII码值由小到大排序后的字符串。
阅读全文