c语言程序设计,能不能帮我分析一下这个模块啊,我不是特别会、、图书馆信息管理系统删除模块。

作者&投稿:繁狗 (若有异议请与网页底部的电邮联系)
急需用C语言写的图书馆信息管理系统~

功能描述:
(1)新进图书基本信息的输入。
(2) 图书基本信息的查询。
(3) 对撤消图书信息的删除。
(4)为借书人办理注册。
(5)办理借书手续(非注册会员不能借书)。
(6)办理还书手续
信息描述:有关该系统基本信息的描述,如:图书名称、图书编号、单价、作者、存在状态、借书人姓名、性别、学号等
#include "stdio.h"
#include
#include "conio.h"
#include
#include

void main()
{void adm1(),adm2(),build(),huan(),borrow(),dele();
adm1();

}

void adm1()
{ FILE *fp,*p ;
char adp[20],password[20];
int i,n=0;
textbackground(2);
clrscr();
gotoxy(25,12);
fp=fopen("pass","r");
if(fp==NULL) { printf("no exit ");getch();exit(0);}
printf("input password:");
for(;;)
{

window(42,12,53,12);
textbackground(0);
clrscr();
gets(adp);
for(i=0;adp[i]!='\0';i++);
fgets(password,i+1,fp);
gotoxy(55,12);
if(strcmp(password,adp)==0) { window(55,12,70,12);clrscr();cprintf("YES");getch();adm2();getch();exit(0);}
else{ n++;
window(55,12,60,12);clrscr();gotoxy(55,12);cprintf("error");
for(i=0;i<30;i++) delay(8000);
if(n==2) { window(55,12,70,12);clrscr();gotoxy(55,12);cprintf("once again");for(i=0;i<=30;i++) delay(8000);}
if(n==3) { window(55,12,70,12);clrscr();gotoxy(55,12);cprintf("3 second out");for(i=0;i<=30;i++) { delay(8000);}
exit(0);
}
}
fclose(fp);clrscr();

}
}
void adm2()
{ char a;
window(1,1,80,25);
clrscr();
for(;;)
{ clrscr();
gotoxy(30,8);printf("built a new user (B)");
gotoxy(30,10);printf("return book (R)");
gotoxy(30,12);printf("borrow books (J)");
gotoxy(30,14);printf("delete user (D)");
a=getch();
if(a=='b') build();
if(a=='r') huan();
if(a=='j') borrow();
if(a=='d') dele();
else continue;

}

}

void build()
{ FILE *f,*p;
char id[20],name[20],sex[2],age[3],grad[50];
window(1,1,80,25);
clrscr();
printf("ID number:");
scanf("%s",id);
printf("name:");
scanf("%s",name);
printf("sex:");
scanf("%s",sex);
printf("grad:");
scanf("%s",grad);
p=fopen(id,"w+");
if(p==NULL) { printf("can't build that user");getch();adm2();}

fprintf(p,"%s ",name);
fprintf(p,"%s ",id);
fprintf(p,"%s ",sex);
fprintf(p,"%s ",grad);
printf("bulid success");
getch();
fclose(p);
}



void huan()
{
FILE *fp,*p,*f;
char id[20],a[5][50],name[20],c;
int i=0,m,k; clrscr();
printf("input ID number:");
scanf("%s",id);
p=fopen(id,"r");
if(p==NULL) { printf("error");getch();fclose(p);exit(0);}
fscanf(p,"%s",name);
fclose(p);
fp=fopen(name,"r");
do{ fscanf(fp,"%s",a[i++]); }while(!feof(fp));

for(k=0;k<i-1;k++) printf("
book %d: %s",k+1,a[k]);
fclose(fp);
f=fopen(name,"w+");
for(;;)
{
printf("

press the book number that you want to return.

Press 6 if you want to return all.

press 7 to cancle.
");
scanf("%d",&m);
if(m==7) { for(k=0;k<i-1;k++)
{
fprintf(f,"%s
",a[k]);
}
fclose(f);
adm2();
}
if(m==6) remove(name);
if(m<6)
for(k=0;k<i-1;k++)
{ if(k!=m-1)
fprintf(f,"%s
",a[k]);
}
printf("book %d has returned.",m);
printf("
continue? (Y/N)");
c=getch();
if(c=='y') continue;
if(c=='n') { fclose(f);adm2(); }
}
}




void borrow()
{ FILE *f,*m,*p;
char id[20],book[5][50],name[20],c;
int i=0,n=0,k;
window(1,1,80,25);clrscr();
printf("please input the user's ID:");
scanf("%s",id);
m=fopen(id,"r");
if(m==NULL) { printf("user no exit"); getch();fclose(m);adm2();}
fscanf(m,"%s",name);
fclose(m);
p=fopen(name,"r");
if(p==NULL);
else
{ while(!feof(p))
{
fscanf(p,"%s",book[i]);
i++;
}
i--;
for(k=0;k<i;k++) printf("
book %d :%s",k+1,book[k]);
}
fclose(p);
f=fopen(name,"w");
printf("
how many book do you want to borrow?:");
do{printf("
input:");scanf("%d",&n); }while(i+n>=6);
for(k=i;k<i+n;k++)
{ printf("
book %d :",k+1);
scanf("%s",book[k]);
}
for(k=0;k<i+n;k++) fprintf(f,"%s
",book[k]);
fputc('\0',f);
printf("success");
fclose(f);

}







void dele()
{ FILE *fp,*f;
char id[20],a[4][20],c,b[5][50];
int i=0,j=0,k;
window(1,1,80,25);clrscr();
printf("Input ID number:");
scanf("%s",id);
fp=fopen(id,"r");
if(fp==NULL) { printf("
user isn't exit");getch(); fclose(fp);adm2();}
else while(!feof(fp))
{ fscanf(fp,"%s",a[i++]);}
printf("
name: %s",a[0]);
printf("
ID: %s",a[1]);
printf("
sex: %s",a[2]);
printf("
grad: %s",a[3]);
f=fopen(a[0],"r");
if(f==NULL);
else {
while(!feof(f))
{ fscanf(f,"%s",b[j++]);}
for(k=0;k<j-1;k++) printf("
book %d: %s",k+1,b[k]);
}
printf("
Do you want to delete? (Y/N): ");
c=getch();
fclose(fp);
fclose(f);
if(c=='y') { remove(id);remove(a[0]);printf("
success");getch();adm2();}
if(c=='n') adm2();
}

可以凭借Baiduhi提醒我们
有机会能够处理你所遇到的工作
更进一步的要求也能够提醒我们

ES:\\403FBBD22E82E57226A7E8AAB149761F
PS:善意提醒:先付订金是陷阱

/**************************************删除书籍***********************************************/
void Del(Link l) /* 删除 */
{
int sel;
Node *p,*r;
char findmess[20]; //数据定义就不说了
if(!l->next) //这一行应该缺了点什么吧
{
printf("\n提示:没有资料可以删除!\n");
return;
}
printf("\n=====>1按书籍号删除\n=====>2按书名删除\n");
scanf("%d",&sel); //输入1或者2作为命令
if(sel==1) //如果输入1那么……
{
printf("请你输入要删除的学号:");
scanf("%s",findmess); //输入要删除的学号
p=Locate(l,findmess,"num"); //取出序号对应的指针
if(p) //判断指针是否为空
{
r=l;
while(r->next!=p)
r=r->next;
r->next=p->next;
free(p); //清楚相应的书籍信息
printf("\n提示:该书籍已经成功PASS!\n");
shoudsave=1; //置相应的标志位
}
else
Nofind(); //这就不知道了
}
else if(sel==2) //这是命令2
{
printf("请你输入要删除的书名:");
scanf("%s",findmess); //输入书名
p=Locate(l,findmess,"name"); //读取相应的指针
if(p) //身下的应该能看懂,
r=l;
else
Nofind();
}
else
Wrong();
}

至于你数的。链表,那要看你怎么建的了只看这些看不出来!
祝你好运

没贴全


高级程序设计语言有哪些
有很多。高级程序设计语言有:Fortran、Pascal、Cobol、C、C、Basic、Ada、Java、C#、Lisp、Haskell、ML、Scheme、Prolog、Smalltalk等等。高级程序设计语言的分类:命令式语言。这种语言的语义基础是模拟“数据存储\/数据操作”的图灵机可计算模型,十分符合现代计算机体系结构的自然实现方式。其中产生操作的主要...

c语言程序设计中不可转换字符有哪些?
在C语言中,有一些字符是不能被直接转换为整数或字符的,这些字符被称为不可打印字符(Non-printable Character),包括:空字符(NUL):ASCII码为0的字符。换行符(LF):ASCII码为10的字符,表示换行。回车符(CR):ASCII码为13的字符,表示回车。水平制表符(HT):ASCII码为9的字符,表示横向...

c语言模块化程序设计是将一个大的任务分解成若干个小任务吗?
选A。一个C程序由一个主函数和若干个其他函数组成。若干个的意思就是可以有0个及以上个。c语言的程序模块称为函数。模块化程序设计是将一个大的任务分解成若干个小任务,再将小任务分解成更小的任务,直到每一个任务都只完成一个独立功能。这样的每个任务都叫做模块,c语言中模块是用函数来实现。

C语言程序设计:有30名学生的5门成绩,编写函数统计不及格成绩最多的一...
1、用结构体表示一名学生的信息,用结构数组记录所有信息。2、用随机数填充所有数值。3、通过循环统计出不及格数最多的一门学科。include <stdio.h> include <stdlib.h> include define M 30\/\/最大人数 define S 5\/\/最大学科数 define P 60\/\/及格线 typedef struct stu { int id;\/\/学生学号...

程序设计和计算机语言是同一概念这句话对吗
这种情况下软件构造活动的内容越来越丰富,不再只是纯粹的程序设计,还包括数据库设计、用户界面设计、接口设计、通信协议设计和复杂的系统配置过程。计算机语言是人与计算机之间传递信息的媒介。计算机系统最大特征是指令通过一种语言传达给机器。为了使电子计算机进行各种工作,就需要有一套用以编写计算机程序的...

程序设计语言通常分为
程序设计语言按照语言级别可以分为低级语言和高级语言。低级语言有机器语言和汇编语言。低级语言与特定的机器有关、功效高,但使用复杂、繁琐、费时、易出差错。 扩展资料 机器语言是表示成数码形式的机器基本指令集,或者是操作码经过符号化的基本指令集。汇编语言是机器语言中地址部分符号化的结果,...

c语言结构化程序设计的三种基本结构
C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可...

简述计算机程序设计语言(机器语言、汇编语言、高级语言)的优缺点_百 ...
机器语言:1.优点: 计算机能够直接识别,不用转换。缺点:编程很很复杂,一个字,难。相当于你要用(01)两个数字完成所有的程序编译。汇编语言:优点:编程比机器语言简单的多,但要转换后计算机才能识别。学习起来也不是很难。高级语言:优点:编程简单(比汇编还要简单,灵活),但要转换后计算机才能...

程序设计语言通常有哪些?
程序设计语言通常分为:机器语言、汇编语言、高级语言三类。机器语言是最底层的语言,只有“0”和“1”,二进制语言,就像开关一样,0是关,1是通过。汇编语言指令是机器指令的符号化,与机器指令存在着直接的对应关系。高级语言面向用户的、基本上独立于计算机种类和结构的语言。高级语言的一个命令可以...

计算机程序设计语言和计算机编程语言有没有区别
二、作用不同 计算机程序设计语言:计算机程序设计语言主要用于程序员能够准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应当采取的行动。计算机编程语言:计算机编程语言主要用于设计者通过计算机的硬件结构赋予计算机的操作功能。三、特点不同 计算机程序设计语言:计算机程序设计语言具有操作符...

平南县14710341796: c程序设计,请能人帮我分析一下.尽量要详细哦
坚纯玉川: 开帅,你可以直接问我瑟... 首先,第一步,a=1,a%2==1,成立,执行a+=5,得a=6.然后跳回for,此时,b自增一位,得2. 第二步,a=6,a%2==0,对a%2==1不成立,跳出,赋值给a=3,b自增一位,得3. 第三步,a=3,a%2==1,

平南县14710341796: C语言高手请帮忙!!帮我分析一下程序思路!!
坚纯玉川: 我建议新手用排除法来写这个程序! int sum=1;从1个开始 int s=1;定义余数 DO{for( int i=1;i++;i<=5);分5次,每次一个循环; { sum=4*(sum-1)/5; } if(sum==1) 判断是否是这个总数; {MessageBox("OK");是结束; } SUM++; 不是+1; }WHILE(SUM==1);

平南县14710341796: 求高手帮我分析一个C语言程序
坚纯玉川: #include <stdio.h>void main(){ int year,month,totalday,week,w,i,j; int monthday[12]={0,31,59,90,120,151,181,212,243,273,304,334};//平年每月起始 int monthdayLeap[12]={0,31,60,91,121,152,182,213,244,274,305,335};//润年每月起始 int t[]={31...

平南县14710341796: 请教各位学霸,能帮忙把这个c语言程序分析一下吗?多谢 -
坚纯玉川: 第一题:#include<stdio.h>void main(){ int aa,bb,cc; printf("请输入第一个整数:"); scanf("%d",&aa); printf("请输入第二个整数:"); scanf("%d",&bb); cc=aa; aa=bb; bb=cc; printf("您输入的两个数字交换后是:\n%d\n%d",...

平南县14710341796: 简单c语言程序设计,可以帮忙看一下程序的问题吗?谢谢! -
坚纯玉川: 改成下面的样子——int main(int argc,char *argv[]){ int a,b,j,i,sum=0; scanf("%d%d",&a,&b); for(j=a;j<=b;j++){ for(sum=0,i=1;i<j;i++){ if(j%i==0) sum=sum+i; } if(sum==j) printf("%d\n",j); } return 0;}

平南县14710341796: C语言!谁能帮我具体解析一下!? -
坚纯玉川: 第一个for语句执行5次,第一次10>5,i=1,10>6,i=2,...到第五次10>9,i=5,下次10不大于10,跳出for循环了.while语句中a>++c,根据运算符的先后,是先算++c的,第一次10>6,j=1,..,到第四次,10>9,j=4,下次10不大于10,跳出while循环了.do while语句是先执行一次,第一次k++.k=1.直到第6次,k=6,10不大于10,跳出循环.

平南县14710341796: 帮我分析一下两道C语言程序 -
坚纯玉川: 第一道是指针p首地址指向字符串首地址,然后p地址加三,指向d,strcpy是将后面的字符串复制到p中然后计算p的长度(strlen)和输出 第二道是*p为一个地址,这个地址等于str,然后在这个地址上加上三输入地址,(注意地址为一个数值) 简单说:第一道是输入p里面字符的长度 第二道是输出指针地址

平南县14710341796: C 语言 能帮我详细分析一下这个程序吗?(数组) -
坚纯玉川: # include”stdio.h” void main( ){ char a[26];//定义字符数组 for (i=0;i<26;i++) a[i]='a'+i;//输入26个字母小写for (i=0;i<26;i+=2) a[i]+=32;//转换成26个大写字母 (应该是a[i]-32吧)for (i=0;i<26;i++){ putchar(a[i]);putchar(' ');if ((i+1)%10==0) putchar('\n');//输出字母 没个字母间隔输出 没10个为一行}}

平南县14710341796: C语言编程 请帮我分析 -
坚纯玉川: /* Note:Your choice is C IDE */#include "stdio.h"void fun(int *m,int n){int i; for(i=0;i<n;i++) m[i]++;//这步怎么分析---- 自加,相当于: m[i] = m[i]+1; 所以之前字义的数组{1,2,3,4,5} 各个加1后,变成{2,3,4,5,6}了}void main(){ int a[]={1,2,3,4,5},i; fun(a,5); for(i=0;i<5;i++) printf("%d",a[i]);//结果为什么是2,3,4,5,6}

平南县14710341796: 求c语言高手帮我分析一下过程,谢谢!!! -
坚纯玉川: a[0]=2a[1]=4....a[4]=10;y=1;for(x=0;x<3;x++ ) //x=0,1,2循环三次 y+= a[x+1] ; // +=a[1] a[2] a[3]y=1+4+6+8=19

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网