資源簡介
C語言開發簡單的學生成績管理系統,包含如下功能:
1.錄入學生信息:用戶可以自由輸入學生信息到系統中。
2.打印學生信息:格式化展示系統中的學生信息。
3.保存學生信息:將系統中的學生信息保存到本地文檔。
4.讀取學生信息:讀取本地文檔中的學生信息并顯示。
5.統計所有學生人數
6.查找學生信息:根據用戶給定的信息(學號)在系統中查找該學生的信息
7.修改學生信息
8.刪除學生信息
0.退出系統
代碼片段和文件信息
//學生成績管理系統
//開發語言:C語言
//開發工具:Visual?Studio?2019
//開發時間:2019.4.14
//開發者:summer
#include?“StudentManageSystem.h“
/*
<>?直接從系統目錄下查找包含這個文件
““?先從工程的項目目錄下查找這個,如果沒有,再到系統目錄下查找
*/
int?main()?{
while?(1)
{
//打印菜單
Menu();
//讀取一個字符?整數字符在內存中映射為ASCII碼
char?ch?=?_getch();
switch?(ch)
{
case?‘1‘://1.錄入學生信息
InputStudent();
break;
case?‘2‘://2.打印學生信息
PrintStudent();
break;
case?‘3‘://3.保存學生信息
SaveStudent();
break;
case?‘4‘://4.讀取學生信息
ReadStudent();
break;
case?‘5‘://5.統計所有學生人數
CountStudent();
break;
case?‘6‘://6.查找學生信息
FindStudent();
break;
case?‘7‘://7.修改學生信息
ChangeStudent();
break;
case?‘8‘://8.刪除學生信息
DeleteStudent();
break;
case?‘0‘://0.退出系統
return?0;
break;
default:
printf(“輸入有誤,沒有該功能\n\n“);
system(“pause“);??//暫停
system(“cls“);????//清屏
break;
}
}
return?0;
}
//菜單
void?Menu()?{
printf(“*************************************************\n“);
printf(“*\t歡迎使用高校學生成績管理系統V1.0\t*\n“);
printf(“*\t\t請選擇功能\t\t\t*\n“);
printf(“*************************************************\n“);
printf(“*\t\t1.錄入學生信息\t\t\t*\n“);
printf(“*\t\t2.打印學生信息\t\t\t*\n“);
printf(“*\t\t3.保存學生信息\t\t\t*\n“);
printf(“*\t\t4.讀取學生信息\t\t\t*\n“);
printf(“*\t\t5.統計所有學生人數\t\t*\n“);
printf(“*\t\t6.查找學生信息\t\t\t*\n“);
printf(“*\t\t7.修改學生信息\t\t\t*\n“);
printf(“*\t\t8.刪除學生信息\t\t\t*\n“);
printf(“*\t\t0.退出系統\t\t\t*\n“);
printf(“*************************************************\n“);
}
//1.錄入學生信息
void?InputStudent()?{
//創建一個人,在堆中分配內存
Node*?pNewNode?=?(Node*)malloc(sizeof(Node));
//指針下一個指向空
pNewNode->pNext?=?NULL;
//查找鏈表的尾結點
Node*?p?=?g_pHead;
while?(g_pHead?!=?NULL?&&?p->pNext?!=?NULL)
{
p?=?p->pNext;
}
//把節點插到鏈表的尾節點
if?(g_pHead?==?NULL)?{
g_pHead?=?pNewNode;
}
else?{
p->pNext?=?pNewNode;
}
//錄入學生信息
printf(“請輸入學生姓名:\n“);
scanf_s(“%s“?pNewNode->stu.szName?sizeof(pNewNode->stu.szName));
printf(“請輸入性別:\n“);
scanf_s(“%s“?pNewNode->stu.szSex?sizeof(pNewNode->stu.szSex));
printf(“請輸入學生年齡:\n“);
scanf_s(“%d“?&pNewNode->stu.nAge);
printf(“請輸入學號:\n“);
scanf_s(“%d“?&pNewNode->stu.nStuNo);
printf(“請輸入成績:\n“);
scanf_s(“%d“?&pNewNode->stu.nScore);
printf(“學生信息錄入成功。\n\n“);
system(“pause“);
system(“cls“);
}
//2.打印學生信息
void?PrintStudent()?{
system(“cls“);
//遍歷鏈表
Node*?p?=?g_pHead;
if?(p?==?NULL)?{
printf(“系統中暫無學生信息,請錄入后再來打印查看。\n\n“);
}
else?{
printf(“*********************************************************************************\n“);
printf(“*\t\t\t歡迎使用高校學生成績管理系統V1.0\t\t\t*\n“);
printf(“*********************************************************************************\n“);
printf(“*\t學號\t*\t姓名\t*\t性別\t*\t年齡\t*\t成績\t*\n“);
printf(“*********************************************************************************\n“);
while?(p?!=?NULL)
{
printf(“*\t%d\t*\t%s\t*\t%s\t*\t%d\t*\t%d\t*\n“
p->stu.nStuNo
評論
共有 條評論