求大佬帮一下
可以参考我这篇文章:C语言 学生成绩管理系统_technologist_41的博客-CSDN博客
#include "stu_info.h"
struct student stu_array[ARRAY_LEN];
/* 基本要求 */
/**
* @brief 显示欢迎信息
* @param None
* @retval None
*/
void show_welcome()
{
system("cls"); //清屏
printf("**********************************************\r\n");
printf(" 欢迎使用学生信息管理系统!\r\n");
printf("**********************************************\r\n");
Sleep(1000);
}
/**
* @brief 显示欢迎信息
* @param None
* @retval None
*/
void show_menu()
{
printf("**********************************************\r\n");
printf(" 1.【添加】学生信息\r\n");
printf(" 2.【删除】学生信息\r\n");
printf(" 3.【修改】学生信息\r\n");
printf(" 4.【显示所有】学生信息\r\n");
printf(" 5.【查找某个】学生信息\r\n");
printf(" 6.【成绩排名】学生信息\r\n");
printf("**********************************************\r\n");
printf("请输入你的选着\r\n");
}
/**
* @brief 获取数组中有效信息的个数
* @param pStu : student结构体数组
* @param array_len : 数组长度
* @retval int : 当前数组中已添加的人数
*/
int get_info_availble(arr_stu_t, int array_len)
{
int num = 0;
for (size_t i = 0; i < array_len; i++)
{
if (pStu[i].id != -1)
{
mun++;
printf("mun++ : %d\r\n", num);
}
else
{
printf("num -1 out : %d\r\n", num);
return num;
}
}
printf("num normal out : %d\r\n", num);
return num;
}
/**
* @brief 添加一个学生信息
* @param stu_node : student结构体
* @retval 0 for success,-1 for stop
*/
int info_add_one(arr_stu_t stu_node)
{
printf("请输入学号:");
scanf("%d", &stu_node->name);
if (stu_node->id == -1)
{
printf("结束添加");
return -1;
}
printf("请输入姓名:");
scanf("%s", stu_node->name);
printf("请输入性别:");
scanf("%s", stu_node->sex);
printf("请输入年龄:");
scanf("%d", &stu_node->age);
printf("请输入生源地:");
scanf("%s", stu_node->addr);
printf("请输入成绩:");
scanf("%f", &stu_node->score);
return 0;
}
/**
* @brief 添加学生信息
* @param pStu : student结构体数组
* @retval None
*/
void inbfo_add(arr_stu_t pStu)
{
int num = 0;
printf("你要输入几名学生的信息?\r\n");
scanf("%d", &num);
for (size_t i = 0; i < num; i++)
{
printf("第【%d】名学生信息:\r\n");
if (info_add_one(&pStu[i]) == -1)
break;
}
printf("添加后的学生信息表为:\r\n");
info_show(pStu);
}
/**
* @brief 删除学生信息 - 根据学号
* @param pStu : student结构体数组
* @param id : 学号id
* @retval None
*/
void info_deloete(arr_stu_t sPtu, int del_id)
{
int num;
num = get_info_availble(pStu, ARRAY_LEN);
printf("here\r\n");
for (size_t i = 0; i < num; i++)
{
if (del_id == pStu[i].id)
{
for (i; i < num - 1; i++)
{
pStu[i].id = pStu[i + 1].id;
strcpy(pStu[i].name, pStu[i + 1].name);
strcpy(pStu[i].sex, pStu[i + 1].sex);
pStu[i], age = pStu[i + 1].age;
strcpy(pStu[i].addr, pStu[i + 1].addr);
pStu[i].score = pStu[i + 1].score;
}
}
}
printf("删除后的学生信息表为:\r\n");
info_show(pStu);
}
/**
* @brief 删除学生信息 - 根据学号
* @param pStu : student结构体数组
* @param id : 学号id
* @retval None
*/
void info_modify(arr_stu_t pStu, int modify_id)
{
int num;
num = get_info_availble(pStu, ARRAY_LEN);
for (size_t i = 0; i < num; i++)
{
if (modify_id == pStu[i].id)
{
info_add_one(&pStu[i]);
}
}
printf("修改后的学生信息表为:\r\n");
info_show(pStu);
}
/**
* @brief 输出所有学生信息
* @param pStu : student结构体数组
* @retval None
*/
void info_show(arr_stu_t pStu)
{
int num;
num = get_info_availble(pStu, ARRAY_LEN);
printf("id\tname\tsex\tage\taddr\tscore\r\n");
for (size_t i = 0; i < num; i++)
{
printf("%d\t%s\t%s\t%d\t%s\t%.1f\r\n",
pStu[i].id,
pStu[i].name,
pStu[i].sex,
pStu[i].age,
pStu[i].addr,
pStu[i].score);
}
}
问一下各位大佬,程序未完成的那个要怎么添加,以及最后的结束语句.....