插入)编程实现:将键盘输入的一个字母C语言到已按从小到大排序好的字符串“DMSaenory”中,使插入后的串仍按从小到大排序。
时间: 2024-03-08 19:48:00 浏览: 69
插入排序(C语言实现)
5星 · 资源好评率100%
可以使用插入排序的思想来实现这个功能。具体实现步骤如下:
1. 首先将键盘输入的字母存储到一个字符变量中,假设变量名为`insert_char`。
2. 定义一个字符数组变量`str`,并将其初始化为“DMSaenory”。
3. 遍历字符数组`str`,找到插入位置。具体做法是从左到右依次比较`insert_char`和`str`中的字符,直到找到一个字符`ch`满足`ch > insert_char`,插入位置就在`ch`的前面。
4. 在插入位置处插入`insert_char`,并将后面的字符依次向后移动一个位置。
5. 返回插入后的字符数组`str`。
下面是C语言实现代码:
```c
#include <stdio.h>
#include <string.h>
void insert_sorted_str(char insert_char) {
char str[] = "DMSaenory";
int len = strlen(str);
int pos = 0;
for (int i = 0; i < len; i++) {
if (str[i] > insert_char) {
pos = i;
break;
}
}
for (int i = len; i > pos; i--) {
str[i] = str[i-1];
}
str[pos] = insert_char;
printf("%s", str);
}
int main() {
char insert_char;
scanf("%c", &insert_char);
insert_sorted_str(insert_char);
return 0;
}
```
例如,如果输入的字符是`'c'`,则程序会输出字符串`"DMacSenory"`。
阅读全文