学生基本信息管理系统LINUX下.docx
- 文档编号:27484676
- 上传时间:2023-07-02
- 格式:DOCX
- 页数:8
- 大小:19.91KB
学生基本信息管理系统LINUX下.docx
《学生基本信息管理系统LINUX下.docx》由会员分享,可在线阅读,更多相关《学生基本信息管理系统LINUX下.docx(8页珍藏版)》请在冰豆网上搜索。
学生基本信息管理系统LINUX下
学习并分别使用标准C地文件操作函数和Linux地系统调用创建一个对学生基本信息进行操作<插入、修改和删除)地C程序,学生基本信息以结构体地形式存储在文件
#include
#include
#include
#include
#include
structstu_info{
charstu_num[12]。
charname[10]。
charsex。
/*0为女生,1为男生*/
charmobile_phone[12]。
}。
structstu_infostudent。
unsignedintnumber。
structstu_infostu[100]。
FILE*in。
FILE*out。
intlen。
voidinputstu(>。
voidupdatestu(>。
voiddeletestu(>。
voiddisplaystu(>
voidcommanddisp(>
{printf("
\n">。
b5E2RGbCAP
printf("|学生基本信息管理
|\n">。
plEanqFDPw
printf("|---1.基本信息插入.2.基本信息修改
|\n">。
printf("|---3.基本信息删除.4.基本信息显示
|\n">。
printf("|---r.初始化<第一次使用时用!
!
慎用)-q.退出---
|\n">。
printf("|请输入你地选择:
|\n">。
DXDiTa9E3d
printf("
-\n">。
RTCrpUDGiT
}
voidmain(>
{
commanddisp(>。
charch。
while(1>
{
do{
ch=getchar(>。
}while(ch=='\n'>。
if(ch=='q'>return。
switch(ch>
{
case'1':
inputstu(>。
break。
case'2':
updatestu(>。
break。
case'3':
deletestu(>。
break。
case'4':
displaystu(>。
break。
case'r':
printf("\ninitstudenttable\n">
return。
if((out=fopen("c.doc","w">>==NULL>
number=0。
int>,1,out>。
fwrite(&number,sizeof(unsigned
fflush(out>。
fclose(out>。
break。
default:
break。
printf("pleaseenteranykeytocontinue">getchar(>。
getchar(>。
system("clear">。
commanddisp(>。
}
}
voidinputstu(>
{
printf("\n请输入学生信息
\n">。
5PCzVD7HxA
charp='y'。
while(p=='y'||p=='Y'>
{
memset(&student,0,sizeof(student>>。
printf("学号:
">。
scanf("%s",student.stu_num>。
printf("姓名:
">。
scanf("%s",student.name>。
printf("性别v0是女,1是男〉:
"〉。
do{
student.sex=getchar(>
}while(student.sex=='\n'>printf("手机号:
">。
scanf("%s",student.mobile_phone>。
len=sizeof(structstu_info>。
if((out=fopen("c.doc","r+">>==NULL>returnfread(&number,sizeof(unsignedint>,1,out>number++。
fseek(out,0L,SEEK_SET>。
fwrite(&number,sizeof(unsignedint>,1,out>fflush(out>。
fseek(out,0L,SEEK_END>。
fwrite(&student,len,1,out>。
fflush(out>。
fclose(out>。
printf("是否继续输入Y/N\n">。
fflush(stdin>。
do{
p=getchar(>。
}while(p=='\n'>。
}
}
voidupdatestu(>
printf("\n学生信息修改
\n">。
jLBHrnAILg
printf("请输入修改学生地学号:
">。
memset(&student,0,sizeof(student>>。
scanf("%s",student.stu_num>。
printf("姓名:
">。
scanf("%s",student.name>。
printf("性别v0是女,1是男〉:
"〉。
do{
student.sex=getchar(>。
}while(student.sex=='\n'>。
printf("手机号:
">。
scanf("%s",student.mobile_phone>。
len=sizeof(structstu_info>。
in=fopen("c.doc","r+">。
fread(&number,sizeof(unsignedint>,1,in>。
unsignedintj。
longkk。
for(j=0。
j j++> { if(str fread(&stu[0],len,1,in>。 cmp(student.stu_num,stu[0].stu_num>==0>xHAQX74J0X {kk=len。 fseek(in,-kk,SEEK_CUR>fwrite(&student,len,1,in>break。 } } fflush(in>。 fclose(in>。 if(j==number>printf("没有这条记录\n">。 } voiddeletestu(> { printf("\n学生信息删除 \n">。 LDAYtRyKfE in=fopen("c.doc","r">。 fread(&number,sizeof(unsignedint>,1,in>memset(stu,0,sizeof(stu>>。 len=sizeof(structstu_info>。 fread(stu,len,number,in>。 unsignedinti。 charf。 while(1>{ printf("请输入删除学生地学号: ">charstu_num[12]。 fflush(stdin>scanf("%s",stu_num>。 for(i=0。 i i++> if(strcmp(stu_num,stu[i].stu_num>==0>break。 if(i==number>printf("没有这条记录\n">。 else { number--。 for(。 i i++> { strcpy(stu[i].stu_num,stu[i+ 1].stu_num>。 strcpy(stu[i].name,stu[i+1].name>。 stu[i].sex=stu[i+1].sex。 strcpy(stu[i].mobile_phone,stu[i+1].mobile_phone>。 } } printf("是否继续删除Y/N\n">。 fflush(stdin>。 do{ f=getchar(>。 }while(f=='\n'> if(f! ='y'&&f! ='Y'>break fclose(in>。 out=fopen("c.doc","w">。 fwrite(&number,sizeof(unsignedint>,1,out>。 len=len*number。 fwrite(stu,len,1,out>。 fflush(out>。 fclose(out>。 } voiddisplaystu(> {printf("\n显示学生信息 \n">。 Zzz6ZB2Ltk in=fopen("c.doc","r">。 fread(&number,sizeof(unsignedint>,1,in>。 memset(stu,0,sizeof(stu>>。 len=sizeof(structstu_info>。 fread(stu,len,number,in>。 unsignedinti。 printf(" \n">。 dvzfvkwMI1 printf("number\t学号\t姓名\t性别<0是女,1是 男> 手机号\n">。 for(i=0 i i++> %c printf("%3d%12s%10s %12s\n",i,stu[i].stu_num,stu[i].name,stu[i].sex,stu[i].mobile_phone>。 rqyn14ZNXI fclose(in>。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 基本信息 管理 系统 LINUX
![提示](https://static.bdocx.com/images/bang_tan.gif)