qq_57944252 2021-06-14 16:57 采纳率: 60%
浏览 17
已采纳

求教,一道c语言练习题

编写三个子函数及主函数,实现10整数数据的读入、排序、输出等功能。

要求:定义Input( )子函数,实现数据从键盘上读取的功能;

定义子函数Output()子函数,实现数据输出到屏幕的功能。每5个数据分一行。

定义子函数Sort()子函数,实现数据从小到大的排序。排序算法不限。

针对上述三个子函数性质,确定合适的返回值、形式参数类型、个数。定义主函数,分别调用上述子函数,实现:键盘上读取10个int数据、输出原始数据、排序、输出排序后的数据,必须有数据的提示信息。

  • 写回答

1条回答 默认 最新

  • 小P聊技术 2021-06-14 17:29
    关注
    #include <stdio.h>
    #include <stdlib.h>
     
    /**
     * 编写函数实现对数组中10个整数由小到大排序,要求编写三个分别实现整数的
     * 输入,排序,输出,主函只须调提示:以数组名作为函数参数,编写三个函数。
     * input(int a[],int n)
     * sort(int a[],int n)
     * output(int a[],int n)
     */
     
     /* 输入函数 */
     int input(int a[],int n)
     {
        int i = 0;
     
        printf("请以此输入数组元素:\n");
        for(i=0; i<n; i++)
        {
            scanf("%d", &a[i]);
        }
     
        return 0;
     }
     
     /* 排序函数 */
     int sort(int a[],int n)
     {
         int i = 0, j = 0, tem = 0;
     
         printf("正在对数组进行由小到大排序:\n");
         for(i=0; i<n; i++)
         {
             for(j=i+1; j<n; j++)
             {
                 if(a[j] < a[i])
                 {
                     tem = a[i];
                     a[i] = a[j];
                     a[j] = tem;
                 }
             }
         }
         printf("排序完成!\n");
         return 0;
     }
     
     /* 输出函数 */
     int output(int a[],int n)
     {
         int i = 0;
         printf("输出数组: \n");
         for(i=0; i<n; i++)
         {
             printf("%d ",a[i]);
         }
         printf("\n");
     
         return 0;
     }
     
    int main()
    {
        int *a = NULL;
        int n = 0;
     
        /* 输入 */
        printf("请输入数组的大小:\n");
        scanf("%d", &n);
        a = malloc(n*sizeof(n));
        input(a, n);
     
        /* 排序 */
        sort(a, n);
     
        /* 输出 */
        output(a, n);
     
        return 0;
    }
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥15 绘制多分类任务的roc曲线时只画出了一类的roc,其它的auc显示为nan
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?