| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1169 人关注过本帖
标题:怎么学生信息文件插入到程序呀
只看楼主 加入收藏
笑给你看XX
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2017-3-21
收藏
 问题点数:0 回复次数:4 
怎么学生信息文件插入到程序呀
#include<stdio.h>

#include<stdlib.h>

#include<string.h>

void display() ;
void shanchu();
void display2(int j);
void chazhao();
void zhuce();
int denglu(int j);

int i;

bool flag=true;

struct lib

{

char ID[20];

char author[20];

char name[30];

char chubanshe[30];

struct lib *next;

};

struct lib *link=NULL;

struct lib *lastbook=NULL;

struct lib *add(struct lib *lastbook)

{

struct lib *a;

a=NULL;

if(lastbook==NULL)

{

lastbook=new lib;

link=lastbook;

printf("欢迎进入图书添加界面^_^\n");

printf("请输入添加的书的ID号^_^\n");

scanf("%s",lastbook->ID);

printf("请输入书的作者^_^\n");

scanf("%s",lastbook->author);

printf("请输入书名^_^\n");

scanf("%s",lastbook->name);

printf("请输入书的出版社^_^\n");

scanf("%s",lastbook->chubanshe);

lastbook->next=NULL;

}

else

{

a=new lib;

printf("欢迎进入图书添加界面^_^\n");

printf("请输入添加的书的ID号^_^\n");

scanf("%s",a->ID);

printf("请输入书的作者^_^\n");

scanf("%s",a->author);

printf("请输入书名^_^\n");

scanf("%s",a->name);

printf("请输入书的出版社^_^\n");

scanf("%s",a->chubanshe);

a->next=NULL;

lastbook->next=a;

lastbook=a;

}

printf("图书添加完毕^_^\n");

return lastbook;

}

void display()

{

struct lib *p;

i=0;

p=link;

if(p==NULL)

{

printf("对不起,现在图书馆一本书还都没有,建议您先添加图书^_^\n");

}

else

{

while(p!=NULL)

{

i++;

printf("%d. ID:%-12s作者:%-12s书名:%-12s出版社:%-12s\n",i,p->author,p->chubanshe,p->ID,p->name);

p=p->next;

}

}

}

void shanchu()

{

int j,k;

struct lib *p,*a;

p=link;

if(p==NULL)

{

printf("对不起,现在图书馆一本书还都没有,建议您先添加图书^_^\n");

}

else

{

display();

printf("请输入您要删除第几本书吧^_^\n");

scanf("%d",&j);

if(j>i)

{

printf("对不起,压根就没有那么多的书^_^\n");

}

else if(j<i)

{

for(k=1;k<=j-2;k++)

{

p=p->next;

}

a=p->next;

p->next=a->next;

delete(a);

printf("记录删除成功\n");

}

else

{

for(k=1;k<=j-2;k++)

{

p=p->next;

}

a=p->next;

delete(a);

p->next=NULL;

lastbook->next=p;

printf("记录删除成功\n");

}

}

}

void display2(int j)

{

struct lib *p;

int m;

p=link;

for(m=1;m<=j-1;m++)

{

p=p->next;

}

printf("%d. ID:%-12s作者:%-12s书名:%-12s出版社:%-12s\n",j,p->author,p->chubanshe,p->ID,p->name);

}

void chazhao()

{

int selete=0,m=0;

char a[20];

struct lib *p;

p=link;

printf("欢迎进入查找界面^_^\n");

if(p==NULL)

{

printf("对不起,现在图书馆中还没有图书呢^_^\n");

}

else

{

   printf("1.按ID号查找\t2.按作者查找\t3.按书名查找\t4.按出版社查找\n");

   scanf("%d",&selete);

   if(selete==1)

{

printf("您现在进入ID查找界面,请输入ID号\n");

scanf("%s",a);

while(p!=NULL)

{

m++;

if(strcmp(p->ID,a)==0)

{

display2(m);

break;

}

else

p=p->next;

}

if(p==NULL)

printf("对不起,数据库中没有您找的书\n");

}

else if(selete==2)

{

printf("您现在进入作者查找界面,请输入作者\n");

scanf("%s",a);

while(p!=NULL)

{

m++;

if(strcmp(p->author,a)==0)

{

display2(m);

break;

}

else

p=p->next;

}

if(p==NULL)

printf("对不起,数据库中没有您找的书\n");

}

else if(selete==3)

{

printf("您现在进入书名查找界面,请输入书名\n");

scanf("%s",a);

while(p!=NULL)

{

m++;

if(strcmp(p->name,a)==0)

{

display2(m);

break;

}

else

p=p->next;

}

if(p==NULL)

printf("对不起,数据库中没有您找的书\n");

}

else if(selete==4)

{

printf("您现在进入出版社查找界面,请输入出版社名\n");

scanf("%s",a);

while(p!=NULL)

{

m++;

if(strcmp(p->chubanshe,a)==0)

{

display2(m);

break;

}

else

p=p->next;

}

if(p==NULL)

printf("对不起,数据库中没有您找的书\n");

}

else

{

printf("对不起,您的输入有误,请重新选择\n");

}

}

}

void zhuce()

{

FILE *fp;

int m=1;

char name[20],mima[20],mima2[20];

fp=fopen("user.txt","a+");

if(fp==NULL)

{

printf("对不起,系统出错,文件打开失败!!!\n");

}

else

{

printf("请输入账号:");

scanf("%s",name);

while(m)

{

printf("请输入密码:");

scanf("%s",mima);

printf("请再次输入密码:");

scanf("%s",mima2);

if(strcmp(mima,mima2)==0)

m=0;

else

{

printf("对不起,您两次输入的密码不同,请重新输入^_^\n");

}

}

}

fprintf(fp," %s %s ",name,mima);

printf("注册成功,直接进入系统\n");

system("pause");

system("cls");

fclose(fp);

}

int denglu(int j)

{

FILE *fp;

char name[20],mima[20],name2[20],mima2[20];

fp=fopen("user.txt","r+");

if(fp==NULL)

{

printf("对不起,文件打开失败!\n");

}

else

{

printf("账号:");

scanf("%s",name);

printf("密码:");

scanf("%s",mima);

while(fscanf(fp,"%s%s",name2,mima2)!=EOF)

{

if((strcmp(name2,name2)==0)&&(strcmp(mima,mima2)==0))

{

printf("尊敬的%s用户,欢迎使用图书管理系统\n",name);

system("pause");

system("cls");

flag=true;

return 1;

}

}

fclose(fp);

if(j>1)

printf("对不起,您的输入有误,您还有%d次机会,请重新输入\n",j-1);

return 0;

}

}

int main(void)

{

char selete[10],n;

int j,k;

printf("欢迎进入图书管理系统^_^\n");

printf("1.已有账号登陆\t\t\t2.新用户注册\n");

printf("请输入您的选择\n");

scanf("%d",&n);

if(n==1)

{

for(j=3;j>=0;j--)

{

if(j!=0)

{

k=denglu(j);

if(k==1)

break;

else

continue;

flag=false;

}

else

flag=false;

}

}

else if(n==2)

{

zhuce();

}

else

{

printf("对不起,您的输入有误,系统自动退出\n");

}

while(flag)

{

printf("请选择您要做的事情:\n1.全部图书浏览\t2.新图书添加\t3.图书删除\t4.图书查找\t5.图书借阅\t0.退出\n");

scanf("%s",&selete);

switch(selete[0])

{

case '0':flag=false;break;

case '1':display();system("pause");break;

case '2':lastbook=add(lastbook);break;

case '3':shanchu();system("pause");break;

case '4':chazhao();system("pause");break;

default:printf("对不起,您的输入有误,请重新输入\n");break;

}

system("cls");

}

printf("谢谢使用本系统^_^\n");

}
搜索更多相关主题的帖子: display include 信息 
2017-03-28 14:56
renkejun1942
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:不是这样
等 级:贵宾
威 望:33
帖 子:1645
专家分:5297
注 册:2016-12-1
收藏
得分:0 
读取文件。
将数组存入数组,或者链表。
怎么读取,取决于你的文件。

如果是格式化的文本格式,那就用fscanf()
如果是二进制的文件,那就用fread()

09:30 05/21 种下琵琶种子,能种活么?等待中……
21:50 05/27 没有发芽。
20:51 05/28 没有发芽。
23:03 05/29 没有发芽。
23:30 06/09 我有预感,要发芽了。
2017-03-28 15:13
renkejun1942
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:不是这样
等 级:贵宾
威 望:33
帖 子:1645
专家分:5297
注 册:2016-12-1
收藏
得分:0 
https://bbs.bccn.net/thread-475437-1-1.html

推销下我的这个帖子,虽然写的不是图书管理,但是道理都是相通的。

09:30 05/21 种下琵琶种子,能种活么?等待中……
21:50 05/27 没有发芽。
20:51 05/28 没有发芽。
23:03 05/29 没有发芽。
23:30 06/09 我有预感,要发芽了。
2017-03-28 15:15
笑给你看XX
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2017-3-21
收藏
得分:0 
回复 2楼 renkejun1942
怎么把图书文件信息插进去
2017-03-28 23:17
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
以下是引用笑给你看XX在2017-3-28 23:17:22的发言:

怎么把图书文件信息插进去

可以不用全部代码贴上来,代码太多会吓怕人。
只贴与问题相关的代码或写个简单的类似问题的示例,这样能更高效分析解决问题,毕竟大家抽时间上来不容易。
废话不多说。
先问问,“插进去”具体过程是做些什么?
2017-03-29 07:15
快速回复:怎么学生信息文件插入到程序呀
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025623 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved