久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

校級(jí)運(yùn)動(dòng)會(huì)管理系統(tǒng)c語(yǔ)言程序5篇

時(shí)間:2019-05-13 02:51:17下載本文作者:會(huì)員上傳
簡(jiǎn)介:寫寫幫文庫(kù)小編為你整理了多篇相關(guān)的《校級(jí)運(yùn)動(dòng)會(huì)管理系統(tǒng)c語(yǔ)言程序》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫(kù)還可以找到更多《校級(jí)運(yùn)動(dòng)會(huì)管理系統(tǒng)c語(yǔ)言程序》。

第一篇:校級(jí)運(yùn)動(dòng)會(huì)管理系統(tǒng)c語(yǔ)言程序

#include #include #include #include

#define SIZE 9 #define N

#define WM

void bsxm();

//比賽項(xiàng)目 void csxx();

//參賽學(xué)校 void ttzf();

//團(tuán)體總分 void Information();void main();void menu();void printf_back();void saveathlete();void saveprogram();void saveschool();void savescore();void Search();

int i;FILE *fp1,*fp2,*fp3,*fp4;

struct athlete

//定義運(yùn)動(dòng)員信息 { char univ[5];char name[8];char prog[15];

char mingci[5];int score;} at[SIZE];

struct xuexiao

//定義學(xué)校信息 { char univ[5];char prog[15];int num_athlete;} xx[N];

struct program { char prog[5];int quming;

char ath1[5];char ath2[5];char univ1[5];char univ2[5];} pro[WM];

//定義項(xiàng)目信息

struct zongfen

//定義學(xué)校得分信息 { char univ[5];char prog1[5];char prog2[5];char prog3[5];int score1;int score2;int score3;int total_score;} zf[N];

void Information()//進(jìn)入信息錄入系統(tǒng)選擇系統(tǒng)子函數(shù) {

int n,w;

do

{

puts(“nnn”);

puts(“tt***^__^

Welcome to load 信息錄入 system!

^__^***n”);

puts(“tt*************************MENU*************************n”);

puts(“tt******** 1.saveathlete

**************n”);//運(yùn)動(dòng)員姓名錄入

puts(“tt******** 2.saveschool

**************n”);//運(yùn)動(dòng)員學(xué)校錄入

puts(“tt******** 3.saveprogram()

**************n”);//參加項(xiàng)目錄入

puts(“tt******** 4.back

**************n”);//退出

puts(“tt******************************************************n”);

printf(“Choic your number(1-4):[ ]bb”);

scanf(“%d”,&n);

if(n<1||n>4)

{

w=1;

printf(“nntt----------------------DATAERROR!----------------------nnn”);

getchar();

}

else w=0;

}

while(w==1);

switch(n)

{

case 1 : saveathlete();break;// 保存運(yùn)動(dòng)員信息子函數(shù)

case 2 : saveschool();break;//保存學(xué)校信息子函數(shù)

case 3 : saveprogram();break;//保存項(xiàng)目比賽信息子函數(shù)

case 4 : exit(0);

} }

void saveathlete(){ //保存運(yùn)動(dòng)員信息子函數(shù)

printf(“n請(qǐng)輸入各項(xiàng)目獲獎(jiǎng)運(yùn)動(dòng)員的信息:”);

for(i=0;i

printf(“n請(qǐng)輸入第%d個(gè)運(yùn)動(dòng)員的信息:n”,i+1);

printf(“姓名:”);

scanf(“%s”,at[i].name);

printf(“學(xué)校:”);

scanf(“%s”,at[i].univ);

printf(“參賽項(xiàng)目:”);

scanf(“%s”,at[i].prog);printf(“名次:”);scanf(“%s”,at[i].mingci);

printf(“得分:”);

scanf(“%d”,&at[i].score);

} fp1=fopen(“ath”,“w”);

for(i=0;i

printf(“File write error!n”);}

fclose(fp1);fp1=fopen(“ath”,“r”);

printf(“n現(xiàn)在各運(yùn)動(dòng)員的信息如下:nn”);

printf(“姓名

學(xué)校

項(xiàng)目

名次

得分n”);for(i=0;i

fread(&at[i],sizeof(struct athlete),1,fp1);

printf(“%-10s%-10s%-18s%-10s%dn”,at[i].name,at[i].univ,at[i].prog,at[i].mingci,at[i].score);} fclose(fp1);printf_back();}

void saveschool()//保存學(xué)校信息子函數(shù) { printf(“n請(qǐng)輸入各參賽學(xué)校的信息:”);

for(i=0;i

printf(“n請(qǐng)輸入第%d個(gè)學(xué)校的信息:n”,i+1);

printf(“學(xué)校:”);

scanf(“%s”,xx[i].univ);

printf(“參賽的項(xiàng)目:”);

scanf(“%s”,xx[i].prog);

printf(“參賽者數(shù):”);

scanf(“%d”,&xx[i].num_athlete);}

fp3=fopen(“xxiao”,“w”);for(i=0;i

if(fwrite(&xx[i],sizeof(struct xuexiao),1,fp3)!=1)

printf(“File write error!n”);} fclose(fp3);

printf_back();}

void saveprogram()//保存項(xiàng)目比賽信息子函數(shù) { printf(“n請(qǐng)輸入關(guān)于比賽項(xiàng)目的信息:”);

for(i=0;i

printf(“n請(qǐng)輸入第%d項(xiàng)比賽的信息:n”,i+1);printf(“項(xiàng)目:”);scanf(“%s”,pro[i].prog);printf(“取分情況:”);scanf(“%d”,&pro[i].quming);printf(“參賽者1:”);scanf(“%s”,pro[i].ath1);printf(“所屬學(xué)校:”);scanf(“%s”,pro[i].univ1);printf(“參賽者2:”);scanf(“%s”,pro[i].ath2);

printf(“所屬學(xué)校:”);

scanf(“%s”,pro[i].univ2);}

fp4=fopen(“pr”,“w”);for(i=0;i

if(fwrite(&pro[i],sizeof(struct program),1,fp4)!=1)

printf(“File write error!n”);} fclose(fp4);

printf_back();}

void savescore()//保存學(xué)校得分情況子函數(shù) { printf(“N-參賽學(xué)校總數(shù),M-男子競(jìng)賽項(xiàng)目數(shù),W-女子競(jìng)賽項(xiàng)目數(shù)。n”);printf(“W.100-女子一百米比賽,M.100-男子一百米,M.200-男子兩百米。n”);printf(“n各項(xiàng)名次得分權(quán)值如下:n”);printf(“取前三名:第一名5分

第二名3分

第三名2分n”);

printf(“n請(qǐng)輸入各學(xué)校的得分情況:”);

for(i=0;i

printf(“n請(qǐng)輸入第%d個(gè)學(xué)校的得分情況:n”,i+1);

printf(“學(xué)校:”);scanf(“%s”,zf[i].univ);

printf(“參賽項(xiàng)目1:”);scanf(“%s”,zf[i].prog1);printf(“得分:”);scanf(“%d”,&zf[i].score1);printf(“參賽項(xiàng)目2:”);scanf(“%s”,zf[i].prog2);printf(“得分:”);scanf(“%d”,&zf[i].score2);

printf(“參賽項(xiàng)目3:”);scanf(“%s”,zf[i].prog3);

printf(“得分:”);

scanf(“%d”,&zf[i].score3);

zf[i].total_score=zf[i].score1+zf[i].score2+zf[i].score3;}

fp2=fopen(“zfen”,“w”);for(i=0;i

if(fwrite(&zf[i],sizeof(struct zongfen),1,fp2)!=1)

printf(“File write error!n”);} fclose(fp2);

printf_back();}

void Search()//進(jìn)入查詢系統(tǒng)子函數(shù) { int n,w2;do

{

puts(“tt***^__^

Welcome to load search system!

^__^***n”);

puts(“tt*************************MENU*************************n”);

puts(“tt******** 1.search ttzf **************n”);//查看團(tuán)體總分

puts(“tt******** 2.search csxx **************n”);//查看參賽學(xué)校信息!

puts(“tt******** 3.search bsxm **************n”);//查看比賽項(xiàng)目信息!

puts(“tt******** 4.Exit

**************n”);//退出

puts(“tt***************************************n”);

printf(“Choose your number(1-4):[ ]bb”);

scanf(“%d”,&n);

if(n<1||n>4)

{

w2=1;

printf(“nntt----------------------DATAERROR!----------------------nnn”);

getchar();

}

else w2=0;} while(w2==1);switch(n){ case 1: ttzf();break;case 2: csxx();break;case 3: bsxm();break;case 4: exit(0);break;default: printf(“未進(jìn)行任何操作!”);}

}

void ttzf()//查看學(xué)校團(tuán)體總分子函數(shù) { fp2=fopen(“zfen”,“r”);

printf(“n各學(xué)校的團(tuán)體總分情況如下:nn”);

printf(“學(xué)校

參賽項(xiàng)目

總分n”);for(i=0;i

fread(&zf[i],sizeof(struct zongfen),1,fp2);

printf(“%-8s%s,%s,%-12s%-12dn”,zf[i].univ,zf[i].prog1,zf[i].prog2,zf[i].prog3,zf[i].total_score);} fclose(fp2);printf_back();}

void csxx()//查看參賽學(xué)校信息子函數(shù) {

fp3=fopen(“xxiao”,“r”);

printf(“n各參賽學(xué)校的情況如下:nn”);

printf(“學(xué)校

參賽項(xiàng)目

參賽者數(shù)n”);for(i=0;i

fread(&xx[i],sizeof(struct xuexiao),1,fp3);

printf(“%-8s%-20s%-12dn”,xx[i].univ,xx[i].prog,xx[i].num_athlete);} fclose(fp3);

printf_back();}

void bsxm()//查看比賽項(xiàng)目子函數(shù) {

fp4=fopen(“pr”,“r”);

printf(“n各比賽項(xiàng)目的信息如下:nn”);

printf(“項(xiàng)目

取分情況

參賽者1 所屬學(xué)校

參賽者2 所屬學(xué)校n”);for(i=0;i

fread(&pro[i],sizeof(struct program),1,fp4);

printf(“%-12s%-10d%-10s%-12s%-10s%-12sn”,pro[i].prog,pro[i].quming,pro[i].ath1,pro[i].univ1,pro[i].ath2,pro[i].univ2);} fclose(fp4);printf_back();}

void main(){ menu();

}

void menu()//主菜單程序 { int n,w1;do {

puts(“tt***^__^

Welcome to load sports system!

^__^***n”);

puts(“tt*************************MENU*************************n”);

puts(“tt******** 1.Enter the information

**************n”);//進(jìn)入信息錄入

puts(“tt******** 2.Score

**************n”);//進(jìn)入比賽結(jié)果錄入

puts(“tt******** 3.Search

**************n”);//進(jìn)入查詢功能

puts(“tt******** 4.Exit

**************n”);//退出

puts(“tt******************************************************n”);

printf(“Choose your number(1-4):[ ]bb”);

scanf(“%d”,&n);

if(n<1||n>4)

{

w1=1;

printf(“nntt----------------------DATAERROR!----------------------nnn”);

getchar();

}

else w1=0;} while(w1==1);

switch(n)

{

case 1:Information();break;//輸入信息

case 2:savescore();break;//比賽結(jié)果錄入

case 3:Search();break;//查詢模塊

case 4:exit(0);

}

}

//公共函數(shù)

void printf_back(){ int w;printf(“nntSUCCESSFUL!nn”);printf(“What do you want to do next?nnt1).exit t2).menu:[ ]bb”);scanf(“%d”,&w);if(w==1)exit(0);else menu();}

第二篇:校運(yùn)動(dòng)會(huì)管理系統(tǒng)報(bào)告C語(yǔ)言(含完整代碼)

目錄 陳

一、程序分析與設(shè)計(jì).......................................................................................................................2

二、流程圖.......................................................................................................................................4

三、源程序清單...............................................................................................................................4

四、調(diào)試過(guò)程.................................................................................................................................15

五、程序有待改進(jìn)的地方.............................................................................................................19

六、本次實(shí)習(xí)的收獲和建議.........................................................................................................19 附錄.................................................................................................................錯(cuò)誤!未定義書簽。

一、程序分析與設(shè)計(jì)

(標(biāo)題四號(hào)宋體加黑,正文五號(hào)宋體,行間距-固定值18,首行縮進(jìn)2字符)

1.題目描述

初始化輸入:N-參賽院系總數(shù),M-男子競(jìng)賽項(xiàng)目數(shù),W-女子競(jìng)賽項(xiàng)目數(shù);即要求輸入一些基礎(chǔ)數(shù)據(jù),如院系名稱,每個(gè)院系參賽選手及選手編號(hào)。競(jìng)賽項(xiàng)目名稱與代號(hào)。這些數(shù)據(jù)存儲(chǔ)在文本文件中,不需要每次都單條錄入。各項(xiàng)目名次取法有如下幾種:

取前4名:第1名得分6,第2名得分4,第3名得分2,第4名得分1; 由程序提醒用戶填寫比賽結(jié)果,輸入各項(xiàng)目獲獎(jiǎng)運(yùn)動(dòng)員的信息。

所有信息記錄完畢后,用戶可以查詢各個(gè)院系或個(gè)人的比賽成績(jī),生成團(tuán)體總分報(bào)表,查看參賽院系信息、獲獎(jiǎng)運(yùn)動(dòng)員、比賽項(xiàng)目信息等。2.需求分析

根據(jù)題目要求應(yīng)提供鍵盤式菜單實(shí)現(xiàn)功能選擇,還應(yīng)提供信息的輸入操作,由于在程序中提供查詢功能所以應(yīng)有顯示、查找等操作。3.總體設(shè)計(jì)

根據(jù)上面的需求分析,可以將這個(gè)系統(tǒng)的設(shè)計(jì)分為

1、信息輸入模塊

2、比賽結(jié)果錄入模塊

3、查詢模塊。具體校際運(yùn)動(dòng)會(huì)管理系統(tǒng)分為 信息的輸入、結(jié)果的輸入、學(xué)校各個(gè)項(xiàng)目的得分的查尋、總體報(bào)表的生成。4.詳細(xì)設(shè)計(jì)(1)主函數(shù)

主函數(shù)一般設(shè)計(jì)的比較簡(jiǎn)潔,只提供輸入,處理和輸出部分的函數(shù)調(diào)用。其中功能模塊用菜單方式選擇。(2)密碼登陸函數(shù)

首先進(jìn)入歡迎界面,提示用戶輸入密碼進(jìn)入系統(tǒng),密碼輸入次數(shù)限制為三次,三次輸入錯(cuò)誤則退出系統(tǒng),登陸成功顯示菜單欄(3)菜單函數(shù)

提醒用戶根據(jù)要求選擇功能,以及多次功能選取(4)輸入函數(shù)

進(jìn)入該功能后提醒用戶輸入相應(yīng)信息,即數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)結(jié)構(gòu)采用結(jié)構(gòu)體的形式,選手結(jié)構(gòu)體成員包括選手的姓名、編號(hào)、各項(xiàng)目的成績(jī)排名、選手所在學(xué)院等。(5)查找函數(shù)

提醒用戶輸入運(yùn)動(dòng)員的姓名或編號(hào),根據(jù)姓名或編號(hào)逐一比對(duì)信息,若條件滿足則輸出該選手的數(shù)據(jù),若不滿足則返回‘你要找的運(yùn)動(dòng)員未找到’(6)排序函數(shù)

根據(jù)運(yùn)動(dòng)員的百米成績(jī)進(jìn)行冒泡排序,并輸出結(jié)果(7)修改函數(shù)

提醒用戶輸入運(yùn)動(dòng)員的姓名,根據(jù)姓名逐一比對(duì)信息,若找到則提供修改選項(xiàng),對(duì)數(shù)據(jù)進(jìn)行覆蓋(8)得分計(jì)算函數(shù)

根據(jù)用戶輸入各項(xiàng)成績(jī)排名,進(jìn)行得分運(yùn)算 并得出學(xué)院排名(9)刪除函數(shù) 用于輸入信息的刪除(10)插入函數(shù) 用于輸入新的信息(11)保存函數(shù)

將用戶輸入的信息保存到文本文件中(12)顯示函數(shù) 顯示用戶保存的信息

二、流程圖

三、源程序清單

(此部分采用小五號(hào)宋體,行間距-固定值14)#include #include #include #include #include #define load sizeof(student)#define N 7 void read();void save();

int size=3;struct student {

void input()//輸入原始數(shù)據(jù)// {

} void find()//查找函數(shù)// {

system(“cls”);printf(“t************查找界面************n”);char fs[20];read();printf(“輸入你要查找運(yùn)動(dòng)員的號(hào)碼或姓名:”);scanf(“%s”,&fs);for(int i=0;i

printf(“%st%st%dt%dt%dt%dt%sn”,stu[i].num,stu[i].name,stu[i].scorem,stu[i].scor

} else if(strcmp(stu[i].name,fs)==0){ printf(“你要找的運(yùn)動(dòng)員已找到:n”);break;if(strcmp(stu[i].num,fs)==0){ printf(“你要找的運(yùn)動(dòng)員已找到:n”);printf(“該生的號(hào)碼,姓名,100米成績(jī),鉛球成績(jī),跳高成績(jī),跳遠(yuǎn)成績(jī),系名:n”);printf(“%st%st%dt%dt%dt%dt%sn”,stu[i].num,stu[i].name,stu[i].scorem,stu[i].scoreq,stu[i].scoreg,stu[i].scorey,stu[i].ximing);scanf(“%s%s%d%d%d%d%s”,&stu[i].num,&stu[i].name,&stu[i].scorem,&stu[i].scoreq,&stu[i].printf(“輸出運(yùn)動(dòng)員號(hào)碼,姓名,100成績(jī),鉛球成績(jī),跳高成績(jī),跳遠(yuǎn)成績(jī),系名:n”);for(i=0;i

} printf(“該生的號(hào)碼,姓名,100米成績(jī),鉛球成績(jī),跳高成績(jī),跳遠(yuǎn)成績(jī),系名:n”);printf(“%st%st%dt%dt%dt%dt%sn”,stu[i].num,stu[i].name,stu[i].scorem,stu[i].scor

} } else {

} printf(“你要找的運(yùn)動(dòng)員未找到:n”);printf(“該運(yùn)動(dòng)員缺賽或不存在!”);break;break;eq,stu[i].scoreg,stu[i].scorey,stu[i].ximing);void paixu()//排序函數(shù)// {

} void xiugai()//修改函數(shù)// {

printf(“%st%st%dt%dt%dt%dt%sn”,stu[i].num,stu[i].name,stu[i].scorem,stu[i].scorsystem(“cls”);printf(“t************修改界面************n”);char ch2[20],c;char num[10],name[20];int scorem,scoreq,scoreg,scorey,i;char ximing[20];printf(“原始數(shù)據(jù):n”);/*for(int i=0;i

system(“cls”);printf(“t************排序界面************n”);printf(“對(duì)一百米的成績(jī)排序:n”);for(int i=0;i

} printf(“排序后:n”);for(i=0;i

} if(stu[i].scorem

} temp=stu[i];stu[i]=stu[j];stu[j]=temp;

eq,stu[i].scoreg,stu[i].scorey,stu[i].ximing);*/

read();printf(“輸入你要修改運(yùn)動(dòng)員的姓名:”);scanf(“%s”,ch2);for(i=0;i

if(strcmp(stu[i].name,ch2)==0){ printf(“1.修改號(hào)碼n2.修改姓名n3.修改100米成績(jī)n4.修改鉛球成績(jī)n5.修改跳高成績(jī)n6.修改跳遠(yuǎn)成績(jī)n7.修改系名n”);

scanf(“%d”,&c);switch(c){ case 1: { printf(“請(qǐng)輸入你修改的運(yùn)動(dòng)員號(hào)碼:”);scanf(“%s”,&num);strcpy(stu[i].num,num);break;} case 2: { printf(“輸入你修改的運(yùn)動(dòng)員姓名:n”);scanf(“%s”,&name);strcpy(stu[i].name,name);break;} case 3: { printf(“輸入你修改的運(yùn)動(dòng)員100米成績(jī):”);scanf(“%d”,&scorem);stu[i].scorem=scorem;break;} case 4: { printf(“輸入你修改運(yùn)動(dòng)員鉛球成績(jī):”);scanf(“%d”,&scoreq);stu[i].scoreq=scoreq;break;} case 5: { printf(“輸入你修改運(yùn)動(dòng)員跳高成績(jī):”);scanf(“%d”,&scoreg);stu[i].scoreq=scoreq;break;} case 6: {

}

} printf(“輸入你修改運(yùn)動(dòng)員跳遠(yuǎn)成績(jī):”);scanf(“%d”,&scorey);stu[i].scorey=scorey;break;case 7: {

} default: } printf(“修改后的運(yùn)動(dòng)員數(shù)據(jù):n”);for(int i=0;i

if(stu[i].scoreq==1)y=3;else if(stu[i].scoreq==2)y=2;else if(stu[i].scoreq==3)y=1;else y=0;printf(“%st%st%dt%dt%dt%dt%sn”,stu[i].num,stu[i].name,stu[i].scorem,stu[i].scorread();printf(“各系的得分總分排序:n”);for(i=0;i

if(stu[i].scorem==1)x=3;else if(stu[i].scorem==2)x=2;else if(stu[i].scorem==3)x=1;else x=0;eq,stu[i].scoreg,stu[i].scorey,stu[i].ximing);*/ system(“cls”);printf(“t************得分界面************n”);int x,y,z,w,o,p,q,i;char ch1[20]=“ruanjian”,ch2[20]=“shumei”,ch3[20]=“guangdian”;printf(“原始數(shù)據(jù):n”);/*for(int i=0;i

}

} if(stu[i].scoreg==1)z=3;else if(stu[i].scoreg==2)z=2;else if(stu[i].scoreg==3)z=1;else z=0;if(stu[i].scorey==1)w=3;else if(stu[i].scorey==2)w=2;else if(stu[i].scorey==3)w=1;else w=0;for(i=0;i

} if(strcmp(stu[i].ximing,ch1)==0){

} else if(strcmp(stu[i].ximing,ch2)==0){

} else if(strcmp(stu[i].ximing,ch3)==0){

} q=x+y+z+w;printf(“光電系總得分:%dn”,q);

p=x+y+z+w;printf(“數(shù)媒系總得分:%dn”,p);o=x+y+z+w;printf(“軟件系總得分:%dn”,o);void shancchu()//刪除函數(shù)// {

printf(“%st%st%dt%dt%dt%dt%sn”,stu[i].num,stu[i].name,stu[i].scorem,stu[i].scorread();printf(“輸入你要?jiǎng)h除的運(yùn)動(dòng)員的姓名:n”);scanf(“%s”,&ch1);for(i=0;i

if(strcmp(stu[i].name,ch1)==0){ for(int j=i;j

} {

} } stu[j]=stu[j+1];printf(“刪除后的運(yùn)動(dòng)員數(shù)據(jù):n”);for(i=0;i

void charu()//插入函數(shù)

system(“cls”);int a;printf(“t************插入界面************n”);printf(“請(qǐng)輸入要插入的運(yùn)動(dòng)員個(gè)數(shù):”);scanf(“%d”,&a);for(int j=0;j

} printf(“輸入要插入的運(yùn)動(dòng)員數(shù)據(jù):n”);printf(“號(hào)碼:”);scanf(“%s”,&stu[size].num);printf(“姓名:”);scanf(“%s”,&stu[size].name);printf(“100米成績(jī):”);scanf(“%d”,&stu[size].scorem);printf(“鉛球成績(jī):”);scanf(“%d”,&stu[size].scoreq);printf(“跳高成績(jī):”);scanf(“%d”,&stu[size].scoreg);printf(“跳遠(yuǎn)成績(jī):”);scanf(“%d”,&stu[size].scorey);printf(“系名:”);scanf(“%s”,&stu[size].ximing);for(int i=0;i

for(int j=i+1;j

if(stu[i].scorem

} temp=stu[i];stu[i]=stu[j];stu[j]=temp;size++;printf(“插入后運(yùn)動(dòng)員數(shù)據(jù):n”);for(int i=0;i

} void save(){

} void read(){

} printf(“%st%st%dt%dt%dt%dt%sn”,stu[i].num,stu[i].name,stu[i].scorem,stu[i].scor} fclose(fp);

//關(guān)閉文件 eq,stu[i].scoreg,stu[i].scorey,stu[i].ximing);fscanf(fp,“%st%st%dt%dt%dt%dt%sn”,&stu[i].num,&stu[i].name,&stu[i].scorem,&stu[i].scoreq,&stu[i].scoreg,&stu[i].scorey,&stu[i].ximing);for(int i=0;i

if((fp=fopen(“e:xiao.txt”,“r”))==NULL){

} fscanf(fp,“運(yùn)動(dòng)員號(hào)碼,姓名,100成績(jī),鉛球成績(jī),跳高成績(jī),跳遠(yuǎn)成績(jī),系名:n”);printf(“打不開(kāi)文件Cannot open the filen”);return;

//若打不開(kāi)則返回菜單

//為輸出打開(kāi)一個(gè)二進(jìn)制文件,為只fprintf(fp,“%st%st%dt%dt%dt%dt%sn”,stu[i].num,stu[i].name,stu[i].scorem,stu[i].fclose(fp);

//關(guān)閉文件 scoreq,stu[i].scoreg,stu[i].scorey,stu[i].ximing);printf(“保存成功....Save the file successfully!n”);FILE *fp;

//定義指向文件的指針

//char outfile[20];//printf(“輸出文件例如:c:score Enter outfile name,for example c:scoren”);//scanf(“%s”,outfile);if((fp=fopen(“e:xiao.txt”,“w”))==NULL){

} printf(“n保存中...Saving the file......n”);//fprintf(fp,“運(yùn)動(dòng)員號(hào)碼,姓名,100成績(jī),鉛球成績(jī),跳高成績(jī),跳遠(yuǎn)成績(jī),系名:n”);for(int i=0;i

//若打不開(kāi)則返回菜單

//為輸出打開(kāi)一個(gè)二進(jìn)制文件,為只

//保存數(shù)據(jù)到文件函數(shù) printf(“%st%st%dt%dt%dt%dt%sn”,stu[i].num,stu[i].name,stu[i].scorem,stu[i].scorsave();eq,stu[i].scoreg,stu[i].scorey,stu[i].ximing);寫方式

寫方式 int login(char password[]){

//密碼校對(duì)函數(shù)*********** static char key[10]=“12345”;if(strcmp(password,key)==0)return 1;else return 0;}

void Logon(){

} if(s==0){

count++;while(count!=3){

printf(“請(qǐng)?jiān)俅屋斎朊艽a:n”);scanf(“%s”,password);s=login(password);if(s==1)char a;printf(“n”);printf(“****************歡迎進(jìn)入校運(yùn)動(dòng)會(huì)管理界面****************n”);printf(“********************************************************n”);printf(“********************登陸請(qǐng)按回車鍵**********************n”);printf(“********************************************************n”);printf(“n”);scanf(“%c”,&a);if(a=='n'){

FILE *fp;char password[10];int count=0,s;printf(“您有三次輸入機(jī)會(huì)!nn”);printf(“請(qǐng)輸入密碼:n”);scanf(“%s”,password);s=login(password);if(s==1){

fp=fopen(“C:UsersAdministratorDesktop實(shí)訓(xùn)password.txt”,“w”);fprintf(fp,“%s”,password);fclose(fp);system(“CLS”);printf(“密碼正確!n”);printf(“********************************************************n”);printf(“***************************歡迎進(jìn)入*********************n”);printf(“********************************************************nnn”);

//比較輸入字符和系統(tǒng)設(shè)定的密碼是否相同

}

}

}

} {

fp=fopen(“C:UsersAdministratorDesktop實(shí)訓(xùn)fprintf(fp,”%s“,password);fclose(fp);system(”CLS“);printf(”密碼正確!n“);password.txt”,“w”);printf(“********************************************************n”);printf(“***************************歡迎進(jìn)入*********************n”);printf(“********************************************************n”);} if(s==0)count++;return;if(count==3)printf(“你已經(jīng)錯(cuò)誤輸入3次,系統(tǒng)退出!n”);exit(0);else exit(1);void menu(){

int ch1;char ch2;struct tm *pt;/*定義時(shí)間結(jié)構(gòu)體*/ time_t t;t=time(NULL);pt=localtime(&t);/*讀取系統(tǒng)日期并把它放到結(jié)構(gòu)體中*/ do{

{ printf(“tt當(dāng)前系統(tǒng)日期:%d-%d-%dn”,pt->tm_year+1900,pt->tm_mon+1,pt->tm_mday);printf(“======================菜單=====================n”);printf(“ 1.輸入 printf(” 3.排序 printf(“ 5.得分 printf(” 7.插入 printf(“ 9.顯示

2.查找 4.修改 6.刪除 8.保存

n”);n“);n”);n“);/*顯示當(dāng)前系統(tǒng)日期*/

0.退出n”);printf(“=n”);printf(“請(qǐng)選擇功能<1-8>:[ ]bb”);//getchar();scanf(“%d”,&ch1);switch(ch1)

}

}

case 1:

input();break;find();break;paixu();break;xiugai();break;defen();break;shancchu();break;charu();break;save();break;read();break;exit(0);printf(“未進(jìn)行任何操作!”);case 2: case 3: case 4: case 5: case 6: case 7: case 8: case 9: case 0: default: printf(“n”);printf(“想要繼續(xù)操作請(qǐng)按yn”);getchar();scanf(“%2c”,&ch2);

//條件判斷 }while(ch2=='y');

void main(){

} system(“color 3f”);//Logon();menu();

四、調(diào)試過(guò)程

在程序運(yùn)行的過(guò)程中,出現(xiàn)了很多的錯(cuò)誤。有很復(fù)雜的問(wèn)題,也不乏許多低級(jí)的錯(cuò)誤。在寫入文件的時(shí)候,首先我用的是fwrite,而在讀入文件的時(shí)候用的是fread,后來(lái)才發(fā)現(xiàn)這兩個(gè)語(yǔ)句都只是對(duì)二進(jìn)制的文件進(jìn)行操作,實(shí)際上我們要用到的fscanf、fprintf這兩個(gè)語(yǔ)句。修改完的代碼 FILE *fp;//定義指向文件的指針 if((fp=fopen(“e:xiao.txt”,“r”))==NULL)

//為輸出打開(kāi)一個(gè)二進(jìn)制文件,為只寫方式

fscanf(fp,“%st%st%dt%dt%dt%dt%sn”,&stu[i].num,&stu[i].name,&stu[i].scorem,for(int i=0;i

}

fscanf(fp,“運(yùn)動(dòng)員號(hào)碼,姓名,100成績(jī),鉛球成績(jī),跳高成績(jī),跳遠(yuǎn)成績(jī),系名:n”);printf(“打不開(kāi)文件Cannot open the filen”);return;

//若打不開(kāi)則返回菜單

&stu[i].scoreq,&stu[i].scoreg,&stu[i].scorey,&stu[i].ximing);printf(“%st%st%dt%dt%dt%dt%sn”,stu[i].num,stu[i].name,stu[i].scorem,stu[i].scoreq,stu[i].scoreg,stu[i].scorey,stu[i].ximing);} fclose(fp);

//關(guān)閉文件 做菜單功能多次選擇時(shí),令用戶輸入字符進(jìn)行選擇,然而程序總是退出,后來(lái)才知道‘n’也被算入用戶輸入的字符內(nèi),要在字符輸入后添加getchar()才能避免菜單失效 做顯示函數(shù),屏幕顯示異常,總是反復(fù)顯示相同數(shù)據(jù)和亂碼,原來(lái)是結(jié)構(gòu)體初始化,當(dāng)中的數(shù)組已經(jīng)存儲(chǔ)了數(shù)據(jù),在顯示時(shí)與函數(shù)同時(shí)輸出了,要再定義一個(gè)相同的數(shù)組應(yīng)用它輸出。(1)登陸

(2)菜單

(3)輸入

(4)查找

(5)排序

(6)修改

(7)得分

(8)刪除

(9)插入

(10)保存

(11)退出

五、程序有待改進(jìn)的地方

六、本次實(shí)習(xí)的收獲和建議

通過(guò)這次課程設(shè)計(jì)我得出一個(gè)結(jié)論:知識(shí)必須通過(guò)應(yīng)用才能實(shí)現(xiàn)其價(jià)值!有些東西以為學(xué)會(huì)了,但真正到用的時(shí)候才發(fā)現(xiàn)是兩回事,所以我認(rèn)為只有到真正會(huì)用的時(shí)候才是真的學(xué)會(huì)了。同時(shí)在設(shè)計(jì)的過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)一些前面學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠牢固,比如說(shuō)指針。編程時(shí)要養(yǎng)成良好的風(fēng)格,注意相同內(nèi)容的縮進(jìn)和對(duì)齊。這樣做,可以使程序代碼出錯(cuò)的情況下,可以快速并且便捷的查找到錯(cuò)誤的行,利于很好的修改。

在整個(gè)設(shè)計(jì)中我懂得了許多東西,也培養(yǎng)了我獨(dú)立工作的能力,樹(shù)立了對(duì)自己工作能力的信心,相信會(huì)對(duì)今后的學(xué)習(xí)工作生活有非常重要的影響。而且大大提高了動(dòng)手的能力,使我充分體會(huì)到了在創(chuàng)造過(guò)程中探索的艱難和成功時(shí)的喜悅。雖然這個(gè)設(shè)計(jì)做的也不太好,但是在設(shè)計(jì)過(guò)程中所學(xué)到的東西是這次課程設(shè)計(jì)的最大收獲和財(cái)富,使我終身受益。

在本次實(shí)踐中,給我印象最為深刻的是在文件刪除程序的編譯過(guò)程中,這個(gè)程序?qū)⑹顷P(guān)鍵。老天不會(huì)讓我太過(guò)順利,他在這最后的時(shí)刻設(shè)置的障礙,但是我鼓起勇氣,到處查找資料,終于讓我實(shí)現(xiàn)了這個(gè)函數(shù),謝謝給我指點(diǎn)迷津的朋友和同學(xué)。對(duì)我而言,知識(shí)上的收獲重要,精神上的豐收是可喜的。挫折是一份財(cái)富,經(jīng)歷是一份擁有。這次實(shí)際操作必將成為我們?nèi)松猛旧弦粋€(gè)非常美好的回憶!

第三篇:c語(yǔ)言 電話簿管理系統(tǒng)

#include “stdio.h” #include “string.h” #define N 20 struct mem { char name[20];

char tel[20];

char wu[20];

char dz[20];}mem[N];void sorttel(struct mem tel[]){

struct mem temp;

int i,j;

FILE *fp;if((fp=fopen(“c: elephone.txt”,“rb”))==NULL){

printf(“不能打開(kāi)文件n”);} for(i=0;i

for(j=0;j

if(strcmp(mem[j+1].tel,mem[j].tel)<0)

{

temp=mem[j];

mem[j]=mem[j+1];

mem[j+1]=temp;

} for(i=0;i

void sortname(struct mem tel[]){

struct mem temp;

int i,j;

FILE *fp;if((fp=fopen(“c: elephone.txt”,“rb”))==NULL){

printf(“不能打開(kāi)文件n”);} for(i=0;i

for(j=i+1;j

if(strcmp(mem[j].name,mem[i].name)<0)

{

temp=mem[i];

mem[i]=mem[j];

mem[j]=temp;

} for(i=0;i

void sor(){int k;

do{printf(“--------------------排序菜單-------------------n”);

printf(“------------------------n”);

printf(“

1:按號(hào)碼排序n”);

printf(“

2:按姓名排序n”);

printf(“

0:退出n”);

printf(“------------------------n”);

printf(“請(qǐng)輸入0-2選擇功能n”);

scanf(“%d”,&k);getchar();

switch(k)

{

case 1:sorttel(mem);break;

case 2:sortname(mem);break;

case 0:return;

}

}while(1);}

void add(){ char name[10];char tel[10];

char wu[10];

char dz[10];FILE *fp;if((fp=fopen(“c: elephone.txt”,“a”))==NULL){

printf(“不能打開(kāi)文件n”);

exit(0);}

printf(“請(qǐng)輸入姓名”);

gets(name);

printf(“請(qǐng)輸入電話號(hào)碼”);

gets(tel);

printf(“請(qǐng)輸入工作單位”);

gets(wu);

printf(“請(qǐng)輸入地址”);

gets(dz);printf(“n”);

fprintf(fp,“%s %s %s %sn”,name,tel,wu,dz);

fclose(fp);} void del(){

FILE *fp;

int i=0,n;

char name[10];

printf(“請(qǐng)輸入刪除名字”);

gets(name);

if((fp=fopen(“c: elephone.txt”,“r”))==NULL){

printf(“不能打開(kāi)文件n”);

exit(0);}

while(!feof(fp))

{

fscanf(fp,“%s%s%s%s”,mem[i].name,mem[i].tel,mem[i].wu,mem[i].dz);

if(strcmp(name,mem[i].name)!=0)i++;

}

fclose(fp);if((fp=fopen(“c: elephone.txt”,“w”))==NULL){

printf(“不能打開(kāi)文件n”);

exit(0);} for(n=0;n

fprintf(fp,“%s %s %s %s”,mem[n].name,mem[n].tel,mem[n].wu,mem[n].dz);fclose(fp);} void dis(){ FILE * fp;int i=0,n;printf(“

姓名

電話號(hào)碼

工作單位

地址n”);

if((fp=fopen(“c: elephone.txt”,“r”))==NULL){

printf(“不能打開(kāi)文件n”);

exit(0);}

while(!feof(fp))

{fscanf(fp,“%s%s%s%s”,mem[i].name,mem[i].tel,mem[i].wu,mem[i].dz);i++;}

fclose(fp);

n=i;

for(i=0;i

printf(“%-8s%11s%13s%24sn”,mem[i].name,mem[i].tel,mem[i].wu,mem[i].dz);} void mod(){ FILE * fp;int i=0,n;char name[10];char nn[10];char nt[10];char nwu[10];char ndz[10];

printf(“請(qǐng)輸入要修改的姓名”);gets(name);printf(“請(qǐng)輸入修改后的姓名”);gets(nn);printf(“請(qǐng)輸入修改后的電話號(hào)碼”);gets(nt);printf(“請(qǐng)輸入修改后的工作單位”);gets(nwu);printf(“請(qǐng)輸入修改后的地址”);gets(ndz);printf(“n”);if((fp=fopen(“c: elephone.txt”,“r”))==NULL){

printf(“不能打開(kāi)文件n”);

exit(0);}

while(!feof(fp))

{

fscanf(fp,“%s%s%s%s”,mem[i].name,mem[i].tel,mem[i].wu,mem[i].dz);

if(strcmp(name,mem[i].name)==0)

{strcpy(mem[i].name,nn);strcpy(mem[i].tel,nt);strcpy(mem[i].wu,nwu);strcpy(mem[i].dz,ndz);}

i++;

}

fclose(fp);if((fp=fopen(“c: elephone.txt”,“w”))==NULL){

printf(“不能打開(kāi)文件n”);

exit(0);}

n=i;

for(i=0;i

fprintf(fp,“%s %s %s %sn”,mem[i].name,mem[i].tel,mem[i].wu,mem[i].dz);

fclose(fp);} void main(){

int choose;

while(1)

{

printf(“--------------------電話簿管理系統(tǒng)--------------------n”);

printf(“------------------------n”);

printf(“

1:添加一個(gè)新號(hào)碼n”);

printf(“

2:刪除一個(gè)號(hào)碼n”);

printf(“

3:顯示所有保存的號(hào)碼n”);

printf(“

4:修改號(hào)碼n”);

printf(“

5:排序n”);

printf(“

6:查詢n”);

printf(“

0:退出n”);

printf(“------------------------n”);

printf(“請(qǐng)輸入0-6選擇功能n”);

scanf(“%d”,&choose);getchar();

if(choose!=0)

switch(choose)

{

case 1:add();break;

case 2:del();break;

case 3:dis();break;

case 4:mod();break;

case 5:sor();break;

case 6:/*que();break*/;

}

else exit(0);

} }

第四篇:C語(yǔ)言-通訊錄管理系統(tǒng)

#include #include #include struct record{ charnum[12];char name[10];char birthday[10];char post[10];char phone[15];}data[100];intmenu_select();intcreate_record();intadd_record(int flag);int flag=0;

intfind_record(int flag);intdelete_record(int flag);voidpaixu_record(int flag);intsave_record(int flag);void main(){ for(;;){ switch(menu_select())

{ case 1: printf(“ ***********************************************n”);printf(“ ************** 通訊錄的建立 ***************n”);printf(“ ***********************************************n”);flag=create_record();break;case 2: printf(“ ***********************************************n”);printf(“ ************** 通訊錄信息的添加 *****************n”);printf(“ ***********************************************n”);flag=add_record(flag);break;case 3: printf(“ ******************************n”);printf(“ ******* 通訊錄信息查詢 *******n”);printf(“ ******************************n”);find_record(flag);

break;case 4: printf(“ ***********************************n”);printf(“ **********通訊信息的刪除***********n”);printf(“ ***********************************n”);delete_record(flag);break;case 5: printf(“ ***********************************n”);printf(“ **********通訊錄的存儲(chǔ)(D:)*********n”);printf(“ ***********************************n”);save_record(flag);break;case 6: printf(“ ***********************************n”);printf(“ **********通訊者的排序*********n”);printf(“ ***********************************n”);paixu_record(flag);break;case 0: printf(“t 謝謝您的使用!n”);break;

default : break;} } } intmenu_select(){ int i;printf(“

********************

n”);printf(“

Welcome!

n

”);printf(“

Form kuangminn”);printf(“

********************

n”);printf(“

n”);printf(“ n”);printf(“ n”);printf(“

通訊錄管理系統(tǒng)

n”);printf(“ n”);printf(“

======================n”);printf(“

1.通訊錄的建立n”);printf(“

2.通訊者的添加n”);printf(“

3.通訊錄的查詢n”);printf(“

4.通訊者的刪除n”);printf(“

5.通訊錄的存儲(chǔ)n”);printf(“

6.通訊者的排序n”);printf(“

0.退出通訊錄管理系統(tǒng)n”);printf(“

======================n”);printf(“

請(qǐng)選擇操作0-5 nn”);for(;;){ scanf(“%d”,&i);if(i<0||i>6)printf(“t對(duì)不起,您的輸入錯(cuò)誤n”);else break;} return i;} intcreate_record(){inti,j;for(i=0;;)

{ printf(“ 學(xué)號(hào)(12)姓名(10)出生年月(10)家庭住址(30)郵編(10)電話(15)n”);printf(“-------------n”);scanf(“%s%s%s%s%s%s”,data[i].num,data[i].name,data[i].birthday, data[i].post, data[i].phone);i++;printf(“ 想繼續(xù)創(chuàng)建嗎?(1.是/0.不):”);scanf(“%d”,&j);if(!j)

return i;else printf(“恭喜你,創(chuàng)建成功!請(qǐng)繼續(xù)創(chuàng)建!n”);

} return i;} intadd_record(int flag){ int i=flag,j;for(i;;)

{ printf(“ 學(xué)號(hào)(12)姓名(10)出生年月(10)家庭住址(30)郵編(10)電話(15)n”);printf(“-------------n”);

scanf(“%s%s%s%s%s%s”,data[i].num,data[i].name,data[i].birthday,data[i].post, data[i].phone);i++;printf(“ 想繼續(xù)添加嗎?(1.是/0.不):”);scanf(“%d”,&j);if(!j)return i;else printf(“恭喜你,添加成功!請(qǐng)繼續(xù)添加!n”);

} return(i);} intfind_record(){ int i;char number[6];char named[10];intxz;printf(“--------------------n”);printf(“ 1.按學(xué)號(hào)查詢n”);printf(“ 2.按姓名查詢n”);printf(“--------------------n”);printf(“ 請(qǐng)選擇 : n”);

scanf(“%d”,&xz);if(xz==1){ printf(“ 請(qǐng)輸入要查找的學(xué)號(hào): ”);scanf(“%s”,number);for(i=0;i

if(strcmp(data[i].num,number)==0)

{ printf(“ ** 學(xué)號(hào)姓名出生年月家庭住址郵編電話**n”);printf(“------------------------------n”);printf(“%s,%s,%s,%s,%s,%sn”,data[i].num,data[i].name,data[i].birthday,data[i].post,data[i].phone);printf(“------------------------------n”);return 0;}

} else if(xz=2){ printf(“請(qǐng)輸入要查找的姓名: ”);scanf(“%s”,named);for(i=0;i

{ printf(“ ** 學(xué)號(hào)姓名出生年月家庭住址郵編電話**n”);printf(“------------------------------n”);printf(“%s,%s,%s,%s,%s,%sn”,data[i].num,data[i].name,data[i].birthday,data[i].post,data[i].phone);printf(“------------------------------n”);return 0;else {printf(“對(duì)不起,沒(méi)有你要找的人!n”);return 0;} }

else {printf(“對(duì)不起,沒(méi)有你要找的人!n”);return 0;}

}

} intdelete_record(int flag)

{ inti,j;intdeletemark=0;char number[20];printf(“ttt請(qǐng)輸入要?jiǎng)h除學(xué)號(hào):n”);scanf(“%s”,number);for(i=0;i

{ if(strcmp(data[i].num, number)==0)

{ printf(“ttt以下是您要?jiǎng)h除的用戶紀(jì)錄:n”);printf(“ ** 學(xué)號(hào)姓名出生年月家庭住址郵編電話**n”);printf(“------------------------------n”);

printf(“%s,%s,%s,%s,%s,%sn”,data[i].num,data[i].name,data[i].birthday,data[i].post,data[i].phone);printf(“------------------------------n”);

printf(“ttt是否刪除?(y/n)”);if(getch()=='y' || getch()=='Y')

{ for(j=i;j

} else return;

} continue;

} if(deletemark==0)

{ printf(“ttt沒(méi)有該用戶的紀(jì)錄”);

return;

} return;

} voidpaixu_record(int flag){inti,j;struct record tmp;

printf(“ 1.按姓名排序n”);printf(“ 2.按學(xué)號(hào)排序n”);scanf(“%d”,&i);if(i==1){for(i=1;i

{ if(strcmp(data[i].name, data [i-1].name)<0)

{ tmp= data[i];

j=i-1;do

{ data [j+1]= data [j];j--;}while((strcmp(tmp.name, data [j].name)<0&&j>=0));data [j+1]=tmp;

}

} printf(“ttt排序成功!”);}

if(i==2){for(j=0;jdata[i+1].num)

{tmp=data[i];data[i]=data[i+1];data[i+1]=tmp;} } }

intsave_record(int flag){

FILE*fp;int i;if((fp=fopen(“D:data.txt”,“w+”))==NULL)

{printf(“無(wú)法打開(kāi)文件!”);exit(0);} for(i=0;i

{fprintf(fp,“%s,%s,%s,%s,%s,%sn”,data[i].num,data[i].name,data[i].birthday, data[i].post, data[i].phone);printf(“n”);} fclose(fp);return 0;}

第五篇:c語(yǔ)言圖書管理系統(tǒng)

C語(yǔ)言——圖書管理系統(tǒng)

代碼部分: #include #include #include #pragma comment(lib,“l(fā)ibmysql.lib”)

/*定義數(shù)據(jù)庫(kù)相關(guān)操作變量*/ MYSQL mysql;

// MYSQL_RES *result;

//定義結(jié)果集變量 MYSQL_ROW row;

//定義行變量 char ch[2];

void ShowAll();

/*顯示所有的圖書信息*/ void AddBook();

/*添加圖書信息*/ void ModifyBook();

/*修改圖書信息*/ void DeleteBook();

/*刪除圖書信息*/ void QueryBook();

/*查詢圖書信息*/

/*顯示菜單*/ void showmenu(){

system(“cls”);

printf(“nnnnn”);

printf(“t╔═══════════════════════════╗n”);

printf(“t║

Welcome To Lemon Books System

║n”);

printf(“t╠═══════════════════════════╣n”);

printf(“t║t 1添加圖書信息

║n”);

printf(“t║t 3刪除圖書信息

║n”);

printf(“t║t 5退出

║n”);

printf(“t╚═══════════════════════════╝n”);

printf(“n

ENTER YOUR CHOICE(1-6):”);

}

void inquire()/*詢問(wèn)用戶是否顯示主菜單*/ {

printf(“t 顯示主菜單?(y/n):”);

scanf(“%s”,ch);

if(strcmp(ch,“Y”)==0||strcmp(ch,“y”)==0)/*判斷是否要顯示查找到的信息*/

{

showmenu();

/*顯示菜單*/

}

else

{

exit(0);

} }

/*顯示主菜單,連接數(shù)據(jù)庫(kù)*/ int main(){

int n;

//定義變量

存儲(chǔ)用戶輸入的編號(hào)

mysql_init(&mysql);//初始化mysql結(jié)構(gòu)

showmenu();

/*顯示菜單*/

scanf(“%d”,&n);/*輸入選擇功能的編號(hào)*/

while(n)

{

switch(n)

{

case 1:

ShowAll();

/*調(diào)用顯示所有圖書數(shù)據(jù)的過(guò)程*/

break;

case 2:

AddBook();

/*添加圖書信息*/

break;

case 3:

ModifyBook();

/*修改圖書信息*/

break;

case 4:

DeleteBook();

/*刪除圖書信息*/

break;

case 5:

QueryBook();

/*查詢圖書信息*/

break;

case 6:

exit(0);

/*退出*/

default:break;

}

scanf(“%d”,&n);

} }

void ShowAll()

/*調(diào)用顯示所有圖書數(shù)據(jù)的過(guò)程*/ {

/*連接數(shù)據(jù)庫(kù)*/

if(!mysql_real_connect(&mysql,“127.0.0.1”,“root”,“111”,“db_books”,0,NULL,0))

{

printf(“nt 不能連接數(shù)據(jù)庫(kù)!n”);

}

else

{

/*數(shù)據(jù)庫(kù)連接成功*/

if(mysql_query(&mysql,“select * from tb_book”))

{

//如果查詢失敗

printf(“nt 查詢 tb_book 數(shù)據(jù)表失敗!n”);

}

else

{

result=mysql_store_result(&mysql);//獲得結(jié)果集

if(mysql_num_rows(result)!=NULL)

{ //有記錄的情況,只有有記錄取數(shù)據(jù)才有意義

printf(“t ════════════════════════════

n”);

printf(“t

顯 示 所 有 圖 書 信 息

n”);

printf(“t ════════════════════════════ n”);

printf(“t圖書編號(hào)

圖書名

作者

出版社

n”);

printf(“t-------------------------n”);

while((row=mysql_fetch_row(result)))

{

//取出結(jié)果集中記錄

fprintf(stdout,“t

%s

%s

%s

%s

n”,row[0],row[1],row[2],row[3]);//輸出這行記錄

}

printf(“t ════════════════════════════ n”);

}

else

{

printf(“nt 沒(méi)有記錄信息!n”);

}

mysql_free_result(result);

//釋放結(jié)果集

}

mysql_close(&mysql);

//釋放連接

}

inquire();

/*詢問(wèn)是否顯示主菜單*/ }

void AddBook()

/*添加圖書信息*/ {

int rowcount;

/*結(jié)果集中的行數(shù)*/

char id[10];

/*編號(hào)*/

char *bookname;

char *author;

char *bookconcern;

char *sql;

char dest[500] ={“

”};

/*連接數(shù)據(jù)庫(kù)*/

if(!mysql_real_connect(&mysql,“127.0.0.1”,“root”,“111”,“db_books”,0,NULL,0))

{

printf(“nt 不能連接數(shù)據(jù)庫(kù)!n”);

}

else

{

/*數(shù)據(jù)庫(kù)連接成功,插入數(shù)據(jù)*/

printf(“t ════════════════════════════ n”);

printf(“t

添 加 圖 書 信 息

n”);

printf(“t ════════════════════════════ n”);

if(mysql_query(&mysql,“select * from tb_book”))

{

//如果查詢失敗

printf(“nt 查詢 tb_book 數(shù)據(jù)表失敗!n”);

}

else

{

result=mysql_store_result(&mysql);//獲得結(jié)果集

rowcount=mysql_num_rows(result);//獲得行數(shù)

row=mysql_fetch_row(result);

//獲取結(jié)果集的行

printf(“t 圖書編號(hào):”);

scanf(“%s”,id);

/*輸入圖書編號(hào)*/

sql=“insert into tb_book(ID,bookname,author,bookconcern)values(”;

strcat(dest,sql);

strcat(dest,“'”);

strcat(dest,id);

strcat(dest,“', '”);

if(mysql_num_rows(result)!=NULL)

{

/*判斷輸入的編號(hào)是否存在*/

do

{

//存在相同編號(hào)

if(!strcmp(id,row[0]))

{

// printf(“%s”,row[0]);

printf(“nt 記錄存在,按任意鍵繼續(xù)!n”);

getch();

mysql_free_result(result);

/*釋放結(jié)果集*/ mysql_close(&mysql);

/*釋放連接*/

inquire();

/*詢問(wèn)是否顯示主菜單*/

return;

}

}while(row=mysql_fetch_row(result));

}

bookname =(char*)malloc(50);

author =(char*)malloc(50);

bookconcern =(char*)malloc(50);

//不存在相同的編號(hào)

printf(“t 圖書名:”);

scanf(“%s”,bookname);

/*輸入圖書名*/

strcat(dest,bookname);

/*將圖書編號(hào)追加到sql語(yǔ)句后面*/

printf(“t 作者:”);

scanf(“%s”,author);

/*輸入作者*/

strcat(dest,“', '”);

strcat(dest,author);

printf(“t 出版社:”);

scanf(“%s”,bookconcern);

/*輸入出版社*/

strcat(dest,“', '”);

strcat(dest,bookconcern);

strcat(dest,“')”);

//printf(“%s”,dest);

if(mysql_query(&mysql,dest)!=0)

{

fprintf(stderr,“t 不能插入記錄!”,mysql_error(&mysql));

}

else

{

printf(“t 插入成功!n”);

}

mysql_free_result(result);

//釋放結(jié)果集

}

mysql_close(&mysql);

//釋放連接

}

inquire();

/*詢問(wèn)是否顯示主菜單*/ }

void ModifyBook()

/*修改圖書信息*/ {

char id[10];

/*結(jié)果集中的行數(shù)*/

char *sql;

char dest[500] ={“

”};

char dest1[500] ={“

”};

char *bookname;

char *author;

char *bookconcern;

if(!mysql_real_connect(&mysql,“127.0.0.1”,“root”,“111”,“db_books”,0,NULL,0))

{

printf(“t 不能連接數(shù)據(jù)庫(kù)!n”);

}

else

{

/*數(shù)據(jù)庫(kù)連接成功*/

// printf(“連接成功”);

printf(“t 請(qǐng)輸入您想要修改的圖書編號(hào).”);

scanf(“%s”,id);

/*輸入圖書編號(hào)*/

sql = “select * from tb_book where id=”;

strcat(dest,sql);

strcat(dest,id);

/*將圖書編號(hào)追加到sql語(yǔ)句后面*/

//printf(“%sn”,dest);

/*查詢?cè)搱D書信息是否存在*/

if(mysql_query(&mysql,dest))

{

//如果查詢失敗

printf(“n 查詢 tb_book 數(shù)據(jù)表失敗!n”);

}

else

{

result=mysql_store_result(&mysql);//獲得結(jié)果集

if(mysql_num_rows(result)!=NULL)

{

//有記錄的情況,只有有記錄取數(shù)據(jù)才有意義

printf(“t 發(fā)現(xiàn)記錄信息,是否顯示?(y/n)”);

scanf(“%s”,ch);

if(strcmp(ch,“Y”)==0||strcmp(ch,“y”)==0)/*判斷是否要顯示查找到的信息*/

{

printf(“t ════════════════════════════

n”);

printf(“t

***** 顯示圖書信息 *****

n”);

printf(“t ════════════════════════════ n”);

printf(“t圖書編號(hào)

圖書名

作者

出版社

n”);

printf(“t-------------------------n”);

while((row=mysql_fetch_row(result)))

{

//取出結(jié)果集中記錄

fprintf(stdout,“t

%s

%s

%s

%s

n”,row[0],row[1],row[2],row[3]);//輸出這行記錄

}

printf(“t ════════════════════════════ n”);

}

printf(“t Modify?(y/n)”);

scanf(“%s”,ch);

if(strcmp(ch,“Y”)==0||strcmp(ch,“y”)==0)

/*判斷是否需要錄入*/

{

sql = “update tb_book set bookname= '”;

strcat(dest1,sql);

//

printf(“%s”,sql);

bookname =(char*)malloc(20);

author =(char*)malloc(20);

bookconcern =(char*)malloc(20);

printf(“t 圖書名:”);

scanf(“%s”,bookname);

/*輸入圖書名*/

strcat(dest1,bookname);

// printf(“%s”,&bookname);

printf(“t 作者:”);

scanf(“%s”,author);

/*輸入作者*/

strcat(dest1,“', author= '”);

strcat(dest1,author);

/*追加sql語(yǔ)句*/

printf(“t 出版社:”);

scanf(“%s”,bookconcern);

/*輸入出版社*/

strcat(dest1,“', bookconcern = '”);

strcat(dest1,bookconcern);

/*追加sql語(yǔ)句*/

strcat(dest1,“' where id= ”);

strcat(dest1,id);

//printf(“%s”,dest1);

if(mysql_query(&mysql,dest1)!=0)

{

fprintf(stderr,“t 不能修改記錄!n”,mysql_error(&mysql));

}

else

{

printf(“t 修改成功!n”);

}

}

}

else

{

printf(“t 沒(méi)有發(fā)現(xiàn)要修改的信息!n”);

}

}

mysql_free_result(result);

//釋放結(jié)果集

}

mysql_close(&mysql);

//釋放連接

inquire();

/*詢問(wèn)是否顯示主菜單*/ }

void DeleteBook()

/*刪除圖書信息*/ {

char id[10];

/*結(jié)果集中的行數(shù)*/

char *sql;

char dest[100] ={“

”};

char dest1[100] ={“

”};

if(!mysql_real_connect(&mysql,“127.0.0.1”,“root”,“111”,“db_books”,0,NULL,0))

{

printf(“t 不能連接數(shù)據(jù)庫(kù)!n”);

}

else

{

printf(“t 請(qǐng)輸入您想要?jiǎng)h除的圖書編號(hào).”);

scanf(“%s”,id);

/*輸入圖書編號(hào)*/

sql = “select * from tb_book where id=”;

strcat(dest,sql);

strcat(dest,id);

/*將圖書編號(hào)追加到sql語(yǔ)句后面*/

//printf(“%sn”,dest);

/*查詢?cè)搱D書信息是否存在*/

if(mysql_query(&mysql,dest))

{

//如果查詢失敗

printf(“n 查詢 tb_book 數(shù)據(jù)表失敗!n”);

}

else

{

result=mysql_store_result(&mysql);//獲得結(jié)果集

if(mysql_num_rows(result)!=NULL)

{ //有記錄的情況,只有有記錄取數(shù)據(jù)才有意義

printf(“t 發(fā)現(xiàn)記錄信息,是否顯示?(y/n)”);

scanf(“%s”,ch);

if(strcmp(ch,“Y”)==0||strcmp(ch,“y”)==0)/*判斷是否要顯示查找到的信息*/

{

printf(“t ════════════════════════════

n”);

printf(“t

***** 顯示圖書信息 *****

n”);

printf(“t ════════════════════════════ n”);

printf(“t圖書編號(hào)

圖書名

作者

出版社

n”);

printf(“t-------------------------n”);

while((row=mysql_fetch_row(result)))

{

//取出結(jié)果集中記錄

fprintf(stdout,“t

%s

%s

%s

%s

n”,row[0],row[1],row[2],row[3]);//輸出這行記錄

}

printf(“t ════════════════════════════ n”);

}

printf(“t 是否刪除?(y/n)”);

scanf(“%s”,ch);

if(strcmp(ch,“Y”)==0||strcmp(ch,“y”)==0)

/*判斷是否需要錄入*/

{

sql = “delete from tb_book where ID= ”;

printf(“%s”,dest1);

strcat(dest1,sql);

strcat(dest1,id);

// printf(“%s”,dest1);

if(mysql_query(&mysql,dest1)!=0)

{

fprintf(stderr,“t 不能刪除記錄!n”,mysql_error(&mysql));

}

else

{

printf(“t 刪除成功!n”);

}

}

}

else

{

printf(“t 沒(méi)有發(fā)現(xiàn)要?jiǎng)h除的信息!n”);

}

}

mysql_free_result(result);

//釋放結(jié)果集

}

mysql_close(&mysql);

inquire();

/*詢問(wèn)是否顯示主菜單*/ }

void QueryBook()

/*查詢圖書信息*/ {

char id[10];

/*結(jié)果集中的行數(shù)*/

char *sql;

char dest[100] ={“

”};

if(!mysql_real_connect(&mysql,“127.0.0.1”,“root”,“111”,“db_books”,0,NULL,0))

{

printf(“t 不能連接數(shù)據(jù)庫(kù)!n”);

}

else

{

printf(“t 請(qǐng)輸入您想要查詢的圖書編號(hào):”);

scanf(“%s”,id);

/*輸入圖書編號(hào)*/

sql = “select * from tb_book where id=”;

strcat(dest,sql);

strcat(dest,id);

/*將圖書編號(hào)追加到sql語(yǔ)句后面*/

if(mysql_query(&mysql,dest))

{

//如果查詢失敗

printf(“n 查詢 tb_book 數(shù)據(jù)表失敗!n”);

}

else

{

result=mysql_store_result(&mysql);//獲得結(jié)果集

if(mysql_num_rows(result)!=NULL)

{ //有記錄的情況,只有有記錄取數(shù)據(jù)才有意義

printf(“t ════════════════════════════

n”);

printf(“t

顯示圖書信息

n”);

printf(“t ════════════════════════════ n”);

printf(“t圖書編號(hào)

圖書名

作者

出版社

n”);

printf(“t-------------------------n”);

while((row=mysql_fetch_row(result)))

{

//取出結(jié)果集中記錄

fprintf(stdout,“t

%s

%s

%s

%s

n”,row[0],row[1],row[2],row[3]);//輸出這行記錄

}

printf(“t ════════════════════════════ n”);

}

else

{

printf(“t 沒(méi)有發(fā)現(xiàn)要查詢的信息!n”);

}

mysql_free_result(result);

//釋放結(jié)果集

}

mysql_close(&mysql);

//釋放連接

}

inquire();

/*詢問(wèn)是否顯示主菜單*/ }

說(shuō)明部分

附加MySQL數(shù)據(jù)庫(kù)

將工程文件夾中的data文件夾下的db_books文件夾拷貝到本地Mysql數(shù)據(jù)庫(kù)安裝文件夾的data文件夾中。即可完成對(duì)數(shù)據(jù)庫(kù)的附加。

連接MySql的步驟

MySQL為C語(yǔ)言提供了連接數(shù)據(jù)庫(kù)的API,要想正常使用這些API,需要做以下兩件事情:(1)包含這些API的聲明文件,即mysql.h。

(2)讓編譯器找到這些API的可執(zhí)行程序,即DLL庫(kù)。下面介紹一下詳細(xì)的步驟: 1.

下面解決,讓編譯器找到mysql.h的問(wèn)題。需要在編譯環(huán)境中作如下的設(shè)置: 在Visual C++ 6.0中,選擇Tools(工具)/Options(選項(xiàng))菜單項(xiàng),如下圖所示。

選擇菜單命令

即可打開(kāi)Options對(duì)話框,在Options對(duì)話框中選擇Directories選項(xiàng)卡,在Show directories for下拉列表框中選擇Include files選項(xiàng),在Directiories列表框中添加本地安裝MySQL的include目錄路徑。如下圖所示。默認(rèn)的路徑應(yīng)該在C:Program FilesMySQLMySQL Server 5.0include。

添加mysql.h文件

通過(guò)上述設(shè)置,編譯器就可以知道MySQL的API接口中有哪些函數(shù),以及函數(shù)的原型是怎樣的。在編譯時(shí),所編寫的程序已經(jīng)能夠通過(guò)編譯(compile)這步了。

2.引入庫(kù)函數(shù)

經(jīng)過(guò)上一步的設(shè)置,程序已經(jīng)可以編譯通過(guò)了,但是編譯通過(guò)并不等于可以生成可執(zhí)行文件。還需要告訴編譯器這些API函數(shù)的可執(zhí)行文件在哪個(gè)DLL文件(libmysql.dll)中。

在工程中選擇Tools/Options菜單命令,將彈出Options對(duì)話框,在該對(duì)話框中選擇Directories選項(xiàng)卡,在Show directories for下拉列表框中選擇Include files選項(xiàng)。添加本地安裝的MySQL的Lib目錄路徑。默認(rèn)的安裝路徑是C:Program FilesMySQLMySQL Server 5.0libdebug 或者C:Program

FilesMySQLMySQL Server 5.0libopt)。設(shè)置完成的效果如下圖所示。

引用庫(kù)

單擊OK按鈕,關(guān)閉Options對(duì)話框。選擇Project/Settings菜單命令。如下圖所示。

選擇Project/Settings菜單項(xiàng)

下面添加libmysql.lib到工程中。選擇Project/Settings菜單項(xiàng),將彈出Project Settings對(duì)話框,在該對(duì)話框中選擇Link選項(xiàng)卡。在Object/library modules文本框末尾添加libmysql.lib。如下圖所示。

添加libmysql.lib到工程中

最好將libmysql.lib以及l(fā)ibmysql.dll文件拷貝到工程的目錄下。設(shè)置完成后就可以運(yùn)行程序了程序運(yùn)行界面如下圖所示:

下載校級(jí)運(yùn)動(dòng)會(huì)管理系統(tǒng)c語(yǔ)言程序5篇word格式文檔
下載校級(jí)運(yùn)動(dòng)會(huì)管理系統(tǒng)c語(yǔ)言程序5篇.doc
將本文檔下載到自己電腦,方便修改和收藏,請(qǐng)勿使用迅雷等下載。
點(diǎn)此處下載文檔

文檔為doc格式


聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

相關(guān)范文推薦

    c語(yǔ)言銷售管理系統(tǒng)

    課程設(shè)計(jì)說(shuō)明書 學(xué) 院、系: 專業(yè): 學(xué) 生 姓 名: 設(shè) 計(jì) 題 目: 起 迄 日 期: 指 導(dǎo) 教 師: 學(xué) 號(hào): 銷售管理系統(tǒng) 日期: 2017年5月12日 1 設(shè)計(jì)目的 1.了解管理信息系統(tǒng)的開(kāi)發(fā)......

    C語(yǔ)言藥房管理系統(tǒng)

    #include #include #include #include struct medicine { char name[20]; //藥品名稱 char number[50]; //藥品編號(hào) char price[50]; //單價(jià) char inventory[50]; //庫(kù)存......

    C語(yǔ)言食堂飯卡管理系統(tǒng)

    食堂飯卡管理系統(tǒng)3人 基本功能: (1)發(fā)卡:學(xué)生員工持有效證件到管理處繳押金,辦理就餐卡,操作人員將相關(guān)內(nèi)容寫入卡中,并自動(dòng)產(chǎn)生編號(hào),持卡人員再預(yù)交一定金額款項(xiàng)即可進(jìn)行就餐。 (2......

    C語(yǔ)言實(shí)驗(yàn)電話薄管理系統(tǒng)

    #include "stdio.h" /*標(biāo)準(zhǔn)輸入輸出函數(shù)庫(kù)*/ #include "stdlib.h" /*標(biāo)準(zhǔn)函數(shù)庫(kù)*/ #include "string .h" /*字符串函數(shù)庫(kù)*/ #include "conio.h" /*屏幕操作函數(shù)庫(kù)*/ #define......

    C語(yǔ)言程序設(shè)計(jì)圖書管理系統(tǒng)

    C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告 題 目: 圖書管理管理系統(tǒng) 院 系: 信息科技學(xué)院 專 業(yè): 姓 名: 學(xué) 號(hào): 指導(dǎo)教師: 楊呈勇 日 期: 09-09-18 1 問(wèn)題定義 ……………………………………………......

    C語(yǔ)言課程設(shè)計(jì) 倉(cāng)庫(kù)管理系統(tǒng)

    C語(yǔ)言課程設(shè)計(jì) 倉(cāng)庫(kù)管理系統(tǒng) #include struct cangku { int num; char name[20]; char introdution[50]; float square; }; typedef struct cangku Cangku; int Input(......

    紅綠燈C語(yǔ)言程序

    業(yè)余黨校筆記(全部整理) 2009年4月16日 第一講《中國(guó)共產(chǎn)黨的性質(zhì)和指導(dǎo)思想》 黨的性質(zhì),是指一個(gè)政黨所具有的質(zhì)的規(guī)定性,即它代表哪個(gè)階級(jí)利益,具有哪個(gè)階級(jí)的特性。中國(guó)共產(chǎn)......

    十大C語(yǔ)言經(jīng)典程序

    計(jì)算機(jī)二級(jí)C語(yǔ)言程序必背 1、/*輸出9*9口訣。共9行9列,i控制行,j控制列。*/ #include main() {int i,j,result; for (i=1;i......

主站蜘蛛池模板: 九九综合九色综合网站| 日本内射精品一区二区视频| 成 人 综合 亚洲另类| 国产三级a三级三级| 精品一区二区无码免费| 婷婷色爱区综合五月激情| 四虎永久在线精品免费播放| 在线无码va中文字幕无码| 另类亚洲综合区图片区小说| 日本大片免费观看视频| 青草青草久热精品视频在线观看| 国产欧美高清在线观看| 欧美和黑人xxxx猛交视频| 少妇夜夜春夜夜爽试看视频| 日日日日做夜夜夜夜无码| 韩国精品一区二区三区无码视频| 亚洲欧洲av无码专区| 免费无码av片在线观看网站| 午夜爽爽爽男女免费观看麻豆国产| 国产xxxx99真实实拍| 美女露出奶头扒开尿口免费网站| 精品国模一区二区三区| 成年免费视频黄网站zxgk| 国产成人精品高清在线电影| 精品国产免费一区二区三区香蕉| 国产交换配乱婬视频| 少妇粉嫩小泬喷水视频www| 亚洲精品久久久久久不卡精品小说| 午夜成人1000部免费视频| 国产精品久久久久久妇女6080| 亚洲第一无码精品立川理惠| 国产无遮挡无码视频免费软件| 成人做爰69片免费看网站| 欧美影视精品久久| 午夜dy888国产精品影院| 亚洲精品无码av人在线观看国产| 日韩国产丝袜人妻一二区| 亚洲人成无码区在线观看| 调教小奴高潮惩罚play露出| а天堂中文在线官网| 免费观看国产小粉嫩喷水|