键盘输入三个字符串,编写嵌套函数,对三个字符串进行由小到大排序,并输出排序结果。请问有没有人能帮忙解答一下呢,下面是具体要求
1)在主函数中获取键盘输入三个字符串到 str[3][80]中.
2)将数组名作为参数传递给函数 1,函数 1 的功能是实现排序。
3)在函数 1 中,进行串的两两比较时,将两个串名作为参数传递给函数 2,函数 2 的功能是比较大小,并将小串前置,如 str[0]与 str[1]比较后,str[0]为较小的串。
4)在主函数中按照顺序输出排序结果
![](https://profile-avatar.csdnimg.cn/572ed842238548beb13a2e6ff15d8161_weixin_62993128.jpg!4)
c语言字符串排序问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- WaitIKnowYou 2022-05-29 11:45关注
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<string.h> void swap(char* i, char* index) { char temp[80]; strcpy(temp, i); strcpy(i, index); strcpy(index, temp); } void sort(char str[][80]) { //简单选择排序 int i, j, index; for (i = 0;i < 3;i++) { int index = i; for (j = i + 1;j < 3;j++) { if (strcmp(str[i], str[j]) > 0) index = j; } if (i != index) swap(str[i], str[index]); } } int main() { char str[3][80]; int i, j; for (i = 0;i < 2;i++) { printf("输入字符串:"); scanf("%s", str[i]); } sort(str); for (i = 0;i < 3;i++) printf("%s", str[i]); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥15 metadata提取的PDF元数据,如何转换为一个Excel
- ¥15 关于arduino编程toCharArray()函数的使用
- ¥100 vc++混合CEF采用CLR方式编译报错
- ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
- ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
- ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
- ¥50 如何openEuler 22.03上安装配置drbd
- ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
- ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
- ¥15 Windows11, backspace, enter, space键失灵