晃慌黄 2021-05-01 09:15 采纳率: 95%
浏览 122
已采纳

输入不超过10个字符串存入数组char s[10][15]中。

上接标题:字符串中允许出现空格,按从小到大的顺序打印

输入样例:

usa
japan
uk
china
0
输出样例:

china          japan          uk             usa            

说明:

1.使用gets函数循环输入若干个字符串,顶多10个,输入数少于10个时可以用0表示结束输入;

2.可以使用strcmp函数来比较两个串大小;

3.可以使用strcpy函数实现两个字符串的交换,前提是定义一个临时的一维数组tmp[15]用于交换用;

4.排序算法可以用选择排序、冒泡排序等

 

今天学习的字符数组,确实有点没太学懂,数组本身就学的不太懂,加上字符就更不太懂了,问了几个做题过程中卡住的题,感谢各位大佬帮我解答!

  • 写回答

1条回答 默认 最新

  • Eleven 2021-05-07 14:58
    关注
    #include <Windows.h>
    #include <stdio.h>
    #include <stdlib.h>
    
    
    int main()
    {
        #define MAX_ROW         10
        #define MAX_COLUMN      15
    
        char a[MAX_ROW][MAX_COLUMN] = { 0 };
        int n = 0;
    
        printf("Input Data: \n");
        for (int i = 0; i < sizeof(a) / sizeof(a[0]); ++i)
        {
            char tmp[MAX_COLUMN] = { 0 };
            gets_s(tmp, _countof(tmp));
            if ((NULL == tmp) || ('0' == tmp[0])) { break; }
    
            strcpy_s(a[i], _countof(a[i]), tmp);
            ++n;
        }
    
        if (n <= 0) { printf("Input Error!\n"); return 0; }
    
        for (int i = 0; i < n - 1; ++i)
        {
            for (int j = 0; j < n - 1 - i; ++j)
            {
                if (strcmp(a[j], a[j + 1]) > 0)
                {
                    char tmp[MAX_COLUMN] = { 0 };
                    
                    strcpy_s(tmp, _countof(tmp), a[j]);
    
                    strcpy_s(a[j], _countof(a[j]), a[j + 1]);
                    
                    strcpy_s(a[j + 1], _countof(a[j + 1]), tmp);
                }
            }
        }
    
        for (int i = 0; i < n; ++i)
        {
            printf("%-15s", a[i]);
        }
    
        return 0;
    }
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程