引言
C语言作为一种历史悠久且广泛使用的编程语言,其强大的功能和简洁的语法使其在各个领域都有广泛应用。本文将带领读者通过C语言编写一个简单的成绩查询系统,帮助大家更好地理解和运用C语言编程。
系统设计
1. 功能需求
- 用户输入学生姓名或学号。
- 系统根据输入的信息查询成绩。
- 显示查询到的成绩信息。
2. 系统架构
- 数据存储:使用结构体数组存储学生信息及成绩。
- 数据查询:通过姓名或学号进行模糊查询。
- 用户界面:控制台输入输出。
数据结构
#include <stdio.h>
#include <string.h>
#define MAX_STUDENTS 100
typedef struct {
char name[50];
int id;
float score;
} Student;
Student students[MAX_STUDENTS];
int student_count = 0;
功能实现
1. 数据初始化
void init_data() {
// 假设已有学生数据
strcpy(students[0].name, "张三");
students[0].id = 1;
students[0].score = 90.0;
strcpy(students[1].name, "李四");
students[1].id = 2;
students[1].score = 85.0;
student_count = 2;
}
2. 成绩查询
int search_student(const char* name_or_id) {
for (int i = 0; i < student_count; i++) {
if (strcmp(students[i].name, name_or_id) == 0 || students[i].id == atoi(name_or_id)) {
return i;
}
}
return -1;
}
3. 显示成绩
void display_score(int index) {
if (index == -1) {
printf("未找到学生信息。\n");
return;
}
printf("姓名:%s,学号:%d,成绩:%f\n", students[index].name, students[index].id, students[index].score);
}
用户界面
int main() {
char input[50];
int index;
init_data();
printf("请输入学生姓名或学号查询成绩:");
scanf("%s", input);
index = search_student(input);
display_score(index);
return 0;
}
总结
通过以上步骤,我们使用C语言实现了一个简单的成绩查询系统。这个系统可以帮助我们更好地理解和运用C语言编程,同时也为以后开发更复杂的应用打下了基础。在实际应用中,可以根据需求不断完善和扩展系统功能。
