输入若干英文单词,将每个单词的首字母转换成大写字母,其他字母为小写,并按字典顺序排列
5条回答 默认 最新
- threenewbee 2016-02-13 22:37关注
#include <stdio.h> #include <stdlib.h> #include <string.h> int cmp(const void * a, const void * b) { return strcmp(*(char **)a, *(char **)b); } int main(int argc, char* argv[]) { int n = 0; int i; printf("how many words?\n"); scanf("%d", &n); char ** s = new char *[n]; for (i = 0; i < n; i++) { s[i] = new char[100]; scanf("%s", s[i]); char * t = s[i]; while (*t != '\0') { if (t == s[i] && (*t >= 'a' && *t <= 'z')) *t = *t - 'a' + 'A'; if (t > s[i] && (*t >= 'A' && *t <= 'Z')) *t = *t - 'A' + 'a'; t++; } } qsort(s, n, sizeof(char *), cmp); for (i = 0; i < n; i++) { printf("%s\n", s[i]); } return 0; }
how many words? 5 wORd HellO yEllow she APPLE Apple Hello She Word Yellow Press any key to continue
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报无用 1
悬赏问题
- ¥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键失灵