C语言大作业学生系统第一关 Init

06-29 1436阅读

题目要求:

你需要将一系列的学生期末考试信息进行存储(学生人数不会超过100)。每个学生的信息包括:

  • 姓名(由 first name 和last name 两部分组成,例如Jingyu LI,first_name = "Jingyu" last_name = "LI") ;
  • 学号(12 位数字组成,开头4位为2022、2021、2020);
  • C语言成绩(一个大于等于零的整数);
  • 重修信息(学号 2022开头的重修信息为否(0),其余为是(1));
  • GPA等级(A+, A, B+, B, C+, C, D, F ):
     
      
    1. A+: 100-93;
    2. A: 92-85;
    3. B+: 84-80;
    4. B: 79-75;
    5. C+:74-70;
    6. C: 69-65;
    7. D: 64-60;
    8. F: = 93) strcpy(gpa_grade, "A+");  

          else if (score >= 85 && score = 80 && score = 75 && score = 70 && score = 65&& score = 60 && score

      p    Student students[100]; // 使用结构体数组存储学生信息  /p p    int n = 0; // 当前学生数量/p p    //接下来读取学生信息,直到文件结束或达到最大限制  /p p    while (n 202299999999LL || (students[n].id >= 202300000000LL)) {  

                  //printf("Invalid ID, skipped.\n");

                   //如果有小笨蛋输入错误,跳过这个错误输入

              } else {  

                  // 设置重修信息,students[n].id >= 202200000000LL 是一个条件表达式,它会检查students[n].id是否大于或等于202200000000LL。如果这个条件为真(即学号大于或等于202200000000),则三元运算符的结果为0。如果这个条件为假(即学号小于202200000000),则三元运算符的结果为1,然后,这个三元运算符的结果(即0或1)会被赋值给students[n].retake。  

                  students[n].retake = (students[n].id >= 202200000000LL) ? 0 : 1;  

                  // 引用前面定义的函数计算GPA等级  

                  calculateGPA(students[n].c_score, students[n].gpa_grade);  

                  n++; // 增加学生数量  

              }  

          }  

      // 输出学生信息  

          printf("Name_f Name_l stu_id score retake GPA rank\n");

          for (int i = 0; i

              printf("%s %s %lld %d %d %s\n",  students[i].first_name, students[i].last_name, students[i].id, students[i].c_score, students[i].retake, students[i].gpa_grade);  

             

          }  

          return 0;  

      }  

      C语言大作业学生系统第一关 Init

      C语言大作业学生系统第一关 Init

      C语言大作业学生系统第一关 Init我是菜鸡,还求指正。

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]