1、进入近视防控信息系统的登录界面,使用管理员账号登录系统。
2、在系统主界面中,找到“学生管理”模块,点击进入学生管理页面。
3、在学生管理页面中,点击“添加学生”按钮,进入添加学生信息页面。
4、在添加学生信息页面中,填写要添加孩子的相关信息,如姓名、性别、身份z号、学校、年级、班级等信息,并上传孩子的照片。
5、确认填写信息无误后,点击“保存”按钮,系统会提示添加成功。
添加、绑定、解绑学生1、添加学生:输入学生账号、密码、关系等信息,验证通过即可添加,可添加多个学生;
2、绑定学生:在添加的学生中选择绑定,只能绑定一个学生;
3、解绑学生:对于绑定的学生可以进行解绑,解绑后家长无法查看该学生在校情况;
问题挺多的
几项疑问
1.student_type中的name 和sex两项 是char *型的 你是准备动态分配存储空间吗? 可是下面又没有申请他们内存的地方
这一项 我改成静态空间了
2. n是什么?看起来是个全局变量 代表目前有的总人数 于是我定义了一个int n=3(stu_table里面默认有三个初始化的)
3. case 2的find 没有定义,是你复制上来的代码不全? 我先注释掉了
4. 按照菜单显示 case 3应该是查找,实际实现的是打印,也就是case 4的功能,改成case 4了
5. student* add(student*p1) 这个 和上面是声明的void add(student stu_table1[]) 完全不同
你想怎样实现的? 感觉void add(student stu_table1[]) 更简单一些 按照void add(student stu_table1[]) 这个实现了。从调用参数上看 也是按照这种方式调用的
6. 这样就不需要free/malloc了。 输入数据的时候要注意,date_type中的三项 都是unsigned short的 不能用%d 可能出错,要用%hu
以上是所有修改点
修改后还有的问题:
.最多只能输入10个人的信息 多了会出错 因为stu_table只定义了10个元素
.case 2和case 3没有实现
代码如下
#include <stdio.h>#include<string.h>
struct date_type
{
unsigned short year
unsigned short month
unsigned short day
}
struct student_type
{
int munber
char name[10]
char sex[5]
struct date_type birthday
int score
}
int n = 3
void tablehead()
{
printf("\t**********欢迎使用通讯录信息管理系统**********\n")
printf("\t\t\t1.添加信息\n")
printf("\t\t\t2.查找信息\n")
printf("\t\t\t3.修改信息\n")
printf("\t\t\t4.显示信息\n")
printf("\t\t\t0.退出程序\n")
printf("\t**********************************************\n")
}
typedef struct student_type student
student stu_table[10]={{6112912,"edafr","男",{1995,4,10},550},
{6902411,"fengy","男",{1995,4,11},551},
{4002413,"andy","男",{1995,4,12},552}
}
void add(student stu_table1[])
int main() /*******主函数开始*********我输入要输入的序号*/
{
tablehead()
int i,a
while(1)
{
while(1)
{
printf("请输入你想运行的序号:")
fflush(stdin)
scanf("%d",&a)
if(a==1||a==2||a==3||a==4||a==0)
{
break
}
else
printf("输入错误,")
}
switch(a)
{
case 0:exit(0)break
case 1:add(stu_table)continue /****添加学生信息*******/
//case 2:find(stu_table)continue /***这个函数我没打出来***/
case 4: for(i=0i<ni++) /******显示学生信息*****/
{
printf("munber=%d name=%s sec=%s year=%d month=%d day=%d score=%d\n",stu_table[i].munber,stu_table[i].name,stu_table[i].sex,stu_table[i].birthday.year,stu_table[i].birthday.month,stu_table[i].birthday.day,stu_table[i].score)
}continue
}
}
return 0
} /*********主函数结束**********************/
void add(student stu_table1[]) /***************添加信息*************/
{
while(1)
{
printf("请输入%d位同学的学号:\n",n+1)
fflush(stdin)
scanf("%d",&((stu_table1+n)->munber))
if((stu_table1+n)->munber!=0)
{
printf("请按照顺序输入学生的姓名,性别,出生年月日,分数\n")
scanf("%s %s %hu %hu %hu %d",((stu_table1+n)->name),((stu_table1+n)->sex),&((stu_table1+n)->birthday.year),&((stu_table1+n)->birthday.month),&((stu_table1+n)->birthday.day),&((stu_table1+n)->score))
}
else
{
break
}
n++
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)