版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 一、系統(tǒng)功能分析與設(shè)計(jì)</p><p><b> 總體設(shè)計(jì)。</b></p><p> 電費(fèi)管理主要完成供電公司對(duì)其客戶(hù)進(jìn)行開(kāi)戶(hù)、銷(xiāo)戶(hù)、用電計(jì)費(fèi)統(tǒng)計(jì)等相關(guān)業(yè)務(wù)。涉及的主要信息包括:客戶(hù)姓名,身份證號(hào)、住址、電表號(hào)、電表讀數(shù),日期等</p><p> 主要有開(kāi)戶(hù),銷(xiāo)戶(hù),過(guò)戶(hù),計(jì)費(fèi),查詢(xún)等業(yè)務(wù)。</p>&
2、lt;p><b> 2.詳細(xì)設(shè)計(jì)</b></p><p> 共有九個(gè)調(diào)用函數(shù),分別是主菜單,計(jì)數(shù)讀入文件函數(shù),保存文件函數(shù),</p><p> 開(kāi)戶(hù)函數(shù),銷(xiāo)戶(hù)函數(shù),過(guò)戶(hù)函數(shù),計(jì)費(fèi)函數(shù),查詢(xún)函數(shù),退出系統(tǒng)函數(shù)。</p><p> void fun1(struct dianfei *p)開(kāi)戶(hù)業(yè)務(wù)函數(shù)</p><p&
3、gt; voidfun2(struct dianfei *p)銷(xiāo)戶(hù)業(yè)務(wù)</p><p> 3.void fun3(struct dianfei *p)過(guò)戶(hù)業(yè)務(wù)</p><p> 4.void fun4(struct dianfei *p)計(jì)算業(yè)務(wù)</p><p> 5.void fun5(struct dianfei *p)查詢(xún)業(yè)務(wù)</p>&
4、lt;p><b> 程序代碼與界面。</b></p><p><b> 程序代碼</b></p><p> #include<stdio.h></p><p> #include<stdlib.h></p><p> #include<string.h&
5、gt;/*頭文件*/</p><p> #define N 1000/*可以存入的客戶(hù)信息個(gè)數(shù)*/</p><p> #define P 0.55/*峰時(shí)電費(fèi)單價(jià)*/</p><p> #define Q 0.35/*谷時(shí)電費(fèi)單價(jià)*/</p><p> int load();/*計(jì)算存入客戶(hù)個(gè)數(shù)*/ </p><
6、p> void menu();/*調(diào)用菜單函數(shù)*/</p><p> void save(int n);/*保存入文件函數(shù)*/</p><p> void fun1(struct dianfei *p);</p><p> void fun2(struct dianfei *p);</p><p> void fun3(str
7、uct dianfei *p);</p><p> void fun4(struct dianfei *p);</p><p> void fun5(struct dianfei *p);</p><p> void fun6(struct dianfei *p);</p><p> struct date</p>&l
8、t;p><b> {</b></p><p> int year;/*年*/</p><p> int month;/*月*/</p><p> int day;/*日*/</p><p><b> };</b></p><p> struct dianfe
9、i </p><p><b> {</b></p><p> char name[10];/*姓名*/</p><p> char sfz[20];/*身份證號(hào)*/</p><p> char zz[20];/*地址*/</p><p> unsigned int dbh;/*電表號(hào)*/
10、</p><p> float fsds[7];/*峰時(shí)讀數(shù)*/</p><p> float gsds[7];/*谷時(shí)讀數(shù)*/</p><p> struct date timeofenter; /*嵌套函數(shù)*/ </p><p> float df[6];/*費(fèi)用*/</p><p> }kehu[N];
11、/*結(jié)構(gòu)體數(shù)組*/</p><p> void main()</p><p><b> {</b></p><p><b> menu();</b></p><p><b> }</b></p><p> void menu()</p&g
12、t;<p><b> {</b></p><p> struct dianfei *p;</p><p><b> p=kehu;</b></p><p> char c; </p><p><b> int i;</b></p>&l
13、t;p><b> do {</b></p><p> system("color B5");</p><p> system("cls");</p><p> for(i=0;i<80;i++) </p><p> printf("*");
14、 </p><p> printf("\t ◆● ①: 開(kāi)戶(hù)業(yè)務(wù) ●◆\n"); </p><p> printf("\t ◆● ②: 銷(xiāo)戶(hù)業(yè)務(wù) ●◆\n");</p><p> printf
15、("\t ◆● ③: 過(guò)戶(hù)業(yè)務(wù) ●◆\n"); </p><p> printf("\t ◆● ④: 計(jì)費(fèi)業(yè)務(wù) ●◆\n");</p><p> printf("\t ◆●
16、 ⑤: 查詢(xún)業(yè)務(wù) ●◆\n"); </p><p> printf("\t ◆● ⑥: 退出系統(tǒng) ●◆\n");</p><p> printf("\t ★★★★★★★★★★★★★★★★★★★★★★★★★\n");</p&g
17、t;<p> printf("\t 請(qǐng)選擇輸入選項(xiàng)[1\\2\\3\\4\\5\\6]:\n");</p><p> printf("\t 輸入:");</p><p> do { c=getchar(); }while(c!='1'&&c!='2'
18、;&&c!='3'&&c!='4'&&c!='5'&&c!='6');</p><p> getchar();</p><p><b> switch(c)</b></p><p><b> {<
19、/b></p><p> case '1': fun1(p); break; </p><p> case '2': fun2(p); break;</p><p> case '3': fun3(p); break; </p><p> case '4
20、': fun4(p); break;</p><p> case '5': fun5(p); break; </p><p> case '6': fun6(p);exit(0); </p><p><b> }</b></p><p> printf("
21、; 按任意鍵返回主菜單:\n"); getchar(); </p><p> }while(1); </p><p><b> }</b></p><p> int load() /*計(jì)算存入客戶(hù)個(gè)數(shù)*/ </p><p><b> {</b></p>&
22、lt;p> FILE *fp;/*文件指針*/</p><p><b> int i;</b></p><p> if ((fp=fopen("G:\\應(yīng)數(shù)111--沈一.txt","rb"))==NULL)/*以只讀方式打開(kāi)一個(gè)二進(jìn)制文件*/</p><p><b> {<
23、/b></p><p> printf("文件打開(kāi)錯(cuò)誤!");</p><p><b> return 0;</b></p><p><b> }</b></p><p> for (i=0;!feof(fp);i++)</p><p>
24、fread(&kehu[i],sizeof(struct dianfei),1,fp);/*數(shù)據(jù)塊讀寫(xiě)函數(shù)*/</p><p> fclose(fp);/*關(guān)閉函數(shù)*/</p><p> return(i-1);</p><p><b> }</b></p><p> void save(int n)/*
25、保存入文件函數(shù)*/</p><p><b> {</b></p><p><b> FILE *fp;</b></p><p> int i,m=1;</p><p> if ((fp=fopen("G:\\應(yīng)數(shù)111--沈一.txt","wb"))=
26、=NULL)/*以只寫(xiě)方式打開(kāi)一個(gè)二進(jìn)制文件*/</p><p><b> {</b></p><p> printf("文件打開(kāi)錯(cuò)誤!\n");</p><p><b> exit(1);</b></p><p><b> }</b></p&
27、gt;<p> for (i=0;i<n;i++)</p><p> fwrite(&kehu[i],sizeof(struct dianfei),1,fp);/*數(shù)據(jù)塊讀寫(xiě)函數(shù)*/</p><p> fclose(fp);</p><p><b> }</b></p><p> v
28、oid fun1(struct dianfei *p)/*開(kāi)戶(hù)業(yè)務(wù)*/</p><p><b> {</b></p><p> system("color BC");</p><p><b> char a;</b></p><p><b> int b;<
29、;/b></p><p><b> FILE *fp;</b></p><p><b> do</b></p><p><b> { </b></p><p> if ((fp=fopen("G:\\應(yīng)數(shù)111--沈一.txt",&quo
30、t;ab"))==NULL)/*以追加方式打開(kāi)一個(gè)二進(jìn)制文件,僅在文件末尾寫(xiě)數(shù)據(jù)*/</p><p><b> {</b></p><p> printf("文件打開(kāi)錯(cuò)誤!\n");</p><p><b> exit(1);</b></p><p><b&
31、gt; }</b></p><p> system("cls");</p><p> printf("*******************************歡迎使用開(kāi)戶(hù)業(yè)務(wù)*********************************\n");</p><p> printf("\t\
32、t請(qǐng)認(rèn)真輸入詳細(xì)信息\n");</p><p> printf("\t\t客戶(hù)姓名:");</p><p> scanf("%s",p->name);</p><p> printf("\t\t身份證號(hào):");</p><p> scanf("%s&
33、quot;,p->sfz);</p><p> printf("\t\t住址:");</p><p> scanf("%s",p->zz);</p><p> printf("\t\t電表號(hào):");</p><p> scanf("%d",&a
34、mp;p->dbh);</p><p> p->fsds[0]=0;</p><p> p->gsds[0]=0;</p><p> printf("\t\t日期:");</p><p> scanf("%d%d%d",&(*p).timeofenter.year,&a
35、mp;(*p).timeofenter.month,&(*p).timeofenter.day);</p><p> printf("\t\t請(qǐng)輸入峰時(shí)讀數(shù): ");</p><p> scanf("%f,%f,%f,%f,%f,%f",&p->fsds[0],&p->fsds[1],&p->fs
36、ds[2],&p->fsds[3],&p->fsds[4],&p->fsds[5]);</p><p> getchar();</p><p> printf("\t\t請(qǐng)輸入谷時(shí)讀數(shù): ");</p><p> scanf("%f,%f,%f,%f,%f,%f",&p-
37、>gsds[0],&p->gsds[1],&p->gsds[2],&p->gsds[3],&p->gsds[4],&p->gsds[5]);</p><p> getchar();</p><p> fwrite(p,sizeof(struct dianfei),1,fp);</p><p&
38、gt; fclose(fp);</p><p> getchar();</p><p> printf("\t\t是否輸入下一條記錄? Y or N.\n");</p><p> printf("\t\t輸入:");</p><p> scanf("%c",&a
39、);</p><p> if(a=='Y'||a=='y') {b=1;p++;}</p><p> else menu();</p><p> }while(b==1);</p><p><b> }</b></p><p> void fun2(str
40、uct dianfei *p)/*銷(xiāo)戶(hù)業(yè)務(wù)*/</p><p><b> {</b></p><p> system("color D5");</p><p> system("cls");</p><p> printf("*******************
41、************歡迎使用銷(xiāo)戶(hù)業(yè)務(wù)*********************************\n");</p><p> int i,n,q=-1;</p><p><b> n=load();</b></p><p><b> char m;</b></p><p>
42、; char sf[20];</p><p> printf("\n請(qǐng)輸入要撤銷(xiāo)客戶(hù)的身份證號(hào):");</p><p><b> gets(sf);</b></p><p> for(i=0;i<n;i++)</p><p> if(strcmp(sf,(p+i)->sfz)==
43、0) </p><p><b> {</b></p><p><b> q=i;</b></p><p> printf("客戶(hù)姓名:%s\n身份證號(hào):%s\n住址:%s\n電表號(hào):%d\n",(p+i)->name,(p+i)->sfz,(p+i)->zz,(p+i)->
44、dbh);</p><p> printf("日期:%d年%d月%d日\(chéng)n",kehu[i].timeofenter.year,kehu[i].timeofenter.month,kehu[i].timeofenter.day);</p><p> printf("\n是否要?jiǎng)h除此記錄: Y or N\n");</p><p&
45、gt; scanf("%c",&m);</p><p> getchar();</p><p> if(m=='y'||m=='Y')</p><p><b> { </b></p><p><b> if(q==-1)</b>
46、</p><p> printf("\n無(wú)此客戶(hù)記錄(%s)",sf);</p><p><b> else </b></p><p><b> {</b></p><p> for(i=q;i<n;i++)</p><p><b&g
47、t; {</b></p><p> kehu[i]=kehu[i+1];</p><p><b> }</b></p><p> printf("\n成功刪除此記錄(%s)!\n",sf);</p><p><b> }</b></p><
48、;p><b> }</b></p><p> else menu();</p><p> }save(n-1);</p><p><b> }</b></p><p> void fun3(struct dianfei *p)/*過(guò)戶(hù)業(yè)務(wù)*/</p><p>
49、<b> {</b></p><p> system("color E2");</p><p> system("cls");</p><p> printf("*******************************歡迎使用過(guò)戶(hù)業(yè)務(wù)************************
50、*********\n");</p><p> char a,b[10],e[10],z[20],aa[20];</p><p> char v,q,m,n,s,c[20];</p><p> unsigned int f,bb;</p><p> int i,nn,yy,rr;</p><p>&l
51、t;b> n=load();</b></p><p> printf("選擇方式登錄:A.姓名。B.身份證號(hào)。C.電表號(hào)。\n");</p><p> printf("請(qǐng)輸入:");</p><p> scanf("%c",&a);</p><p>
52、 getchar();</p><p><b> switch(a)</b></p><p><b> {</b></p><p> case 'A': printf("輸入姓名:");</p><p><b> gets(b);<
53、/b></p><p> for(i=0;i<n;i++)</p><p> if(strcmp(b,(p+i)->name)==0) </p><p><b> {</b></p><p> printf("客戶(hù)姓名:%s\n",(p+i)->name);</
54、p><p> printf("此信息是否修改? Y or N\n");</p><p> scanf("%c",&v);</p><p> getchar();</p><p> if(v=='Y'||v=='y') </p><p>
55、<b> {</b></p><p> printf("修改后為:");</p><p><b> gets(e);</b></p><p> strcpy((*(p+i)).name,e);</p><p><b> }</b></p>
56、;<p> printf("身份證號(hào):%s\n",(p+i)->sfz);</p><p> printf("此信息是否修改? Y or N\n");</p><p> scanf("%c",&q);</p><p> getchar();</p><
57、p> if(q=='Y'||q=='y') </p><p><b> {</b></p><p> printf("修改后為:");</p><p><b> gets(c);</b></p><p> strcpy((p+i)-
58、>sfz,c);</p><p><b> }</b></p><p> printf("住址:%s\n",(p+i)->zz);</p><p> printf("此信息是否修改? Y or N\n");</p><p> scanf("%c&quo
59、t;,&m);</p><p> getchar();</p><p> if(m=='Y'||m=='y') </p><p><b> {</b></p><p> printf("修改后為:");</p><p><b
60、> gets(z);</b></p><p> strcpy((p+i)->zz,z);</p><p><b> }</b></p><p> printf("電表號(hào):%d\n",(p+i)->dbh);</p><p> printf("此信息是否
61、修改? Y or N\n");</p><p> scanf("%c",&n);</p><p> getchar();</p><p> if(n=='Y'||n=='y') </p><p><b> {</b></p>&l
62、t;p> scanf("修改后為%d",&f);</p><p> (p+i)->dbh=f;</p><p><b> }</b></p><p> printf("日期:%d年%d月%d日\(chéng)n",kehu[i].timeofenter.year,kehu[i].timeof
63、enter.month,kehu[i].timeofenter.day);</p><p> printf("此信息是否修改? Y or N\n");</p><p> scanf("%c",&s);</p><p> getchar();</p><p> if(s=='Y
64、39;||s=='y')</p><p><b> {</b></p><p> scanf("修改后為%d年%d月%d日",&nn,&yy,&rr);</p><p> kehu[i].timeofenter.year=nn;</p><p> keh
65、u[i].timeofenter.month=yy;</p><p> kehu[i].timeofenter.day=rr;</p><p> } break;</p><p> } save(n);</p><p> printf("客戶(hù)姓名:%s\n身份證號(hào):%s\n住址:%s\n電表號(hào):%d\
66、n",(p+i)->name,(p+i)->sfz,(p+i)->zz,(p+i)->dbh);</p><p> printf("日期:%d年%d月%d日\(chéng)n",kehu[i].timeofenter.year,kehu[i].timeofenter.month,kehu[i].timeofenter.day);</p><p>&
67、lt;b> break;</b></p><p> case 'B': printf("輸入身份證號(hào):");</p><p><b> gets(aa);</b></p><p> for(i=0;i<=n;i++)</p><p> if(st
68、rcmp(aa,(p+i)->sfz)==0) </p><p><b> {</b></p><p> printf("客戶(hù)姓名:%s\n",(p+i)->name);</p><p> printf("此信息是否修改? Y or N\n");</p><p>
69、; scanf("%c",&v);</p><p> getchar();</p><p> if(v=='Y'||v=='y') </p><p><b> {</b></p><p> printf("修改后為:");</
70、p><p><b> gets(e);</b></p><p> strcpy((*(p+i)).name,e);</p><p><b> }</b></p><p> printf("身份證號(hào):%s\n",(p+i)->sfz);</p><p&
71、gt; printf("此信息是否修改? Y or N\n");</p><p> scanf("%c",&q);</p><p> getchar();</p><p> if(q=='Y'||q=='y') </p><p><b> {&
72、lt;/b></p><p> printf("修改后為:");</p><p><b> gets(c);</b></p><p> strcpy((p+i)->sfz,c);</p><p><b> }</b></p><p>
73、 printf("住址:%s\n",(p+i)->zz);</p><p> printf("此信息是否修改? Y or N\n");</p><p> scanf("%c",&m);</p><p> getchar();</p><p> if(m==
74、9;Y'||m=='y') </p><p><b> {</b></p><p> printf("修改后為:");</p><p><b> gets(z);</b></p><p> strcpy((p+i)->zz,z);</p
75、><p><b> }</b></p><p> printf("電表號(hào):%d\n",(p+i)->dbh);</p><p> printf("此信息是否修改? Y or N\n");</p><p> scanf("%c",&n);<
76、/p><p> getchar();</p><p> if(n=='Y'||n=='y') </p><p><b> {</b></p><p> scanf("修改后為%d",&f);</p><p> (p+i)->d
77、bh=f;</p><p><b> }</b></p><p> printf("日期:%d年%d月%d日\(chéng)n",kehu[i].timeofenter.year,kehu[i].timeofenter.month,kehu[i].timeofenter.day);</p><p> printf("此信息
78、是否修改? Y or N\n");</p><p> scanf("%c",&s);</p><p> getchar();</p><p> if(s=='Y'||s=='y')</p><p><b> {</b></p>&
79、lt;p> scanf("修改后為%d年%d月%d日",&nn,&yy,&rr);</p><p> kehu[i].timeofenter.year=nn;</p><p> kehu[i].timeofenter.month=yy;</p><p> kehu[i].timeofenter.day=rr;
80、</p><p> } break;</p><p> } save(n);</p><p> printf("客戶(hù)姓名:%s\n身份證號(hào):%s\n住址:%s\n電表號(hào):%d\n",(p+i)->name,(p+i)->sfz,(p+i)->zz,(p+i)->dbh);</p>
81、<p> printf("日期:%d年%d月%d日\(chéng)n",kehu[i].timeofenter.year,kehu[i].timeofenter.month,kehu[i].timeofenter.day);</p><p><b> break;</b></p><p> case 'C': printf
82、("輸入電表號(hào):");</p><p> scanf("%lf",&bb);</p><p> getchar();</p><p> for(i=0;i<=n;i++)</p><p> if(bb==(p+i)->dbh) </p><p><
83、;b> {</b></p><p> printf("客戶(hù)姓名:%s\n",(p+i)->name);</p><p> printf("此信息是否修改? Y or N\n");</p><p> scanf("%c",&v);</p><p>
84、; getchar();</p><p> if(v=='Y'||v=='y') </p><p><b> {</b></p><p> printf("修改后為:");</p><p><b> gets(e);</b></p&
85、gt;<p> strcpy((*(p+i)).name,e);</p><p><b> }</b></p><p> printf("身份證號(hào):%s\n",(p+i)->sfz);</p><p> printf("此信息是否修改? Y or N\n");</p>
86、;<p> scanf("%c",&q);</p><p> getchar();</p><p> if(q=='Y'||q=='y') </p><p><b> {</b></p><p> printf("修改后為:&q
87、uot;);</p><p><b> gets(c);</b></p><p> strcpy((p+i)->sfz,c);</p><p><b> }</b></p><p> printf("住址:%s\n",(p+i)->zz);</p>
88、<p> printf("此信息是否修改? Y or N\n");</p><p> scanf("%c",&m);</p><p> getchar();</p><p> if(m=='Y'||m=='y') </p><p><b
89、> {</b></p><p> printf("修改后為:");</p><p><b> gets(z);</b></p><p> strcpy((p+i)->zz,z);</p><p><b> }</b></p><
90、;p> printf("電表號(hào):%d\n",(p+i)->dbh);</p><p> printf("此信息是否修改? Y or N\n");</p><p> scanf("%c",&n);</p><p> getchar();</p><p>
91、if(n=='Y'||n=='y') </p><p><b> {</b></p><p> scanf("修改后為%d",&f);</p><p> (p+i)->dbh=f;</p><p><b> }</b><
92、/p><p> printf("日期:%d年%d月%d日\(chéng)n",kehu[i].timeofenter.year,kehu[i].timeofenter.month,kehu[i].timeofenter.day);</p><p> printf("此信息是否修改? Y or N\n");</p><p> scanf(&
93、quot;%c",&s);</p><p> getchar();</p><p> if(s=='Y'||s=='y')</p><p><b> {</b></p><p> scanf("修改后為%d年%d月%d日",&nn,&a
94、mp;yy,&rr);</p><p> kehu[i].timeofenter.year=nn;</p><p> kehu[i].timeofenter.month=yy;</p><p> kehu[i].timeofenter.day=rr;</p><p> } break;</p><p
95、> } save(n);</p><p> printf("客戶(hù)姓名:%s\n身份證號(hào):%s\n住址:%s\n電表號(hào):%d\n",(p+i)->name,(p+i)->sfz,(p+i)->zz,(p+i)->dbh);</p><p> printf("日期:%d年%d月%d日\(chéng)n",kehu[i
96、].timeofenter.year,kehu[i].timeofenter.month,kehu[i].timeofenter.day);</p><p><b> break;</b></p><p> default :printf("輸入錯(cuò)誤");</p><p><b> }</b>&
97、lt;/p><p><b> }</b></p><p> void fun4(struct dianfei *p)/*計(jì)費(fèi)業(yè)務(wù)*/</p><p><b> {</b></p><p> system("color 24");</p><p> s
98、ystem("cls");</p><p> printf("*******************************歡迎使用計(jì)費(fèi)業(yè)務(wù)*********************************\n");</p><p><b> FILE *fp;</b></p><p> if ((
99、fp=fopen("G:\\應(yīng)數(shù)111--沈一.txt","ab"))==NULL)</p><p><b> {</b></p><p> printf("文件打開(kāi)錯(cuò)誤!\n");</p><p><b> exit(1);</b></p>
100、<p><b> }</b></p><p> int i,g,t,q,n[12],m;</p><p><b> m=load();</b></p><p> char c[20],a;</p><p> int r[12];</p><p> flo
101、at aa,bb;</p><p> printf("請(qǐng)輸入您的身份證號(hào): ");</p><p><b> gets(c);</b></p><p> for(i=0;i<m;i++)</p><p><b> {</b></p><p>
102、 if(strcmp(c,(p+i)->sfz)==0)</p><p><b> {</b></p><p> printf("姓名:%s\n",(p+i)->name);</p><p> printf("身份證號(hào) %s\n",(p+i)->sfz);</p>
103、<p> printf("地址 %s\n",(p+i)->zz);</p><p> printf("電表號(hào) %d\n",(p+i)->dbh);</p><p> printf("%d年:%d月%d日\(chéng)n",(p+i)->timeofenter.year,(p+i)->timeofente
104、r.month,(p+i)->timeofenter.day);</p><p><b> g=i;</b></p><p> q=(p+i)->timeofenter.month;</p><p><b> }</b></p><p><b> }</b>
105、</p><p> r[0]=(p+g)->timeofenter.year;</p><p> for(i=0;i<12;i++)</p><p><b> {</b></p><p><b> n[i]=q+i;</b></p><p> if(n[
106、i]>12)</p><p><b> {</b></p><p> n[i]=n[i]-12;</p><p> r[i]=r[0]+1;</p><p><b> }</b></p><p> else r[i]=r[0];</p><
107、p><b> }</b></p><p> scanf("%f%f",&aa,&bb);</p><p> getchar();</p><p> for(i=0;i<5;i++)</p><p> (p+g)->fsds[i]=(p+g)->fsds
108、[i+1];</p><p> for(i=0;i<5;i++)</p><p> (p+g)->gsds[i]=(p+g)->gsds[i+1];</p><p> (p+g)->fsds[6]=aa;(p+g)->gsds[6]=bb;</p><p> fwrite(p,sizeof(struct
109、dianfei),1,fp);</p><p> fclose(fp);</p><p> printf("是否繼續(xù)計(jì)算電費(fèi) Y or N:\n ");</p><p> scanf("%c",&a);</p><p> getchar();</p><p>
110、if(a=='y'||a=='Y')</p><p><b> {</b></p><p> for(t=0;t<6;t++)</p><p> (p+g)->df[t]=((p+g)->fsds[t+1]-(p+g)->fsds[t])*P+((p+g)->gsds[t+1]
111、-(p+g)->gsds[t])*Q;</p><p><b> }</b></p><p> printf("%d年%d月至%d年%d月電費(fèi)為: %f\n",r[0],n[0],r[1],n[1],(p+g)->df[0]);</p><p> printf("%d年%d月至%d年%d月電費(fèi)為:
112、 %f\n",r[2],n[2],r[3],n[3],(p+g)->df[1]);</p><p> printf("%d年%d月至%d年%d月電費(fèi)為: %f\n",r[4],n[4],r[5],n[5],(p+g)->df[2]);</p><p> printf("%d年%d月至%d年%d月電費(fèi)為: %f\n",r[6]
113、,n[6],r[7],n[7],(p+g)->df[3]);</p><p> printf("%d年%d月至%d年%d月電費(fèi)為: %f\n",r[8],n[8],r[9],n[9],(p+g)->df[4]);</p><p> printf("%d年%d月至%d年%d月電費(fèi)為: %f\n",r[10],n[10],r[11],n[
114、11],(p+g)->df[5]);</p><p><b> }</b></p><p> void fun5(struct dianfei *p)/*查詢(xún)業(yè)務(wù)*/</p><p><b> {</b></p><p> system("color 12");&l
115、t;/p><p> system("cls");</p><p> printf("*******************************歡迎使用查詢(xún)業(yè)務(wù)*********************************\n");</p><p> char a,b[10],c[20];</p><
116、;p> unsigned int d;</p><p><b> int i,n;</b></p><p><b> n=load();</b></p><p> printf("選擇方式查找:A.姓名。B.身份證號(hào)。C.電表號(hào)。\n");</p><p> pr
117、intf("輸入:");</p><p> scanf("%c",&a);</p><p> getchar();</p><p><b> switch(a)</b></p><p><b> {</b></p><p&g
118、t; case 'A': printf("輸入姓名:");</p><p><b> gets(b);</b></p><p> for(i=0;i<n;i++)</p><p> if(strcmp(b,kehu[i].name)==0) </p><p> {
119、printf("客戶(hù)姓名:%s\n身份證號(hào):%s\n住址:%s\n電表號(hào):%d\n",(p+i)->name,(p+i)->sfz,(p+i)->zz,(p+i)->dbh);</p><p> printf("日期:%d年%d月%d日\(chéng)n",kehu[i].timeofenter.year,kehu[i].timeofenter.month,ke
120、hu[i].timeofenter.day);</p><p><b> }break;</b></p><p> case 'B': printf("輸入身份證號(hào):");</p><p><b> gets(c);</b></p><p> fo
121、r(i=0;i<n;i++)</p><p> if(strcmp(c,(p+i)->sfz)==0) </p><p> {printf("客戶(hù)姓名:%s\n身份證號(hào):%s\n住址:%s\n電表號(hào):%d\n",(p+i)->name,(p+i)->sfz,(p+i)->zz,(p+i)->dbh);</p><
122、;p> printf("日期:%d年%d月%d日\(chéng)n",kehu[i].timeofenter.year,kehu[i].timeofenter.month,kehu[i].timeofenter.day);</p><p><b> }break;</b></p><p> case 'C': printf(&
123、quot;輸入電表號(hào):");</p><p> scanf("%d",&d);</p><p> getchar();</p><p> for(i=0;i<n;i++)</p><p> if(d==(p+i)->dbh) </p><p> {printf
124、("客戶(hù)姓名:%s\n身份證號(hào):%s\n住址:%s\n電表號(hào):%d\n",(p+i)->name,(p+i)->sfz,(p+i)->zz,(p+i)->dbh);</p><p> printf("日期:%d年%d月%d日\(chéng)n",kehu[i].timeofenter.year,kehu[i].timeofenter.month,kehu[i].
125、timeofenter.day);</p><p><b> }break;</b></p><p> default : printf("輸入錯(cuò)誤!\n");</p><p><b> }</b></p><p><b> }</b><
126、;/p><p> void fun6(struct dianfei *p)</p><p><b> {</b></p><p> printf("您已退出系統(tǒng)");</p><p> printf("感謝你的使用!");</p><p> }
127、 </p><p><b> 2.界面</b></p><p><b> 1)主菜單</b></p><p><b> 2)開(kāi)戶(hù)業(yè)務(wù)</b></p><p><b> 3)銷(xiāo)戶(hù)業(yè)務(wù)</b></p><p>
128、<b> 4)過(guò)戶(hù)業(yè)務(wù)</b></p><p><b> 5)計(jì)費(fèi)業(yè)務(wù)</b></p><p><b> 6)查詢(xún)業(yè)務(wù)</b></p><p><b> 7)退出系統(tǒng)</b></p><p><b> 日志。</b><
129、/p><p> 2012.6.15星期五 晴</p><p> 今天是程序設(shè)計(jì)第一天,感覺(jué)不是太陌生,和以前編程差不多,只是時(shí)間長(zhǎng)點(diǎn)而已,第一回編這么長(zhǎng)的程序,像是個(gè)挑戰(zhàn)。</p><p> 我們是第五組,課題是電費(fèi)管理系統(tǒng),萬(wàn)幸與我們生活密切相關(guān),看了看設(shè)計(jì)要求,感覺(jué)有難度,但還在情理之中。今天主要列了個(gè)提綱,以后幾天的安排,還有整個(gè)程序的主函數(shù)和六個(gè)調(diào)用函數(shù)的
130、作用,把整個(gè)框架打好,接下來(lái)幾天只要按照計(jì)劃進(jìn)行就好。</p><p> 最后我想說(shuō),我們組是最棒的,烏拉!?。。?lt;/p><p> 2012.6.18 星期一 雨</p><p> 今天是程序設(shè)計(jì)第二天,本來(lái)以為還可以應(yīng)付的程序現(xiàn)在親身操作起來(lái)還是挺有難度的,有點(diǎn)灰心喪氣,自信心受挫,收拾心情后,決定慢慢來(lái),一步一個(gè)腳印。今天將第一第二個(gè)業(yè)務(wù)完成了,期間不
131、會(huì)的咨詢(xún)了老師,在經(jīng)過(guò)自己琢磨后解決了。</p><p> 慢慢來(lái),腳踏實(shí)地,Yes we can!</p><p><b> 星期二 陰</b></p><p> 今天已經(jīng)編好了三個(gè)業(yè)務(wù),但把單個(gè)提出來(lái)運(yùn)行的時(shí)候還有問(wèn)題,今天在第一個(gè)問(wèn)題的地方花了好多時(shí)間,后來(lái)請(qǐng)教了其他同學(xué),最終解決了,不容易啊。改錯(cuò)才是最難得。</p>
132、<p> 團(tuán)結(jié)就是力量,合作方能成功。</p><p> 2012.6.20 星期三 陰</p><p> 今天把各個(gè)函數(shù)單獨(dú)運(yùn)行下,結(jié)果出現(xiàn)了好多錯(cuò)誤,有的該出的不讓你出入就結(jié)束了,學(xué)會(huì)了用scanf輸入的時(shí)候要用getchar來(lái)吃掉回車(chē),后來(lái)運(yùn)行下就可以了,費(fèi)了不少時(shí)間,今天做的有點(diǎn)郁悶。</p><p> 該問(wèn)的時(shí)候還是要問(wèn)的啊。<
133、;/p><p> 2012.6.21上午 星期四 晴</p><p> 今天上午運(yùn)行了銷(xiāo)戶(hù)業(yè)務(wù),但銷(xiāo)戶(hù)的時(shí)候,運(yùn)行過(guò)后,已經(jīng)被銷(xiāo)戶(hù)的客戶(hù)還是可以通過(guò)查詢(xún)找到他,一直找不到原因,后來(lái)才知道銷(xiāo)戶(hù)后還是要保存數(shù)據(jù),也就是更新數(shù)據(jù)才完成了。</p><p> 2012.6.21下午 星期四 晴</p><p> 今天下午添加了計(jì)費(fèi)業(yè)務(wù),這
134、個(gè)比較麻煩,要把日期(年,月,日)還有電費(fèi)都要算進(jìn)去,電費(fèi)只要通過(guò)公式后一個(gè)讀數(shù)減去前一個(gè)讀數(shù)再乘個(gè)單價(jià)峰時(shí)谷時(shí)相加就可以,一開(kāi)始運(yùn)行的時(shí)候會(huì)出現(xiàn)負(fù)數(shù)后來(lái)想了很久才解決了。</p><p><b> 星期一 晴</b></p><p> 今天把整個(gè)程序都完整連接一下,再把出現(xiàn)的小問(wèn)題都解決了,今天任務(wù)比較輕松。</p><p> 201
135、2.6.26上午 星期二 雨</p><p> 上午運(yùn)行時(shí)看起來(lái)比較難看,所以把程序裝飾一下,用systom(“color 10”),還有分頻的功能。總體運(yùn)行良好,放心了。還有文件的打開(kāi),要把保存的文件放在U盤(pán)里準(zhǔn)備下午答辯。</p><p> 2012.6.26下午 星期二 雨</p><p> 下午答辯不是很順利,原因是課程的要求沒(méi)有搞清楚,后來(lái)改
136、了下可以運(yùn)行了。不容易啊。這么多天的成果,今天終于結(jié)束了。</p><p><b> 總結(jié)</b></p><p> 經(jīng)過(guò)這么多天的編程,我們還是很有收獲的,雖然過(guò)程</p><p> 比較漫長(zhǎng)而且難熬,不過(guò)一切都過(guò)去了。</p><p> 通過(guò)這次課程設(shè)計(jì),使我對(duì)C語(yǔ)言有了更進(jìn)一步的認(rèn)識(shí)和了解,要想學(xué)好它要重在
137、實(shí)踐,要通過(guò)不斷的上機(jī)操作才能更好地學(xué)習(xí)它,我也發(fā)現(xiàn)我的好多不足之處,首先是自己在指法上還不行,經(jīng)常按錯(cuò)字母,通過(guò)學(xué)習(xí)也有所改進(jìn);再有對(duì)C語(yǔ)言的一些標(biāo)準(zhǔn)庫(kù)函數(shù)不太了解,還有對(duì)函數(shù)調(diào)用的正確使用不夠熟悉,還有對(duì)C語(yǔ)言中經(jīng)常出現(xiàn)的錯(cuò)誤也不了解,通過(guò)實(shí)踐的學(xué)習(xí),我認(rèn)識(shí)到學(xué)好計(jì)算機(jī)要重視實(shí)踐操作,不僅僅是學(xué)習(xí)C語(yǔ)言,還是其它的語(yǔ)言,以及其它的計(jì)算機(jī)方面的知識(shí)都要重在實(shí)踐,所以后在學(xué)習(xí)過(guò)程中,我會(huì)更加注視實(shí)踐操作,使自己便好地學(xué)好計(jì)算機(jī)。<
138、/p><p> 在課程設(shè)計(jì)過(guò)程中,收獲知識(shí),提高能力的同時(shí),我也學(xué)到了很多人生的哲理,懂得怎么樣去制定計(jì)劃,怎么樣去實(shí)現(xiàn)這個(gè)計(jì)劃,并掌握了在執(zhí)行過(guò)程中怎么樣去克服心理上的不良情緒。因此在以后的生活和學(xué)習(xí)的過(guò)程中,我一定會(huì)把課程設(shè)計(jì)的精神帶到生活中,不畏艱難,勇往直前!</p><p><b> 參考文獻(xiàn)</b></p><p><b>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 水電費(fèi)管理系統(tǒng)課程設(shè)計(jì)
- 課程設(shè)計(jì)---電費(fèi)代繳系統(tǒng)
- c++程序設(shè)計(jì)課程設(shè)計(jì)--電費(fèi)管理系統(tǒng)
- c++程序設(shè)計(jì)課程設(shè)計(jì)--電費(fèi)管理系統(tǒng)
- 面向?qū)ο笳n程設(shè)計(jì)-高校水電費(fèi)管理系統(tǒng)__
- c++課程設(shè)計(jì)高校水電費(fèi)管理系統(tǒng)
- c++課程設(shè)計(jì)高校水電費(fèi)管理系統(tǒng)
- web課程設(shè)計(jì)--課程管理系統(tǒng)
- 《面向?qū)ο笳n程設(shè)計(jì)》課程設(shè)計(jì)---媒體管理系統(tǒng)
- 課程設(shè)計(jì)---課程設(shè)計(jì)圖書(shū)管理系統(tǒng)
- c課程設(shè)計(jì)---圖書(shū)管理系統(tǒng)課程設(shè)計(jì)
- 課程設(shè)計(jì)-訂單式銷(xiāo)售管理系統(tǒng)課程設(shè)計(jì)
- 倉(cāng)庫(kù)管理系統(tǒng)課程設(shè)計(jì)
- 選課管理系統(tǒng)課程設(shè)計(jì)
- 倉(cāng)庫(kù)管理系統(tǒng)課程設(shè)計(jì)
- 酒店管理系統(tǒng)課程設(shè)計(jì)
- 教務(wù)管理系統(tǒng)課程設(shè)計(jì)
- 課程設(shè)計(jì)--超市管理系統(tǒng)
- 賓館管理系統(tǒng)課程設(shè)計(jì)
- 試卷管理系統(tǒng)(課程設(shè)計(jì))
評(píng)論
0/150
提交評(píng)論