C语言学生成绩查询系统:按学号或姓名查找
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include
void displayCard(struct grade* students, int count) { count = loadStudents(students); char sno[4]; char name[20]; int found = 0;
printf("请选择查询方式:\n");
printf("1. 按学号查询\n");
printf("2. 按姓名查询\n");
printf("请选择:");
int choice;
scanf("%d", &choice);
if (choice == 1) {
printf("请输入要查询的学生的学号:");
scanf("%s", sno);
for (int i = 0; i < count; i++) {
if (strcmp(students[i].sno, sno) == 0) {
printf("学号:%s\n", students[i].sno);
printf("姓名:%s\n", students[i].name);
printf("语文成绩:%.2f\n", students[i].chinese_grade);
printf("数学成绩:%.2f\n", students[i].math_grade);
printf("英语成绩:%.2f\n", students[i].english_grade);
printf("C语言成绩:%.2f\n", students[i].c_grade);
printf("总分数:%.2f\n", students[i].total_grade);
printf("均分数:%.2f\n", students[i].average_grade);
found = 1;
break;
}
}
}
else if (choice == 2) {
printf("请输入要查询的学生的姓名:");
scanf("%s", name);
for (int i = 0; i < count; i++) {
if (strcmp(students[i].name, name) == 0) {
printf("学号:%s\n", students[i].sno);
printf("姓名:%s\n", students[i].name);
printf("语文成绩:%.2f\n", students[i].chinese_grade);
printf("数学成绩:%.2f\n", students[i].math_grade);
printf("英语成绩:%.2f\n", students[i].english_grade);
printf("C语言成绩:%.2f\n", students[i].c_grade);
printf("总分数:%.2f\n", students[i].total_grade);
printf("均分数:%.2f\n", students[i].average_grade);
found = 1;
}
}
}
else {
printf("无效的选择!\n");
return;
}
if (!found) {
printf("找不到符合条件的学生记录!\n");
}
}
// 设计思想 // 这段代码实现了根据学生的学号或姓名查询学生的成绩信息。首先通过调用 loadStudents 函数加载学生信息,然后让用户选择查询方式,支持按学号和姓名查询。根据用户的选择,使用 strcmp 函数在学生数组中查找符合条件的学生,如果找到则输出该学生的成绩信息,否则输出提示信息。整个函数的设计思想是通过简单的逻辑判断实现不同的查询方式,并使用字符串比较函数在数组中查找学生。
原文地址: https://www.cveoy.top/t/topic/oGTF 著作权归作者所有。请勿转载和采集!