C语言课程设计

作者&投稿:韶容 (若有异议请与网页底部的电邮联系)
c语言课程设计~

用tc试试
/*12. bookfunction.c源程序*/
/*** bookfunction.c***/
/*添加图书*/
#include "图书管理.c"
void BookAdd()
{
FILE *fp;
Book consultbook;
fp=fopen("book.txt","rb");/*读方式打开文件*/
if(fp==NULL)
fp=fopen("book.txt","wb"); /*写方式打开文件*/
else/*如果有书就添加*/
{
fclose(fp);
fp=fopen("book.txt","ab");/*追加方式打开文件*/
}
ClrScr();/*清屏*/
printf("Intput new book num: ");/*逐个输入新图书的资料*/
gets(consultbook.num);
gotoxy(2,4);
printf("Input new book name: ");
gets(consultbook.name);
gotoxy(2,5);
printf("Please input new book's price: ");
scanf("%d%*c",&consultbook.price);
strcpy(consultbook.person,"");
consultbook.yes=1;/*表示书存在未借出*/
consultbook.next=NULL;
fwrite(&consultbook,sizeof(Book),1,fp);/*块写*/
fclose(fp); /*关闭文件*/
ClrScr();
}
/*图书查询*/
void BookConsult()
{
FILE *fp;
Book consultbook;
char bookname[20]; /*书名*/
int flag=0,i=0;
ClrScr();
gotoxy(2,3);
printf("Input the book name: ");
gets(bookname); /*输入要查询的图书名*/
fp=fopen("book.txt","rb");
if(fp==NULL)/*没找到文件*/
{
ClrScr();
gotoxy(2,3);
printf("Error!");
fclose(fp);
return;
}
else
while(!feof(fp))/*查询图书资料*/
{
fread(&consultbook,sizeof(Book),1,fp);
if(strcmp(consultbook.name,bookname)==0)/*如果查找到*/
{
ClrScr();
gotoxy(2,3+i*5);
printf("This book %s information as follow:",consultbook.name);
gotoxy(2,4+i*5);
printf("This book num is %s",consultbook.num);
gotoxy(2,5+i*5);
printf("This book's price is %d",consultbook.price);
gotoxy(2,6+i*5);
printf("This book's is browwed by %s",consultbook.person);
gotoxy(2,7+i*5);
printf("This book's state is %d",consultbook.yes);
i++;
flag=1; /*查找数据标志*/
}
}
if(flag==0)
{
ClrScr();
gotoxy(2,3);
printf("No found this book");
}
fclose(fp);
}
/*删除图书资料*/
void BookDel()
{
FILE *fp;
Book *head,*p,*q;
char bookname[20];
fp=fopen("book.txt","rb");/*读方式打开文件*/
if(fp==NULL)/*没找到文件*/
{
gotoxy(2,3);
printf("Error!");
fclose(fp);
return;
}
head=p=q=(Book*)malloc(sizeof(Book));/*将文件内容放入链表*/
fread(p,sizeof(Book),1,fp); /*读第一条记录*/
while(!feof(fp))
{
q=p;
p=(Book*)malloc(sizeof(Book));
fread(p,sizeof(Book),1,fp); /*读记录*/
q->next=p;/*新记录插入到链表的尾*/
}
p->next=NULL;/*最后一个结点的后继为空*/
fclose(fp);
ClrScr();
printf("Input the book name: ");
gets(bookname); /*输入图书名*/
p=head;
while(p!=NULL)/*按名字查找要删除的图书*/
{
if(strcmp(p->name,bookname)==0)/*找到要删除的图书*/
{
if(p==head) /*如果是第一个结点*/
head=head->next;
else
q->next=p->next;/*不是第一个结点*/
break;
}
q=p; /*指针后移*/
p=p->next;
}
fp=fopen("book.txt","wb");/*删除后从链表的头开始重新保存*/
while(head!=NULL)
{
fwrite(head,sizeof(Book),1,fp);/*块写*/
head=head->next;
}
fclose(fp);
ClrScr();
}
/*借书*/
void BookBorrow()
{
FILE *fp;
Book consultbook;
Member consultmember;
char bookname[20],membername[20];
int flag=0,mflag=0;
ClrScr();
gotoxy(2,3);
printf("Input the mermber name: ");
gets(membername); /*输入会员名*/
if((fp=fopen("member.txt","rb"))==NULL)/*没找到文件*/
{
gotoxy(3,3);
printf("Cannot open file
!");
return;
}
else
while(!feof(fp))/*查询会员资料*/
{
fread(&consultmember,sizeof(Member),1,fp);
if(strcmp(consultmember.name,membername)==0)
{
mflag=1; /*是会员标志*/
break;
}
}
fclose(fp);
if(mflag==0)
{
gotoxy(2,4);
printf("You not is a member,pleas register!");/*不是会员不能借书*/
return;
}
gotoxy(3,5);
printf("Input the book name: ");
gets(bookname); /*输入图书名*/
ClrScr();
if((fp=fopen("book.txt","rb+"))==NULL)/*没找到文件*/
{
gotoxy(2,3);
printf("Cannot open file
!");
return;
}
while(!feof(fp))/*查询图书资料*/
{
fread(&consultbook,sizeof(Book),1,fp);
if(strcmp(consultbook.name,bookname)==0)
{
if(consultbook.yes==0)/*图书已经借出的判断*/
{
gotoxy(2,3);
printf("This book has borrowed
!");
break;
}
else
{
consultbook.yes=0; /*作借出标志*/
strcpy(consultbook.person,membername);/*登记借书会员*/
fseek(fp,-1L*sizeof(Book),1);/*从当前位置前移一条记录指针*/
fwrite(&consultbook,sizeof(Book),1,fp);/*写记录*/
gotoxy(2,3);
printf("Borrowed succ!");
flag=1;/*借出书标志*/
break;
}
}
}
if(flag!=1)
{
ClrScr();
gotoxy(2,3);
printf("Borrowed fail!
");/*借书失败*/
}
fclose(fp);
}
/*还书*/
void BookReturn()
{
FILE *fp;
Book consultbook;
char bookname[20];
int flag=0;
ClrScr();
if((fp=fopen("book.txt","rb+"))==NULL)/*没找到文件*/
{
gotoxy(2,3);
printf("cannot open file
!");
return;
}
printf("Input the book name: ");
gets(bookname); /*输入图书名*/
ClrScr();
while(!feof(fp))/*查询图书资料*/
{
fread(&consultbook,sizeof(Book),1,fp);
if(strcmp(consultbook.name,bookname)==0)
{
if(consultbook.yes==0)/*图书已经借出的判断*/
{
consultbook.yes=1;/*作图书未借书标志,表示已还书*/
strcpy(consultbook.person,"");
fseek(fp,-1L*sizeof(Book),1);
fwrite(&consultbook,sizeof(Book),1,fp);
gotoxy(2,3);
printf("Return book succ!");
flag=1;
break;
}
}
}
if(flag!=1)
printf("Return fail!
");
fclose(fp);
}
/*清除屏幕*/
void ClrScr()
{
int i,j;
puttext(2,3,78,23,c);/*刚开始已经用gettext把蓝色的一块地方保存下来,现在再还原*/
gotoxy(2,3);
}
/*会员注册*/
void MemberAdd()
{
FILE *fp;
Member consultmember;
fp=fopen("member.txt","rb");
if(fp==NULL)/*如果没会员就新建*/
fp=fopen("member.txt","wb");
else/*如果有会员就添加*/
{
fclose(fp);
fp=fopen("member.txt","ab");/*追加方式打开*/
}
ClrScr();
gotoxy(2,3);
printf("Intput new member name: ");/*逐个输入会员的资料*/
gets(consultmember.name);
gotoxy(2,4);
printf("Input member sex: ");
gets(consultmember.sex);
gotoxy(2,5);
printf("Please input member age: ");
scanf("%d%*c",&consultmember.age);
fwrite(&consultmember,sizeof(Member),1,fp);/*写入记录*/
fclose(fp);
ClrScr();
}
/*查询会员*/
void MemberConsult()
{
FILE *fp;
Member consultmember;
char membername[20];
int flag=0;
ClrScr();
gotoxy(2,3);
printf("Input the member name: ");/*输入要查询的会员名*/
gets(membername);
fp=fopen("member.txt","rb");
if(fp==NULL)/*没找到文件*/
{
ClrScr();
gotoxy(2,3);
printf("Error!");
fclose(fp);
return;
}
while(!feof(fp))/*查询会员资料*/
{
fread(&consultmember,sizeof(Member),1,fp);
if(strcmp(consultmember.name,membername)==0)/*比较*/
{
ClrScr();
gotoxy(2,3);
printf("This member %s information as follow:",consultmember.name);
gotoxy(2,4);
printf("This member'sex is %s",consultmember.sex);
gotoxy(2,5);
printf("This member 's age is %d",consultmember.age);
flag=1;
break;
}
}
if(flag==0)
{
ClrScr();
gotoxy(2,3);
printf("No found this member!");
}
fclose(fp);
}
/*删除会员资料*/
void MemberDel()
{
FILE *fp;
Member *head,*p,*q;
char membername[20];
fp=fopen("member.txt","rb");
if(fp==NULL)/*没找到文件*/
{
gotoxy(2,3);
printf("Error!");
fclose(fp);
return;
}
head=p=q=(Member*)malloc(sizeof(Member));/*将文件内容放入链表*/
fread(p,sizeof(Member),1,fp);
while(!feof(fp))
{
q=p;
p=(Member*)malloc(sizeof(Member));
fread(p,sizeof(Member),1,fp);/*读记录*/
q->next=p;/*链入到链表的尾部*/
}
p->next=NULL;
fclose(fp);
ClrScr();
printf("Input the member name: ");/*输入会员名*/
gets(membername);
p=head;
while(p!=NULL)/*按名字查找要删除的书*/
{
if(strcmp(p->name,membername)==0)/*查找会员*/
{
if(p==head)
head=head->next;/*如果是第一条记录*/
else
q->next=p->next;/*不是第一条记录*/
break;
}
q=p; /*没找到,则指针后移继续找*/
p=p->next;
}
fp=fopen("member.txt","wb");/*删除后重新保存*/
while(head!=NULL)
{
fwrite(head,sizeof(Member),1,fp);/*块写*/
head=head->next;
}
fclose(fp);
ClrScr();
}
/*查询会员所借的图书*/
void MemberBook()
{
FILE *fp;
Book consultbook;
Member consultmember;
char bookname[20],membername[20];
int flag=0,mflag=0,i=0;
ClrScr();
gotoxy(2,3);
printf("Input the mermber name: ");/*输入会员名*/
gets(membername);
if((fp=fopen("member.txt","rb"))==NULL)/*没找到文件*/
{
gotoxy(3,3);
printf("Cannot open file
!");
return;
}
else
while(!feof(fp))/*查询会员资料,确认会员*/
{
fread(&consultmember,sizeof(Member),1,fp);
if(strcmp(consultmember.name,membername)==0)
{
mflag=1;
break;
}
}
fclose(fp);
if(mflag==0)
{
gotoxy(2,4);
printf("Not the member!");
return;
}
ClrScr();
if((fp=fopen("book.txt","rb+"))==NULL)/*没找到文件*/
{
gotoxy(2,3);
printf("Cannot open file
!");
return;
}
while(!feof(fp))/*查询图书资料*/
{
fread(&consultbook,sizeof(Book),1,fp);
gotoxy(2,3);
printf("This member %s has borrowed book as follow:",membername);
gotoxy(2,4);
printf("********************************************");
if(strcmp(consultbook.person,membername)==0)/*借阅人比较*/
{
gotoxy(2,5+i*4);
printf("Book name is %s",consultbook.name);
gotoxy(2,6+i*4);
printf("This book num is %s",consultbook.num);
gotoxy(2,7+i*4);
printf("This book's price is %d",consultbook.price);
printf("
");
i++;
flag=1;
}
}
if(flag!=1)
{
ClrScr();
gotoxy(2,3);
printf("no Borrow book!
");
}
else
{
gotoxy(2,i*4+6);
printf("******total is %d*********",i);/*显示总数*/
}
fclose(fp);
}
/*帮助文件*/
void Help()
{
ClrScr();
DrawFrame(10,5,50,8,0,7); /*画边框*/
gotoxy(15,6);
cprintf("click menu to run each funtion");/*输出字符串*/
getch();
ClrScr();
}
/***版本信息***/
void Ver()
{
ClrScr();
DrawFrame(10,5,50,8,0,7); /*画边框*/
gotoxy(15,6);
cprintf("Ver 1.0 finished by zhuyun");/*输出字符串*/
getch();
ClrScr();
}


想偷懒的话就写一个控制台程序......

完全不需要图形化的函数什么的.......

工程,文件操作这些都没什么实。

我这边有一套不错的C语言课程设计,如果你喜欢可以拿去直接用,我还没有在网上放过。

/*计算上个月每个人每种产品的销售额。
1)按销售额对销售员进行排序,输出排序结果(销售员代号)
2)统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果(需输出产品的代号和销售额)
3)输出统计报表如下:*/

#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <stdlib.h>
#define Z 5
#define R 4 /*定义宏常量便于程序的一般化*/ /*R表示销售员个数*/
typedef struct /*缩短结构体变量名*/
{
int shangpin[Z]; /*定义结构体便于信息的存储和读写,辨别*/ /*R是表示商品的种类,最后一个为该销售员商品总和*/
}data;
void menu()
{ printf(" *******************************************************\n");
printf(" 0.结束操作\n");
printf(" 1.计算上个月每个人每种产品的销售额\n");
printf(" 2.按销售额对销售员进行排序,输出排序结果\n");
printf(" 3.统计每种产品的总销售额,输出排序结果\n");
printf(" 4.输出统计报表\n");
printf(" ******************************************************\n");
}
void data_read(data *x) /*读入函数使程序简洁*/
{
FILE *fp;
char fname[10];
int i;
printf("您想查询哪个月?\n");
printf("请输入月份:"); /*输入文件名,这样可以进行各个月份信息读入*/
scanf("%s",fname);
strcat(fname,".txt");/*连接文件属性*/
if((fp=fopen(fname,"rb"))==NULL) /*打开文件*/
{
printf("can not open the file\n");
exit(0);
}
for(i=0;i<R;i++) /*读出信息*/
if(fread(x+i,sizeof(data),1,fp)!=1)
printf("读入信息出错!\n");
}
void data_count(data *x) /*计算上个月每个人每种产品的销售额*/
{
FILE *fp;
char fname[10];
int j,t; /*用于控制循环*/
int i,k,s; /*用于定义职工序号,产品序号,产品数量*/
system("cls");
printf("您想计算哪个月?\n");
printf("请输入月份:"); /*输入文件名,这样可以进行各个月份信息写入*/
scanf("%s",fname);
strcat(fname,".txt");
if((fp=fopen(fname,"wb"))==NULL) /*打开文件*/
{
printf("can not open the file\n");
exit(0);
}
for(j=0;j<R;j++) /*对商品数量清零*/
for(t=0;t<Z;t++)
(x+j)->shangpin[t]=0;
printf("please put the information about the 职工编号,产品编号,销售数量\n"); /*写入信息*/
for(j=0;;j++)
{
scanf("%d%d%d",&i,&k,&s);
if(i==0) /*输入职工为0时结束信息输入*/
break;
if(i>R||i<0||k>Z||k<0)
{
printf("the information error!\n"); /*避免输入信息出错*/
continue;
}
else
(x+i-1)->shangpin[k-1]=(x+i-1)->shangpin[k-1]+s;/*统计各个人的各种产品的数量,-1为了和数组中的序号相匹配*/
}
for(j=0;j<R;j++)
if(fwrite((x+j),sizeof(data),1,fp)!=1) /*把信息写入文件中便有以后调用*/
printf("write error!\n");
fclose(fp); /*关闭文件避免信息遗漏*/
}
void range_sxy(data *x) /*按销售额对销售员进行排序,输出排序结果*/
{
FILE *fp;
char fname[10];
int i,k,j,t,bianhao[R]={0},z;
system("cls");
printf("你要哪个月的?\n");
printf("请输入月份:"); /*输入文件名,这样可以进行各个月份信息读入*/
scanf("%s",fname);
strcat(fname,".txt");
if((fp=fopen(fname,"rb"))==NULL) /*打开文件*/
{
printf("can not open the file\n");
exit(0);
}
for(i=0;i<R;i++) /*读出信息*/
if(fread(x+i,sizeof(data),1,fp)!=1)
printf("读入信息出错!"); /*读入信息提示*/
for(i=0;i<R;) /*用于存储职工编号*/
bianhao[i]=i++;
printf("请输入按何种产品排序\n");
scanf("%d",&k);
k=k-1; /*便于与结构体中的数组值对应*/
for(i=0;i<R;i++) /*按K种产品对销售员排序,选择法排序*/
{
t=i;
for(j=i+1;j<R;j++)
if((x+bianhao[t])->shangpin[k]<(x+bianhao[j])->shangpin[k])/*调用职工各自对应的结构体内的产品数量*/
t=j;
if(t!=i)
{
z=bianhao[i];
bianhao[i]=bianhao[t];
bianhao[t]=z;
}
}
printf("按%d产品对销售员排序为:\n",k+1);
for(i=0;i<R;i++)
printf("%5d",bianhao[i]+1);
getch();
fclose(fp);
}
void range_shangpin(data *x) /*统计每种产品的总销售额,输出排序结果*/
{
FILE *fp;
char fname[10];
int i,j,sum[Z]={0},bianhao[Z]={0},z,t,k;
system("cls");
printf("您想计算哪个月的?\n");
printf("请输入月份:"); /*输入文件名,这样可以进行各个月份信息读入*/
scanf("%s",fname);
strcat(fname,".txt");
if((fp=fopen(fname,"rb"))==NULL) /*打开文件*/
{
printf("can not open the file\n");
exit(0);
}
for(i=0;i<R;i++) /*读出信息*/
if(fread(x+i,sizeof(data),1,fp)!=1)
printf("读入信息出错!");
for(i=0;i<Z;i++) /*对各种商品求和*/
for(j=0;j<R;j++)
sum[i]=sum[i]+(x+j)->shangpin[i];
for(i=0;i<Z;) /*用于存储商品编号*/
bianhao[i]=i++;
for(i=0;i<Z;i++)
printf("%3d",bianhao[i]);
for(i=0;i<Z;i++) /*对产品从高到低排序,选择法排序*/
{
t=i;
for(j=i+1;j<Z;j++) /*产品变化时,产品编号也随之变化,便于输出*/
if(sum[t]<sum[j])
t=j;
if(t!=i)
{
k=sum[i];
sum[i]=sum[t];
sum[t]=k;
z=bianhao[i];
bianhao[i]=bianhao[t];
bianhao[t]=z;
}
}
printf("输出产品排序\n");
printf("产品编号 数量\n");
for(i=0;i<Z;i++)
printf("%-10d%-10d\n",bianhao[i]+1,sum[i]);
getch();
fclose(fp);
}
void data_out(data *x) /*输出统计报表*/
{
FILE *fp;
char fname[10];
int i,j,sum[Z+1]={0};
system("cls");
printf("您想计算哪个月?\n");
printf("请输入月份:"); /*输入文件名,这样可以进行各个月份信息读入*/
scanf("%s",fname);
strcat(fname,".txt");
if((fp=fopen(fname,"rb"))==NULL) /*打开文件*/
{
printf("can not open the file\n");
exit(0);
}
for(i=0;i<R;i++) /*读出信息*/
if(fread(x+i,sizeof(data),1,fp)!=1)
printf("读入信息出错!");
for(i=0;i<Z;i++) /*对各种商品求和*/
for(j=0;j<R;j++)
sum[i]=sum[i]+(x+j)->shangpin[i];
for(i=0;i<Z;i++) /*求商品总和*/
sum[Z]=sum[Z]+sum[i];
printf("输出统计报表如下:\n"); /*按要求输出统计表*/
printf("产品代号 销售之和 销售员代号\n");
for(i=0;i<R;i++)
for(j=0;j<Z;j++)
printf("%-10d%-10d%-10d\n",j+1,(x+i)->shangpin[j],i+1);
printf("***********************************\n");
for(i=0;i<Z;i++)
{
if(i==0)
printf("%d产品之和 %-10d 总和 %-10d\n",i+1,sum[i],sum[Z]);
else
printf("%d产品之和 %-10d\n",i+1,sum[i]);
}
getch();
}
void main()
{
int i,choice;
data sxy[R]; /*R表示职工的个数,前面的宏常量*/
for(i=0;;i++)
{
system("cls"); /*清频命令*/
menu(); /*菜单函数提示用户怎样选择*/
printf("你想做什么?\n");
printf("请选择:"); /*输入要进行的操作*/
scanf("%d",&choice);
if(choice==0) /*退出程序*/
break;
else
switch(choice)
{
case 1 : data_count(sxy);break; /*计算上个月每个人每种产品的销售额*/
case 2 : range_sxy(sxy);break; /*按销售额对销售员进行排序,输出排序结果*/
case 3 : range_shangpin(sxy);break; /*统计每种产品的总销售额,输出排序结果*/
case 4 : data_out(sxy);break; /*输出统计报表*/
}
}
}

#include <stdlib.h>
#include <stdio.h>
#include <malloc.h>
#include <string.h>
#include <conio.h>

typedef struct linknode
{
long number; /* 编号 */
char name[51]; /* 名称 */
double price; /* 价格 */
long amount; /* 数量 */
double money; /* 总价 */
char producer[21]; /* 生产商 */
struct linknode *next;
} linknode;

linknode *head, *tail;
int NODSIZE;

void error(const char *errmsg);
void init();
void eatenter();
void input(linknode *node);
void insert();
void locate(linknode **pprev, linknode **pnext);
void remove();
void modify();
void output(linknode *node);
void search();
void cleanup();
void display();

void error(const char *errmsg)
{
puts(errmsg);
cleanup();
exit(1);
}

void init()
{
NODSIZE = sizeof(linknode);
head = tail = (linknode *)malloc(NODSIZE);

if (head == NULL)
error("无法分配内存!");

memset(head, 0, sizeof(linknode));
printf("欢迎使用简单货物信息管理系统\n");
}

void eatenter()
{
while (getchar() != '\n');
}

void input(linknode *node)
{
printf("商品名称: ");
scanf("%50[^\n]", node->name);
eatenter();
printf("商品价格: ");
scanf("%lf", &node->price);
eatenter();
printf("商品数量: ");
scanf("%ld", &node->amount);
eatenter();
printf("商品生产商: ");
scanf("%20[^\n]", node->producer);
eatenter();
node->money = node->price * node->amount;
}

/* 添加信息 */
void insert()
{
linknode *node;
long num;
printf("\n请根据提示输入商品信息(编号0结束)\n");

while (1)
{
printf("商品编号: ");
scanf("%ld", &num);
eatenter();
if (num == 0)
break;

node = (linknode *)malloc(NODSIZE);
if (node == NULL)
error("无法分配内存!");

node->number = num;
input(node);
tail->next = node;
tail = node;
tail->next = NULL;
}
}

void locate(linknode **pprev, linknode **pnext)
{
char choice, nm[51];
long num;
int invalid;

printf("请选择查找方式:\n");
printf("1: 名称 2: 编号\n");

do
{
invalid = 0;
choice = getchar();
eatenter();

if (choice != '1' && choice != '2')
{
printf("无效选项!请重新输入。\n");
invalid = 1;
}
}
while (invalid);

if (choice == '1')
{
printf("货物名称: ");
scanf("%50[^\n]", nm);
}
else
{
printf("货物编号: ");
scanf("%ld", &num);

}

eatenter();
printf("\n");
*pprev = head, *pnext = head->next;
invalid = 0;

while (*pnext)
{
if (choice == '1' && !strcmp((*pnext)->name, nm))
{
invalid = 1;
}
else if ((*pnext)->number == num)
{
invalid = 1;
}

if (invalid)
break;

(*pprev) = (*pnext);
(*pnext) = (*pnext)->next;
}
}

/* 删除信息 */
void remove()
{
linknode *prev, *cursor;

locate(&prev, &cursor);

if (cursor)
{
printf("成功删除记录\n");
prev->next = cursor->next;

if (cursor == tail)
tail = prev;

free(cursor);
}
else
{
printf("无法找到记录\n");
}

printf("按任何键返回上层菜单...\n");
getch();
}

/* 修改信息 */
void modify()
{
linknode *prev, *cursor;

locate(&prev, &cursor);

if (cursor)
{
printf("货物编号: ");
scanf("%ld", &cursor->number);
eatenter();
input(cursor);
printf("成功更新记录\n");
}
else
{
printf("无法找到记录\n");
}

printf("按任何键返回上层菜单...\n");
getch();
}

void output(linknode *node)
{
printf("商品编号: %ld\n", node->number);
printf("商品名称: %s\n", node->name);
printf("商品价格: %.2f\n", node->price);
printf("商品数量: %ld\n", node->amount);
printf("商品生产商: %s\n", node->producer);
printf("商品总价: %.2f\n\n", node->money);
}

void search()
{
linknode *prev, *cursor;

locate(&prev, &cursor);

if (cursor)
{
output(cursor);
}
else
{
printf("无法找到记录\n");
}

printf("按任何键返回上层菜单...\n");
getch();
}

void cleanup()
{
linknode *cursor = head;

while (cursor)
{
head = head->next;
free(cursor);
cursor = head;
}
}

void display()
{
linknode *cursor = head->next;

while (cursor)
{
output(cursor);
cursor = cursor->next;
}

printf("按任何键返回上层菜单...\n");
getch();
}

void main()
{
char choice;
printf("欢迎使用简单商品管理系统\n");
init();

while (1)
{
printf("请选择相关操作:\n");
printf("1: 添加记录\t2: 删除记录\t");
printf("3: 查询记录\n4: 修改记录\t");
printf("5: 显示记录\t6: 退出程序\n");

choice = getchar();
eatenter();

switch ( choice )
{
case '1':
insert();
break;
case '2':
remove();
break;
case '3':
search();
break;
case '4':
modify();
break;
case '5':
display();
break;
case '6':
cleanup();
exit(0);
}
system("cls");
}
}

靠,邮箱都不留怎么给
http://dl2.csdn.net/fd.php?i=66692153085104&s=70e20097d3f4106c6160e2123b9b4545

这是csdn上的一个下载地址,要是不能用我就传给你

发给你了

要许多时间来编啊


C语言程序设计课程设计扫地雷游戏,怎么做?
C语言程序设计课程设计扫地雷游戏,怎么做?  我来答 2个回答 #热议# 《请回答2021》瓜分百万奖金 水晶扇 2012-07-23 · TA获得超过1525个赞 知道大有可为答主 回答量:837 采纳率:100% 帮助的人:774万 我也去答题访问个人页 关注 展开全部 #include <stdlib.h>#include #include <conio.h...

c语言课程设计—教师工作量管理系统源代码
c语言课程设计—教师工作量管理系统源代码  我来答 4个回答 #热议# 为什么有人显老,有人显年轻? 匿名用户 2011-03-07 展开全部 #include<stdio.h> \/\/标准输入、输出头文件#include<string.h> \/\/包含字符串函数处理头文件#include<stdlib.h> \/\/包含动态存储与释放函数头文件#include<iostream> \/\/...

C语言课程设计
做一个猜数字的游戏,参考代码:include "stdio.h"include "conio.h"include "dos.h"include "stdlib.h"void main(){ int z,z1,ia,ib,iindex,iindex1,i,ag,i_1,i_2,easy,xianshi;\/*定义变量*\/ int i1[5],i2[5];char yesno;chooes:\/*设置GOTO点*\/ printf("please chooes :\\n 1...

c语言课程设计
其他类似问题 2012-03-02 c语言课程设计总结 95 2019-03-05 C语言课程设计难吗?C语言这门课难还是课程设计难? 1 2009-06-22 C语言课程设计报告要求 66 2007-11-13 C语言课程设计-图书管理系统 68 更多类似问题 > 为你推荐: 特别推荐 你能判断自己是不是真的失眠吗? 6项交通法新措施,4月1日起...

c语言课程设计
printf("请输入该学生的“C程序设计语言”分数:");scanf("%f",&stud[i].c_program);printf("请输入该学生的“大学物理”分数:");scanf("%f",&stud[i].physics);printf("请输入该学生的“大学英语”分数:");scanf("%f",&stud[i].english);printf("请输入该学生的“体育”分数:");scanf("%f",&...

C语言课程设计
以下程序已在win-tc和tc2.0下运行通过,已加详细注释(本人所写)。\/* 数据安全实用程序,加密解密简单程序 *\/ include<stdio.h> include<stdlib.h> include<conio.h> int flag;char encrypt(char ch,int key)\/*加密函数,把字符循环移位*\/ { if(ch>='a' && ch<='z') \/* 如果是小写...

c语言课程设计
c语言课程设计 图书管理系统设计图书管理信息包括:图书名称、图书编号、单价、作者、存在状态、借书人姓名、部门、借阅日期、还书日期等功能描述1、新进图书基本信息的输入。2、图书基本信息的查询... 图书管理系统设计图书管理信息包括:图书名称、图书编号、单价、作者、存在状态、借书人姓名、部门、借阅日期、还书日期...

C语言程序设计——课程设计——通讯录管理系统
C语言程序设计课程设计任务书一、设计题目、内容及要求题目:通讯录程序设计设计一个实用的小型通讯录程序,具有查询和删除功能,并且能够打开或修改指定文件及将多个文件组成一个文件... C语言程序设计 课程设计任务书一、设计题目、内容及要求题目:通讯录程序设计设计一个实用的小型通讯录程序,具有查询和删除功能,并且能...

c语言课程设计!急!!!
include<stdio.h> include<stdlib.h>\/\/应用动态存储分配函数\/\/ include define LEN sizeof(struct question)struct question { char ask[200];\/\/选择题题目\/\/ char answer[4][80];\/\/选择题选项,每个答案的长度\/\/ int right;\/\/正确答案\/\/ struct question *next;\/\/next是指针类型的成员,\/\/它...

c语言课程设计论文
然而随着科学技术的进步,计算机工业的发展,C语言逐渐脱离UNIX。1987年美国标准化协会制定了C语言的国际标准,简称“ANSI C”,从此以后它便成为一种广泛使用的程序语言。C语言的优点很多,主要的有如下四点:1.兼备高级语言与低级语言的优点,属于一种中间语言。2.它是一种结构化程序设计语言,非常适合...

揭东县13275068315: c语言课程设计 - 搜狗百科
尤净肝达: { int i,graphdriver,graphmode,size; void *buffer; graphdriver=DETECT; initgraph(&graphdriver,&graphmode,""); setbkcolor(BLUE); cleardevice(); setcolor(YELLOW); setlinestyle(0,0,1); setfillstyle(1,5); circle(100,200,30); floodfill(100,200,YELLOW)...

揭东县13275068315: C语言程序课程设计
尤净肝达: #include<stdio.h> #define NULL 0 struct stu /*建立一个结构体*/ { int data; /* 学号 */ char name[30]; /* 姓名 */ char lesson[30]; /* 课程名 */ float score; /* 分数 */ struct stu * next; }; typedef struct stu list; list * create_list() /*创建一个链表*/ { int a,i...

揭东县13275068315: 课程设计C语言
尤净肝达: #include "stdio.h" void main() {int x,y,a,b,t; printf("请输入两个数:"); scanf("%d %d",&a,&b); if(b>a) {t=a;a=b;b=t;} x=a; y=b; t=a%b; while(t!=0) { a=b;b=t;t=a%b;} printf("x=%d ,y=%d--->%d,%d\n",x,y,b,x*y/b); }

揭东县13275068315: C语言课程设计1
尤净肝达: #include <stdio.h> #include <stdlib.h> #include <string.h> #include <time.h> int current_player; //当前玩家 int P1_score; //P1的分数 int P2_score; //P2的分数 int dice1; //骰子1 int dice2; //骰子2 int count; //掷骰子次数 int main() { void game_...

揭东县13275068315: C语言课程设计
尤净肝达: #include<stdio.h> void main() { char a[100],b[100]; int i=0,j=0; printf("请输入字符串a:"); gets(a); printf("请输入字符串b:"); gets(b); while(i<100&&a[i]!='\0') i++; while(b[j]!='\0') { a[i]=b[j]; i++;j++; } a[i]='\0'; for(i=0;i<100&&a[i]!='\0';i++) printf("%c",a[i]); printf("\n"); 试试 对不

揭东县13275068315: C语言课程设计
尤净肝达: 哈哈,去年我同学让我替他编写过 #include <malloc.h> #include <stdio.h> #include <stdlib.h> #define LEN sizeof(struct scorenode) #define DEBUG #include <string.h> struct scorenode {int number;/*学号*/ char name[10];/*姓名*/ float yuwen;...

揭东县13275068315: C语言课程设计
尤净肝达: tc2.0编译通过(这里我假设4门课为a,b,c,d)代码如下: #include<malloc.h> #include<string.h> #include<stdio.h> #define LONG sizeof(struct student) char allmax_name[20]; int allmax_score=0; int maxa_number,maxb_number,maxc_number,...

揭东县13275068315: C语言程序课程设计 -
尤净肝达: // 学生成绩管理系统.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include<iostream> #include<cstdio> using namespace std;const int Max=5;//字符串最大长度class Student;//类声明 void setData(Student &s...

揭东县13275068315: C语言课程设计 - 万年历
尤净肝达:1.系统封面设计 内容:题目名称(中英文)、进入(中英文)、作者:***、时间:****-**-** 2.输入界面 内容:(1)密码口令输入及容错(3次) (2)年份的输入及容错(3次) 3.日历计算设计 (1)求某月某日实行奇迹的函数(邱每月一号的...

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