c语言用函数写输入一个字符和一个字符串 a(长度不超过 100),将字符插入到 a串中最小字符的后面
时间: 2024-05-10 21:19:44 浏览: 8
可以使用以下函数来实现:
```c
#include <stdio.h>
#include <string.h>
void insert_char(char c, char a[]) {
int min_index = 0;
char min_char = a[0];
int len = strlen(a);
for (int i = 1; i < len; i++) {
if (a[i] < min_char) {
min_char = a[i];
min_index = i;
}
}
if (min_index == len - 1) {
a[len] = c;
} else {
for (int i = len; i > min_index + 1; i--) {
a[i] = a[i - 1];
}
a[min_index + 1] = c;
}
}
int main() {
char a[101];
char c;
printf("请输入一个字符和一个字符串a(长度不超过100):");
scanf("%c %s", &c, a);
insert_char(c, a);
printf("插入后的字符串为:%s\n", a);
return 0;
}
```
首先,我们要遍历一遍字符串 a,找到其中最小的字符,并记下它的下标。
然后,我们判断最小的字符是否在 a 的末尾。如果是,在 a 的末尾加上新的字符即可;如果不是,我们就从 a 的最后一个字符开始,把每个字符往后挪一位,直到最小字符的下一位,然后在最小字符的后面插入新的字符。
最后,我们在主函数中调用 `insert_char` 函数,把输入的字符和字符串传递给它,然后输出插入后的字符串即可。