c语言输入三个字符后按各字符的ascii码顺序从小到大的顺序输出这三个字符
时间: 2024-10-25 18:08:48 浏览: 96
在C语言中,你可以通过获取用户输入的字符并存储在一个数组中,然后遍历这个数组,按照ASCII码的值对字符进行排序,最后打印出来。以下是一个简单的示例程序:
```c
#include <stdio.h>
#include <string.h>
int compare(char a, char b) {
return (int)a - (int)b; // 比较两个字符的ASCII码值
}
void sort_chars(char arr[3]) {
if(arr[0] > arr[1]) { // 如果第一个字符大于第二个
char temp = arr[0]; // 交换它们的位置
arr[0] = arr[1];
arr[1] = temp;
}
if(arr[1] > arr[2]) { // 同理比较其他字符
temp = arr[1];
arr[1] = arr[2];
arr[2] = temp;
}
if(arr[0] > arr[1]) { // 最后一次检查是否需要再次交换
temp = arr[0];
arr[0] = arr[1];
arr[1] = temp;
}
}
int main() {
char input[3];
printf("请输入三个字符:");
scanf("%c %c %c", &input[0], &input[1], &input[2]);
sort_chars(input); // 排序
printf("按照ASCII码从小到大排序后的字符是:%c %c %c\n", input[0], input[1], input[2]);
return 0;
}
```
在这个程序里,`compare`函数用于比较ASCII码,`sort_chars`函数则实现了冒泡排序算法来完成字符的排序。用户输入的三个字符会被读取,并经过排序后输出。
阅读全文