C语言中采用指针变量作为形参,编写一个实现两字符交换的函数。在主函数中输入一个字符串,调用字符交换函数将其中的字符按从小到大的顺序排序后输出。
时间: 2024-03-15 11:46:41 浏览: 49
好的,以下是代码实现:
```c
#include <stdio.h>
#include <string.h>
void swap(char *a, char *b) {
char temp = *a;
*a = *b;
*b = temp;
}
void sortString(char *str) {
int len = strlen(str);
for (int i = 0; i < len - 1; i++) {
for (int j = i + 1; j < len; j++) {
if (str[i] > str[j]) {
swap(&str[i], &str[j]);
}
}
}
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
sortString(str);
printf("排序后的字符串为:%s\n", str);
return 0;
}
```
在这个程序中,我们定义了两个函数:`swap` 和 `sortString`。`swap` 用于交换两个字符,`sortString` 用于将字符串中的字符按照从小到大的顺序排序。在 `sortString` 函数中,我们使用了两个循环来比较和交换字符位置。最后,在主函数中输入一个字符串,调用 `sortString` 函数将字符串中的字符按照从小到大的顺序排序后输出。
阅读全文