有帮别人做课程设计,做课程管理,电影管理,成绩管理,学生信息管理之类的,然后,打算上传学生成绩管理系统给需要的人,有需要可以自己下载提取,定制私信我
部分代码
int main()
{
int n, m=3;
int i;
STU *head; //定义头节点
head = (STU *)malloc(LEN);
head->next =NULL;
while (1)
{
i = Menu();
switch (i)
{
case 1:
system("cls"); //清屏
printf("\t\t\t******************************************************************************\n");
printf("\t\t\t请输入学生人数(n<30):\n"); //输入学生数
printf("\t\t\t");
scanf("%d", &n);
printf("\t\t\t请输入学生的学号 姓名 语文 数学 英语成绩:\n");
head->next = Creat(n);
system("cls"); //清屏
break;
case 2:
system("cls"); //清屏
AverSumofEveryCourse(head); //计算学生平均数和总分
break;
case 3:
system("cls"); //清屏
SearchbyNum(head);
break;
case 4:
system("cls"); //清屏
printf("\n\n\n");
DeletebyNum(head);
break;
case 5:
system("cls"); //清屏
printf("\n\n\n");
StatisticAnalysis(head);
break;
case 6:
system("cls"); //清屏
printf("\n\n\n");
printf("\t\t\t******************************************************************************\n");
printf("\t\t\t输入你想查询的学生ID:\n");
UpdatebyNum(head);
break;
case 7:
system("cls"); //清屏
printf("\n\n\n");
Print(head);
break;
case 8:
system("cls"); //清屏
WritetoFile(head);
break;
case 9:
system("cls"); //清屏
ReadfromFile(head);
break;
case 0:
system("cls"); //清屏
printf("\n\n\n");
printf("\t\t\t******************************************************************************\n");
printf("\t\t\tEnd of program!\n");
printf("\t\t\t******************************************************************************\n");
return 0;
default:
system("cls"); //清屏
printf("\n\n\n");
printf("\t\t\t******************************************************************************\n");
printf("\t\t\tInput error!\n");
printf("\t\t\t******************************************************************************\n");
}
}
return 0;
}
// 创建菜单
int Menu(void)
{
int i;
system("title 学生成绩管理系统");
printf("\n\n");
printf("\t\t\t 学生成绩管理系统\n");
printf("\t\t\t********************************************************************\n");
printf("\t\t\t* Management for Students' scores *\n");
printf("\t\t\t* 1. 添加学生信息 *\n");
printf("\t\t\t* 2. 计算学生成绩总分和平均数 *\n");
printf("\t\t\t* 3. 按学号查询学生信息 *\n");
printf("\t\t\t* 4. 按学号删除学生信息 *\n");
printf("\t\t\t* 5. 查询平均分在80分以上学生的信息 *\n");
printf("\t\t\t* 6. 按学号查询学生信息并修改 *\n");
printf("\t\t\t* 7. 查询所有学生信息 *\n");
printf("\t\t\t* 8. 学生信息导出 *\n");
printf("\t\t\t* 9. 学生信息导入 *\n");
printf("\t\t\t* 0. Exit *\n");
printf("\t\t\t********************************************************************\n");
printf("\n");
printf("\n");
printf("\n");
printf("\n");
printf("\t\t\t*****************Please Input your choice:");
scanf("%d", &i);
return i;
}
// 创建链表
STU *Creat(int n) {
STU *head;
STU *p1, *p2;
int i, j;
// system("cls");
for (i = 1; i<=n; i++)
{
p1 = (STU *)malloc(LEN);
printf("\t\t\t");
scanf("%ld", &p1->num);
scanf("%s", &p1->name);
for (j = 0; j<3; j++)
{
scanf("%f", &p1->score[j]);
}
p1->next = NULL;
if (i == 1)
{
head = p2 = p1;
}
else
{
p2->next = p1;
p2 = p1;
}
}
return(head);
}
void AverSumofEveryCourse(STU *head)
{
STU *p;
int i, j;
p = head->next;
if (head != NULL)
{
printf("\n\n\n");
printf("\t\t\t******************************************************************************\n");
while(p!=NULL)
{
p->sum = 0.0;
for (j = 0; j<3; j++)
{
p->sum += p->score[j];
}
p->aver = p->sum / 3;
printf("\t\t\t姓名 %s: 总分=%.0f , 平均分=%.0f\n", p->name, p->sum, p->aver);
p = p->next;
}
printf("\t\t\t******************************************************************************\n");
}
}
void Print(STU *head)
{
STU *p;
int i;
p = head;
p=p->next;
if (head != NULL) //只要不是空链表,就输出链表中所有节点
{
printf("\t\t\t******************************************************************************\n");
printf("\t\t\t学号\t姓名\t语文\t数学\t英语\t总分\t平均分\n");
do
{
printf("\t\t\t%ld\t%s\t", p->num, p->name);
for (i = 0; i<3; i++)
{
printf("%.0f\t", p->score[i]);
}
printf("%.0f\t%.0f\n", p->sum, p->sum / 3);
p = p->next; //移到下一个节点
} while (p != NULL);
printf("\t\t\t******************************************************************************\n");
}
}
下载链接:https://download.csdn.net/download/weixin_44546342/12773078