C语言-CodeBlocks-学生成绩管理系统.zip
在codeblocks环境下编写、编译,内附实验报告,写的比较完整
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-12-17 12:30 1190201706
目录 0 2019-12-11 17:41 1190201706ig_homework
文件 1090 2019-12-08 10:03 1190201706ig_homeworkig_homework.cbp
文件 158 2019-12-11 16:40 1190201706ig_homeworkig_homework.depend
文件 356 2019-12-11 17:41 1190201706ig_homeworkig_homework.layout
目录 0 2019-12-08 10:05 1190201706ig_homeworkin
目录 0 2019-12-11 17:06 1190201706ig_homeworkinDebug
文件 50650 2019-12-11 17:06 1190201706ig_homeworkinDebugig_homework.exe
文件 28726 2019-12-11 17:06 1190201706ig_homeworkmain.c
目录 0 2019-12-08 10:05 1190201706ig_homeworkobj
目录 0 2019-12-11 17:06 1190201706ig_homeworkobjDebug
文件 23529 2019-12-11 17:06 1190201706ig_homeworkobjDebugmain.o
文件 361 2019-12-11 17:05 1190201706ig_homework emp12138.txt
文件 3046400 2019-12-17 12:29 1190201706高级语言程序设计实验大作业反思报告.doc
#include
#include
#include
#include
#include
//考虑到单条宏定义对内存影响不大,因此设置了较丰富的宏定义
#define MAXADDRESS 120//用户输入文件地址的最长长度
//主函数中的宏定义
#define MAIN_INPUT 20//用于用户输入命令
#define LIST_NUM 15//用于用户输入命令对应菜单中选项的长度
//关于结构体类型stu的定义
#define MAXNUMBER 15//由于技术有限,此项不得超过16
#define MAXNAME 15//由于技术有限,此项不得超过16
#define MAXCOURSENAME 15//由于技术有限,此项不得超过16
#define COURSENUM 3//若修改此项,请务必修改下一行的coursename
char coursename[COURSENUM][MAXCOURSENAME] = {“Math“ “English“ “Computer“};//各课程的名字
typedef struct stu
{
char number[MAXNUMBER];//学号
char name[MAXNAME];//姓名
float score[COURSENUM];//各科成绩
float aver;//平均分
float total;//总分
}STUDENT;
//链表的定义
typedef struct node
{
STUDENT student;
struct node *next;
}Node;
//全局变量定义
float aver_course[COURSENUM+2];//课程的平均分+所有学生总分的平均分+所有学生平均分的平均分
//函数声明。具体功能参见主函数后函数定义部分
Node* Calculate_course(Node *head);
Node* Sort_total_ascend(Node *head);
Node* Reverse_link(Node *head);
Node* Sort_number_ascend(Node *head);
Node* Sort_name_ascend(Node *head);
Node* Seek_name(Node *head char *str);
Node* Seek_number(Node *head char *str);
void Print_analysis(Node *head);
void Print_single_header(void);
void Print_single(Node *p);
void Print_all(Node *head);
int Read_file(char *file_address Node **head);
int Save_file(char *file_address Node *head);
void Print_menu(void);
Node* Delete_name(Node *head char *str);
Node* Delete_number(Node *head char *str);
void Scan(Node *p);
void Str_change(char *p);
Node* Append_node(Node **head);
Node* Delete_node(Node *head Node *p);
Node* Delete_Memory(Node *head);
void File_address_change(char *file_address);
void Gets_safe(char *input int size);
//主程序
int main()
{
char input[MAIN_INPUT] = {0};
char tempName[MAXNAME] = {0};
char tempNumber[MAXNUMBER] = {0};
char file_address[MAXADDRESS] = {0};
Node *head = NULL;
Node *pt;
Print_menu();
printf(“Welcome to use this student achievement management system! You can input “menu“ to call the menu
“);
printf(“I suggest you always use “0“ to exit the program. This will back up the file you are editing in the root directory.
“);
while(1)
{
//system(“pause“);
//system(“cls“);//为方便查看历史信息,不使用这两行代码
//用户输入选项
{
printf(“Here is main menu. Please input your choice:“);
Gets_safe(input sizeof(input));//相当于使用fgets,将fgets最后的
转化成 ,并且输入后自动清空缓冲区
printf(“
“);
}
//查看链表
if(strcmp(input “see“) == 0)
{
Print_all(head);
printf(“Program has jumped to the main menu.
“);
continue;//每个功能使用结束后跳转到“用户输入选项”
}
//唤出菜单
else if(strcmp(input “menu“) == 0)
{
Print_menu();
printf(“
“);
continue;
}
//退出
else if(strcmp(input “0“)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-12-17 12:30 1190201706
目录 0 2019-12-11 17:41 1190201706ig_homework
文件 1090 2019-12-08 10:03 1190201706ig_homeworkig_homework.cbp
文件 158 2019-12-11 16:40 1190201706ig_homeworkig_homework.depend
文件 356 2019-12-11 17:41 1190201706ig_homeworkig_homework.layout
目录 0 2019-12-08 10:05 1190201706ig_homeworkin
目录 0 2019-12-11 17:06 1190201706ig_homeworkinDebug
文件 50650 2019-12-11 17:06 1190201706ig_homeworkinDebugig_homework.exe
文件 28726 2019-12-11 17:06 1190201706ig_homeworkmain.c
目录 0 2019-12-08 10:05 1190201706ig_homeworkobj
目录 0 2019-12-11 17:06 1190201706ig_homeworkobjDebug
文件 23529 2019-12-11 17:06 1190201706ig_homeworkobjDebugmain.o
文件 361 2019-12-11 17:05 1190201706ig_homework emp12138.txt
文件 3046400 2019-12-17 12:29 1190201706高级语言程序设计实验大作业反思报告.doc
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)