鱼C论坛

 找回密码
 立即注册
查看: 1369|回复: 1

为什运行不了啊

[复制链接]
发表于 2021-10-20 18:35:41 | 显示全部楼层 |阅读模式

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

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

x
屏幕截图 2021-10-19 162546.png 屏幕截图 2021-10-20 134234.png
  1. #include"stdio.h"
  2. #include"stdlib.h"
  3. #include"string.h"
  4. typedef struct Stu
  5. {
  6.         int num;
  7.         char name[11];
  8.         char sex[10];
  9.         int age;
  10.         int grade;
  11. }student;

  12. typedef struct sqlist
  13. {
  14.         student *elem;
  15.         int len;
  16. }sqlist;


  17. void creatseqlist(sqlist *L);
  18. void printseqlist(sqlist L);
  19. void sortseqlist(sqlist *L);
  20. void splitseqlist(sqlist L, sqlist *boy, sqlist *girl);

  21. void creatseqlist(sqlist *L)
  22. {
  23.         int i, n;
  24.         L->elem=(student *)malloc(n*sizeof(student));
  25.         scanf("%d", &n);
  26.         (L->len)=n;
  27.         for(i=0;i<n;i++)
  28.         {
  29.                 int i;
  30.                 scanf("%d %s %s %d %d",&(L->elem[i].num), &(L->elem[i].name), &(L->elem[i].sex), &(L->elem[i].age), &(L->elem[i].grade));
  31.         }
  32.         for(i=0;i<n;i++)
  33.         {
  34.                 if(strcmp((L->elem)[i].sex, "1")==0)
  35.                 {
  36.                         strcpy((L->elem)[i].sex,"男");
  37.                 }
  38.                 if(strcmp((L->elem)[i].sex, "0")==0)
  39.                 {
  40.                         strcpy((L->elem)[i].sex,"女");
  41.                 }
  42.         }
  43. }

  44. void printseqlist(sqlist L)
  45. {
  46.         int i;
  47.         if((L.len)==0)
  48.         {
  49.                 printf("无");
  50.         }
  51.         else
  52.         {
  53.                 printf("考生号,姓名,性别,年龄,成绩\n");
  54.                 for(i=0;i<(L.len);i++)
  55.                 {
  56.                         printf("%d,%s,%s,%d,%d\n",(L.elem)[i].num, (L.elem)[i].name, (L.elem)[i].sex, (L.elem)[i].age, (L.elem)[i].grade);
  57.                 }
  58.         }
  59. }

  60. void sortseqlist(sqlist *L)
  61. {
  62.         int i, j;
  63.         student temp;
  64.         for(i=0;i<(L->len);i++)
  65.         {
  66.                 for(j=i+1;j<(L->len);j++)
  67.                 {
  68.                         if((L->elem)[i].grade<(L->elem)[j].grade)
  69.                         {
  70.                                 temp=(L->elem)[j];
  71.                                 (L->elem)[j]=(L->elem)[i];
  72.                                 (L->elem)[i]=temp;
  73.                         }
  74.                         if((L->elem)[i].grade==(L->elem)[j].grade)
  75.                         {
  76.                                 if((L->elem)[i].num>(L->elem)[j].num)
  77.                                 temp=(L->elem)[j];
  78.                                 (L->elem)[j]=(L->elem)[i];
  79.                                 (L->elem)[i]=temp;
  80.                         }
  81.                 }
  82.         }
  83. }

  84. void splitseqlist(sqlist L, sqlist *boy, sqlist *girl)
  85. {
  86.         int j,m,i;
  87.         j=0; m=0;
  88.         boy->elem=(student *)malloc(5*sizeof(student));
  89.         girl->elem=(student *)malloc(5*sizeof(student));
  90.         for(i=0;i<(L.len);i++)
  91.         {
  92.                 if(strcmp((L.elem)[i].sex, "男")==0)
  93.                 {
  94.                         boy->elem[j]=L.elem[i];
  95.                         j++;
  96.                 }
  97.                 if(strcmp((L.elem)[i].sex, "女")==0)
  98.                 {
  99.                         girl->elem[m]=L.elem[i];
  100.                         m++;
  101.                 }
  102.                
  103.         }
  104.         boy->len=j;
  105.         girl->len=m;
  106. }

  107. int main()
  108. {
  109.         sqlist L;
  110.         sqlist boy;
  111.         sqlist girl;
  112.         creatseqlist(&L);
  113.         printseqlist(L);
  114.         printf("\n排序后");
  115.         sortseqlist(&L);
  116.         printseqlist(L);
  117.         splitseqlist(L, &boy, &girl);
  118.         printf("男生信息");
  119.         printseqlist(boy);
  120.         printf("女生信息");
  121.         printseqlist(girl);
  122.         return 0;
  123. }
复制代码

一开始可以运行,后来就运行不了了,哪位大神给我看看
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-10-20 18:36:18 | 显示全部楼层
输入信息都不行
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-26 00:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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