C语言程序设计学生成绩查询系统

来源:百度知道 编辑:UC知道 时间:2024/06/07 17:45:34
根据所学知识,编写指定题目的C语言程序,并规范地完成课程设计报告。通过课程设计,加深对《C语言程序设计》和《数据结构》课程所学知识的理解,熟练掌握和巩固C语言的基本知识和语法规范,包括:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);库函数应用等;复杂任务功能分解方法(自顶向下逐步求精、模块化设计、信息隐藏等),熟练掌握和巩固三种基本的数据结构(线性结构、树形结构、图形结构)的逻辑结构、存储结构以及相关运算和应用。
学会编制结构清晰、风格良好、数据结构适当的C语言程序,从而具备利用计算机编程分析解决综合性实际问题的初步能力。
具体要求如下:
1、 采取模块化方式进行程序设计,要求程序的功能设计、数据结构设计及整体结构设计合理。学生也可根据自己对题目的理解增加新的功能模块(视情况可另外加分)。
2、 系统以菜单界面方式(至少采用文本菜单界面,如能采用图形菜单界面更好)工作,运行界面友好,演示程序以用户和计算机的对话方式进行。
3、 程序算法说明清晰,理论分析与计算正确,运行情况良好,实验测试数据无误,容错性强(能对错误输入进行判断控制)。
4、 编程风格良好(包括缩进、空行、适当注释、变量名和函数名见名知意,程序容易阅读等);
二、 课程设计的主要内容
【问题描述】
学生成绩查询系统包括以下模块:
学生成绩的录入;
学生成绩的修改;
学生成绩的删除;
学生成绩的查询;
成绩查询:按学号或姓名查询某学生成绩并输出。
学生成绩的保存;
学生成绩的读取;
学生成绩的排序;
成绩排序:给出n个学生的考试成绩表,设每个学生信息由姓名与分数组成。设计一个算法,按分数的高低次序,打印出每个学生在考试中获得的名次,分数相同的为同一名次,并按名次列出每个学生的姓名与分数。
【基本要求】
学生信息里包含学号、姓名和两门课程的成绩。要求数据结构采用双向链表的形式。

#include"stdio.h"
#include"string.h"
#define N 1000
void menu();
int password();
int dedao();

int uninque(struct STUDENT shu[],int len,int xuehao);
void shuchu(struct STUDENT shu[],int len);
void send(struct STUDENT shu[],int len);
int readFromFile(struct STUDENT shu[]);
void chaxun(struct STUDENT shu[],int len);
void paixu(struct STUDENT shu[],int len);

struct STUDENT
{
int num;
char name[10];
int score;
} shu[N];
main()
{ int len=0,key,choice;

do {
key=password();

}while(key==0);

while(1)

{ menu();
printf("请输入选项<1,2,3,4,5,6,7>\n");
scanf("%d",&choice);
switch(choice)
{
case 1:printf("输入信息函数\n"); len=dedao(shu,len); break;
case 2:printf("输出函数被调用\n"); shuchu(shu,len);