|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 yeyongzhao 于 2015-1-8 20:38 编辑
- <P>#include <stdio.h>
- #include <string.h>
- void tianjia(); //添加函数
- void zhuce(); //注册函数
- void denglu(); //登陆函数
- void jieshu(char zh); //借书函数
- void huanshu(); //还书函数
- void xiugai(); //修改图书信息函数
- void shanchu(); //删除图书信息函数
- void bianhaochashu(); //按编号查书函数
- void shumingchashu(); //按书名查书函数
- void chashu(); //查书函数(主界面)
- void xianshi(int k); //定义显示书籍信息函数
- void guoke(); //匆匆过客的界面
- void tuichu(); //退出CC图书馆管理系统
- void menu(); //主菜单
- FILE *fp; //建立图书信息保存文件指针
- FILE *fpzc; //建立用户注册的信息文件指针
- struct Yonghu //建立用户结构体
- {
- char zhanghao[20];//帐号
- char Name[20];//姓名
- char sex[5];//性别
- char id[20];//学号
- char phone[20];//电话号码
- char mima[20];//密码
- char jie[10];//借书情况
- char huan[10];//还书情况
- };
- struct Yonghu yonghu[100];
- struct tushu//建立图书信息结构体
- {
- char name[30]; //书名
- char zuozhe[20]; //作者
- char ID[10]; //图书的编号
- char sl[10]; //图书的数量
- char dj[10]; //图书的单价
- };
- struct tushu shu[10000];</P>
- <P>void tianjia()//添加函数
- {
- int b,c,i=0;
- printf("★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★\n");
- printf("请输入你要添加的书的数量");scanf("%d",&b);
- for(i=0;i<b;i++)
- {
- printf("请输入要添加的第%ld图书的书名:",i+1);
- scanf("%s",shu[i+1].name);
-
- printf("请输入要添加的第%ld图书的作者:",i+1);
- scanf("%s",shu[i+1].zuozhe);
-
- printf("请输入要添加的第%ld图书的编号:",i+1);
- scanf("%s",shu[i+1].ID);
-
- printf("请输入要添加的第%ld图书的数量:",i+1);
- scanf("%s",shu[i+1].sl);
-
- printf("请输入要添加的第%ld图书的单价:",i+1);
- scanf("%s",shu[i+1].dj);
- printf("\n");
- }
- if((fp=fopen("CC图书馆管理系统.txt","w+"))==NULL)
- {
- printf("打开文件失败!\n");
- exit(0);
- }
- for(i=0;i<b;i++)
- fprintf(fp,"%20s%20s%20s%20s",shu[i+1].name,shu[i+1].zuozhe,shu[i+1].ID,shu[i+1].sl,shu[i+1].dj);
- fclose(fp);
- printf("\n");
- printf("★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★\n");
- }
- void zhuce()//注册函数
- {
- char mima2[20];
- char xuanze4;
- static int e;//定义静态变量e
- char cf3[]={'帐号','姓名','性别','学号','电话','密码'};//用于存放信息提示文字
- system("cls");
- printf("欢迎来到注册界面"); printf("\n\n");
- printf("请输入你的帐号:");scanf("%s",yonghu[e].zhanghao);printf("\n\n");
- printf("请输入你的姓名:");scanf("%s",yonghu[e].Name);printf("\n\n");
- printf("请输入你的性别:");scanf("%s",yonghu[e].sex);printf("\n\n");
- printf("请输入你的学号:");scanf("%s",yonghu[e].id);printf("\n\n");
- printf("请输入你的电话:"); scanf("%s",yonghu[e].phone);printf("\n\n");
- printf("请输入你的密码:");scanf("%s",yonghu[e].mima);printf("\n\n");
- printf("请再次输入你的密码");scanf("%s",mima2);printf("\n\n");
- if(strcmp(mima2,yonghu[e].mima)==0)
- {
- printf("恭喜你!你已经注册成功!");printf("\n\n");
- printf("按任意键回到主菜单");
- system("pause");
- menu();
- }
- else
- {
- printf("密码输入错误啦!!请重新注册!@@^=^@@");
- system("pause");
- zhuce();
- }
- if((fpzc=fopen("帐号注册资料保存.txt","w+"))==NULL)
- {
- printf("\n\n打开文件失败!\n");
- exit(0);
- }
- // fwrite(cf3,sizeof(cf3),1,fpzc);
- fwrite(&yonghu[e],sizeof(struct Yonghu),1,fpzc); //有两种读写方法
- fclose(fpzc);
- e++;
- printf("信息已保存!\n");
- printf("输入任意键返回主菜单");printf("\n\n");
- system("pause");
- menu();
- }
- void denglu() //登陆函数
- {
- FILE *fpzc;
- char mima3[20],zhanghao2[20];
- char mima4[20],zhanghao3[20];
- int t;
- system("cls");
- printf("欢迎来到登陆界面!\n\n\n");
- printf("请输入你的帐号:");scanf("%s",zhanghao2);printf("\n\n");
- printf("请输入你的密码:");scanf("%s",mima3);printf("\n\n");
- if((fpzc = fopen("帐号注册资料信息保存.txt","w+"))==NULL)
- {
- printf("\n\n打开失败!\n");
- exit(0);
- }
- for(t=0;t<=1000;t++)
- {
- fscanf(fpzc,"%s",zhanghao3);
- if((strcmp(zhanghao3,yonghu[t].zhanghao)==0)&&(strcmp(mima3,yonghu[t].mima)==0))
- menu();
- else printf("帐号密码输入错误!!\n");
- system("pause");
- denglu();
- }
- fclose(fpzc);
- }
- void jieshu(int zh)//借书函数
- {
- int i,xuanze5;
- char cha[20];
- printf("~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~\n");
- printf("请输入要搜索的书名或者编号:");
- scanf("%s", cha);
- for(i=0;i<100;i++)
- {
- if((strcmp(cha,shu[i].name)==0)||(strcmp(cha,shu[i].ID)==0))
- {
- printf("该图书的信息为:\n");
- printf("书名:%s 作者:%s 编号:%s 数量:%s 单价:%s\n",shu[i].name,shu[i].zuozhe,shu[i].ID,shu[i].sl,shu[i].dj);
- break;
- }
- }
- printf("\n");
- printf("是否要借这本书? 1.是 2.否");
- scanf("%d",&xuanze5);
- if(xuanze5==1)
- {
- printf("恭喜你借书成功\n\n");
- }
- else
- printf("~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ \n");
- }</P>
- <P>
- void huanshu(int zh)//还书函数
- {
- int m,xuanze6;
- char cha2[20];
- printf("~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~\n");
- printf("请输入要还的书名或者编号:");
- scanf("%s", cha2);
- for(m=0;m<100;m++)
- {
- if((strcmp(cha2,shu[m].name)==0)||(strcmp(cha2,shu[m].ID)==0))
- {
- printf("该图书的信息为:\n");
- printf("书名:%s 作者:%s 编号:%s 数量:%s 单价:%s\n",shu[m].name,shu[m].zuozhe,shu[m].ID,shu[m].sl,shu[m].dj);
- break;
- }
- }
- printf("\n");
- printf("是否要还这本书? 1.是 2.否");
- scanf("%d",&xuanze6);
- if(xuanze6==1)
- {
- printf("还书成功\n\n");
- }
- else
- printf("~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ \n");
- }
- void xiugai()//修改图书信息函数
- {
- system("cls");
- int q;
- char ID[30];
- char flag=0,t=0,mi=3,duan;
- struct tushu xg[100];
- struct tushu cunfang;
- printf("\n\n\n请输入想修改的图书的编号\n\n\n");
- scanf("%s",ID);
- printf("\n");
- if((fpFile=fopen("CC图书管理系统.txt","r"))==NULL)
- {
- printf("打开文件失败!\n");
- exit(0);
- }
- while(!feof(fpFile))
- {
- fread(&cunfang,sizeof(struct student),1,fp);
- if(!feof(fpFile))
- {
- xg[t]=cunfang; //把文件里的所有信息储存到数组xg里面
- t++;
- }
- }
- for(i=0;i<t;i++) //根据输入的编号,在数组xg里找到该图书i
- {
- if(strcmp(ID,xg[i].ID)==0)
- {
- system("cls");
- printf("\n\n\n图书的信息如下:\n\n");
- printf("\n\n\n书名:%s,作者:%s,编号:%s,数量:%s,单价:%s\n\n",xg[i].name,xg[i].zuozhe,xg[i].ID,xg[i].sl,xg[i].dj);
- printf("\n\n\n请选择你想修改的选项:\n\n");
- printf("\n\n\n1.书名修改\n\n");
- printf("\n\n\n2.作者修改\n\n");
- printf("\n\n\n3.编号修改\n\n");
- printf("\n\n\n4.数量修改\n\n");
- printf("\n\n\n5.单价修改\n\n");
- printf("\n\n\n");
- scanf("%d",&q);
- printf("\n");
- switch(q)
- {
- case 1: {
- printf("\n\n\n请输入新的书名\n");
- printf("\n\n\n");
- scanf("%s",xg[i].name);
- };break;
- case 2: {
- printf("\n\n\n请输入新的作者姓名\n");
- printf("\n\n\n");
- scanf("%s",xg[i].zuozhe);
- };break;
- case 3: {
- printf("\n\n\n请输入新的编号\n");
- printf("\n\n\n");
- scanf("%s",xg[i].ID);
- };break;
- case 4: {
- printf("\n\n\n请输入新的数量\n");
- printf("\n\n\n");
- scanf("%s",xg[i].sl);
- };break;
- case 5: {
- printf("\n\n\n请输入单价\n");
- printf("\n\n\n");
- scanf("%s",xg[i].dj);
- };break;
- default:printf("输入超范围啦!请输入1-5的数字!谢谢!");
- return xiugai();</P>
- <P> }
- printf("\n\n\n修改后的图书信息:\n\n");
- printf("\n\n\n书名:%s,作者:%s,编号:%s,数量:%s,单价:%s\n\n",xg[i].name,xg[i].zuozhe,xg[i].ID,xg[i].sl,xg[i].dj);
- }
- }</P>
- <P> fpFile=fopen("CC图书馆管理系统.txt","w");
- fwrite(xg,sizeof(struct student),t,fp);
- fclose(fp);
- }
- void shanchu() //删除图书信息函数
- {
- int w,judge,judge2;
- char id;
- system("cls");
- printf("\n\n请输入需要删除的图书的编号!\n");
- scanf("%s",id);
- for(w=0;w<10000;w++)
- if(strcmp(id,shu[w].ID)==0)
- {
- xianshi(id);
-
- }
- printf("\n\n确定要删除?\n\n\n 1.是 2.否\n");
- printf("\n\n");
- scanf("%d",&judge);
- if(judge==1)
- {
- for(i=id;i<1000;i++)
- {
- strcpy(shu[i].name,shu[i+1].name);
- strcpy(shu[i].zuozhe,shu[i+1].zuozhe);
- strcpy(shu[i].ID,shu[i+1].ID);
- strcpy(shu[i].sl,shu[i+1].sl);
- strcpy(shu[i].dj,shu[i+1].dj);
- }
- }
- printf("\n\n删除成功!\n");
- printf("\n\n是否继续删除?\n\n\n 1.是 2.否\n");
- printf("\n\n");
- scanf("%d",&judge2);
- if(judge2=1)
- shanchu();
- else menu();
- }
- void bianhaochashu()//按编号查书函数
- {
- char bianhao[10];
- int y,u;
- system("cls");
- printf("请输入图书的五位数字编号:(例如00001)");
- scanf("%f",&bianhao);
- for(y=0;y<=10000;y++)
- {
- if(strcmp(bianhao,shu[y].ID)==0)
- (printf("\n\n\n\%4s%4s%4s%4s%4s",shu[y].name,shu[y].zuozhe,shu[y].ID,shu[y].sl,shu[y].dj);
- else printf("没有这本书!\n")
- }
- printf("\n\n\n\是否继续查询?\n 1:是 2:否\n");
- scanf("%d",&u);
- if(u=1)
- bianhaochashu();
- else
- menu();
- }</P>
- <P>
- void shumingchashu()//按书名查书函数
- {
- char shuming[10];
- int o,p;
- system("cls");
- printf("请输入图书的名字:(例如 简爱)");
- scanf("%f",&shuming);
- for(o=0;o<=10000;o++)
- {
- if(strcmp(shuming,shu[o].name)==0)
- (printf("\n\n\n\%4s%4s%4s%4s%4s",shu[o].name,shu[o].zuozhe,shu[o].ID,shu[o].sl,shu[o].dj);
- else printf("没有这本书!\n")
- }
- printf("\n\n\n\是否继续查询?\n 1:是 2:否\n");
- scanf("%d",&p);
- if(p=1)
- shumingchashu();
- else
- menu();</P>
- <P>}
- void chashu()//查书函数(主界面)
- {
- int xuanze3;
- system("cls");
- printf("\n\n\n")
- printf(" ★★★★★★★★★★★★★★★★★★★★★★★\n");
- printf(" ★★ 欢迎使用CC图书管理系统 ★★\n");
- printf(" ★★ 图书查询 ★★\n");
- printf(" ★★ 1.按书名查询 ★★\n");
- printf(" ★★ 2.按编号查询 ★★\n");
- printf(" ★★ 3.返回上级菜单 ★★\n");
- printf(" ★★★★★★★★★★★★★★★★★★★★★★★\n");
- scanf("%d",xuanze3);
- switch(xuanze3)
- {
- case 1:shumingchashu;break;
- case 2:bianhaochashu;break;
- case 3:guoke();break;
- default:printf("expression error!\n")
- }
- chashu();
- }</P>
- <P>void xianshi(int k) //定义显示书籍信息函数
- {
-
- system("cls");
- FILE *fp;
- if((fp=fopen("CC图书馆管理系统.txt","r"))==NULL)
- {
- printf("打开文件失败!\n");
- exit(0);
- }
- if(strcmp(k,shu[k].ID)==0)
- {
- printf("\n\n书名:%s作者%s编号%s数量%s单价%s",shu[k].name,shu[k].zuozhe,shu[k].ID,shu[k].sl,shu[k].dj);
- printf("状态为:%d",k);
- }
- fclose(fp);
- }
- void tuichu()//退出CC图书馆管理系统
- {
- system("cls");
- printf("\n\n\n");
- printf("谢谢您的使用,再见!!!");
-
- }
- void guoke()//匆匆过客的界面
- {
- int xuanze2
- system("cls");
- printf("\n\n\n")
- printf(" ★★★★★★★★★★★★★★★★★★★★★★★\n");
- printf(" ★★ 欢迎使用CC图书管理系统 ★★\n");
- printf(" ★★ 匆匆过客 ★★\n");
- printf(" ★★ 1.书籍查询 ★★\n");
- printf(" ★★ 2.帐号注册 ★★\n");
- printf(" ★★ 3.返回上级菜单 ★★\n");
- printf(" ★★★★★★★★★★★★★★★★★★★★★★★\n");
- scanf("%d",&xuanze2);
- switch(xuanze2)
- {
- case 1:shujichaxun;break;
- case 2:zhuce;break;
- case 3:menu();break;
- default:printf("expression error!\n");
- }
- guoke();
- }</P>
- <P>
- void menu()//主菜单
- {int xuanze1;
- printf("\n\n\n")
- printf(" ★★★★★★★★★★★★★★★★★★★★★★★\n");
- printf(" ★★ 欢迎使用CC图书管理系统 ★★\n");
- printf(" ★★ 1:帐号注册 ★★\n");
- printf(" ★★ 2:用户登陆 ★★\n");
- printf(" ★★ 3:匆匆过客 ★★\n");
- printf(" ★★ 4:新书添加 ★★\n");
- printf(" ★★ 5:退出CC图书管理系统 ★★\n");
- printf(" ★★★★★★★★★★★★★★★★★★★★★★★\n");
- scanf("%d",&xuanze1);
- switch(xuanze)
- {
- case 1: zhuce() ;break;
- case 2: denglu() ;break;
- case 3: guoke() ;break;
- case 4: tianjia();break;
- case 5: tuichu() ;break;
- default:printf("expression error!\n");
- }
- menu();
- }
- </P>
复制代码 作为一个菜鸟,经常逛鱼吧的菜鸟,自编了一个图书馆管理系统,但是很多错误...希望各位大神能帮我该改 或者指导指导
PS 错误较多,思路乱,烦请各位大神出山
我想 有个正确的模版对照错误。
在这里谢谢各位大神了....
|
|