鱼C论坛

 找回密码
 立即注册
查看: 2006|回复: 5

作业求助 批量数组

[复制链接]
发表于 2020-12-15 13:28:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
老师要统计班里每个人的生日,并按照出生日期从早到晚排序。
输入格式:第一行一个整数 n(1≤n≤100),班级班级的人数。接下来 n 行,每行包含一个字符串 s 和三个整数 y,m,d,表示姓名为 s 的同学出生日期是 y 年 m 月 d 日。保证所有日期合法,姓名由小写字母构成,不超过 20 个字符。
输出格式:输出 n 行,每行一个字符串表示姓名。如果有两个同学出生日期相同,输入靠后的同学先输出。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-12-15 14:09:17 | 显示全部楼层
求求各位大佬理我一下
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-15 14:22:16 From FishC Mobile | 显示全部楼层
c语言玩这东西,比较麻烦
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-15 14:29:14 | 显示全部楼层
  1. #include <stdio.h>
  2. int main()
  3. {
  4.     int N, m, i, j;
  5.     scanf("%d", &N);
  6.     struct stu
  7.     {
  8.         char name[25];
  9.         int year;
  10.         int month;
  11.         int day;
  12.     } stu[N], t;

  13.     for (m = 0; m < N; m++)
  14.     {
  15.         scanf("%s", stu[m].name);
  16.         scanf("%d %d %d", &stu[m].year, &stu[m].month, &stu[m].day);
  17.     }
  18.     for (i = 0; i < N; i++)
  19.     {
  20.         for (j = i + 1; j < N; j++)
  21.         {
  22.         }
  23.         for (int i = 0; i < N; i++)
  24.         {
  25.             for (int j = i + 1; j < N; j++)
  26.             {
  27.                 if (stu[i].year > stu[j].year)
  28.                 {
  29.                     t = stu[j];
  30.                     stu[j] = stu[i];
  31.                     stu[i] = t;
  32.                 }
  33.                 else if (stu[i].year == stu[j].year)
  34.                 {
  35.                     if (stu[i].month > stu[j].month)
  36.                     {
  37.                         t = stu[j];
  38.                         stu[j] = stu[i];
  39.                         stu[i] = t;
  40.                     }
  41.                     else if (stu[i].month == stu[j].month)
  42.                     {
  43.                         if (stu[i].day >= stu[j].day)
  44.                         {
  45.                             t = stu[j];
  46.                             stu[j] = stu[i];
  47.                             stu[i] = t;
  48.                         }
  49.                     }
  50.                 }
  51.             }
  52.         }
  53.         for (m = 0; m < N; m++)
  54.             printf("%s\n", stu[m].name);
  55.         return 0;
  56.     }
  57. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-15 14:29:48 | 显示全部楼层
好我自问自答!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-15 17:58:01 | 显示全部楼层
你可以的,把问题解决了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-5-8 02:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表