第1关:【课程设计】 Init
任务描述
你需要将一系列的学生期末考试信息进行存储(学生人数不会超过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 ):
A+: 100-93;
A: 92-85;
B+: 84-80;
B: 79-75;
C+:74-70;
C: 69-65;
D: 64-60;
F: <60.
其中,姓名,学号,成绩为输入数据,其余数据需要你计算。 另外,学号不符合规定的数据需要删除掉。 本实训所有关卡需要采用结构体知识点。
编程要求
根据提示,在右侧编辑器补充代码,完成学生考试信息的初始化。
测试说明
输入说明: 一系列 名、姓、学号、成绩。
输出说明: 名、姓、学号、成绩、重修信息、GPA等级。
测试用例解释:Geinyu LEE 20210000 89
不合法,需删掉。
平台会对你编写的代码进行测试:
测试输入: Jingyu LI 202200000000 85
Jy LEE 202200100000 89
Jxxxyx Leeeee 202000100000 100
Geinyu LEE 20220000 89
Jingyu11 LI 202200000001 85
预期输出: Name_f Name_l stu_id score retake GPA rank
Jingyu LI 202200000000 85 0 A
Jy LEE 202200100000 89 0 A
Jxxxyx Leeeee 202000100000 100 1 A+
Jingyu11 LI 202200000001 85 0 A
提示
char s[100][20];//姓名
long long id[100];//学号
int n = 0;
while(scanf("%s%lld", s[n], &id[n])!=EOF) n ++;
非结构体版本
#include <stdio.h>
#include <string.h>
#include <stdbool.h>
//=======begin=======
int main(void)
{
char s[100][20];//姓名
char b[100][20];
long long id[100];//学号
int g[100];
int n = 0;
printf("Name_f Name_l stu_id score retake GPA rank\n");
while(scanf("%s%s%lld%d\n", s[n],b[n], &id[n],&g[n])!=EOF) n ++;
int index= 0;
char GPA[3];
for(int i=0;i<n;i++)
{
if(id[i]<202000000000||id[i]>= 202300000000) continue;//单次跳出
if(id[i]<202200000000)
{
index = 1;
}
if (g[i] < 60)
strcpy(GPA,"F");
else if (g[i] >= 60 && g[i] < 65)
strcpy(GPA,"D");
else if (g[i] >= 65 && g[i] < 70)
strcpy(GPA,"C");
else if (g[i] >= 70 && g[i] < 75)
strcpy(GPA,"C+");
else if (g[i] >= 75 && g[i] < 80)
strcpy(GPA,"B");
else if (g[i] >= 80 && g[i] < 85)
strcpy(GPA,"B+");
else if (g[i] >= 85 && g[i] < 93)
strcpy(GPA,"A");
else if (g[i] >= 93)
strcpy(GPA,"A+");
printf("%s %s %lld %d %d %s\n", s[i],b[i], id[i],g[i],index,GPA);
index = 0;
}
return 0;
}
//========end========
正在学习结构体中~
标签:课程设计,未完结,GPA,头歌,strcpy,&&,100,id,85 From: https://blog.csdn.net/2301_79894726/article/details/139706352