当前位置:网站首页>C 学生管理系统_添加学生
C 学生管理系统_添加学生
2022-08-04 00:38:00 【joker_0030】
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
//学生节点。
typedef struct _STU
{
char arrStuNum[10];
char arrStuName[10];
int iStuScore;
struct _STU* pNext;//指向下一个节点。
}STUNODE;
//申明链表的头和尾。
STUNODE* g_pHead = NULL;
STUNODE* g_pEnd = NULL;
void AddStuMSG(char* arrStuNum[10], char srrStuName[10], int iStuScore);
int main()
{
int nOrder=-1;
char arrStuNum[10] = {'\0'};
char arrStuName[10] = {'\0'};
int iStuScore=-1;
printf("*******************学生管理系统******************\n");
printf("******************系统操作指令如下****************\n");
printf("***1、增加一个学生信息***\n");
printf("***2、查找指定学生信息(姓名/学号)***\n");
printf("***3、修改指定学生的信息***\n");
printf("***4、保存业主的信息到文件***\n");
printf("***5、读取文件中的业主信息***\n");
printf("***6、删除指定学生的信息***\n");
printf("***7、恢复删除的学生信息***\n");
printf("***8、显示所有学生信息***\n");
printf("***9、退出系统***\n");
printf("*****************************************************\n");
scanf("%d", &nOrder);
switch (nOrder)
{
case 1:
printf("输入学号:");
scanf("%s", arrStuNum);
printf("输入姓名:");
scanf("%s", arrStuName);
printf("输入分数:");
scanf("%d", &iStuScore);//取地址。
void AddStuMSG(char* arrStuNum[10], char arrStuName[10], int iStuScore);
break;
case 2:
break;
case 3:
break;
case 4:
break;
case 5:
break;
case 6:
break;
case 7:
break;
case 8:
break;
case 9:
break;
default:
printf("输入的指令不对");
break;
}
system("pause");
return 0;
}
//添加一个学生信息。
void AddStuMSG(char *arrStuNum[10], char arrStuName[10], int iStuScore)
{
//逻辑
//创建一个节点。
STUNODE* pTemp = malloc(sizeof(STUNODE));
//第一步,检验参数合法性。
if (NULL==arrStuNum||NULL==arrStuName||iStuScore<0)
{
printf("学生信息输入错误。\n");
return;
}
//节点成员赋初始值。
strcpy(pTemp->arrStuNum, arrStuNum);//因为数组做参数传入时则完全是一个指针。
strcpy(pTemp->arrStuName, arrStuName);//因为数组做参数传入时则完全是一个指针。
pTemp->iStuScore = iStuScore;
pTemp->pNext = NULL;
//接在链表上。
if (NULL == g_pHead || NULL == g_pEnd)
{
g_pHead = pTemp;
g_pEnd = pTemp;
}
else
{
g_pEnd->pNext = pTemp;//链接。
g_pEnd = pTemp;//向后移动。
}
}
边栏推荐
猜你喜欢
c语言分层理解(c语言操作符)
114. 如何通过单步调试的方式找到引起 Fiori Launchpad 路由错误的原因
2022-08-03: What does the following go code output?A: 2; B: 3; C: 1; D: 0.package main import "fmt" func main() { slice := []i
typescript52 - simplify generic function calls
View the version number of CUDA, pytorch, etc.
Nanoprobes 棕榈酰纳米金相关说明书
微服务的简单介绍
虚拟机CentOS7中无图形界面安装Oracle
WMS仓储管理系统能解决电子行业哪些仓库管理问题
The 600MHz band is here, will it be the new golden band?
随机推荐
七夕活动浪漫上线,别让网络拖慢和小姐姐的开黑时间
手撕Nacos源码,今日撕服务端源码
中原银行实时风控体系建设实践
typescript53 - generic constraints
114. How to find the cause of Fiori Launchpad routing error by single-step debugging
通过whl安装第三方包
typescript55-泛型约束
Nanoprobes Mono- Sulfo -NHS-Nanogold的使用和应用
MPLS Comprehensive Experiment
typescript58-泛型类
Modulo operation (MOD)
Vant3—— 点击对应的name名称跳转到下一页对应的tab栏的name的位置
Nanoprobes丨Nanogold-抗体和链霉亲和素偶联物
【性能优化】MySQL常用慢查询分析工具
如何通过单步调试的方式找到引起 Fiori Launchpad 路由错误的原因试读版
Using matlab to solve the linear optimization problem based on matlab dynamic model of learning notes _11 】 【
【超详细】手把手教你搭建MongoDB集群搭建
LeetCode第三题(Longest Substring Without Repeating Characters)三部曲之三:两次优化
做项目一定用得到的NLP资源【分类版】
求解同余方程 数论 扩展欧几里得