版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、長(zhǎng)沙理工大學(xué)2010C語言實(shí)驗(yàn)報(bào)告參考答案實(shí)驗(yàn)一 熟悉C語言程序開發(fā)環(huán)境及數(shù)據(jù)描述四、程序清單1編寫程序?qū)崿F(xiàn)在屏幕上顯示以下結(jié)果: The dress is long The shoes are big The trousers are black答案:#include<stdio.h>main()printf("The dress is longn");printf("The shoes are bign");printf("The trousers are blackn");2改錯(cuò)題(將正確程序?qū)懺谥付ㄎ恢茫┱_的程序
2、為:#include <stdio.h>main() printf("商品名稱價(jià)格n"); printf("TCL電視機(jī)¥7600n"); printf("美的空調(diào) ¥2000n"); printf("SunRose鍵盤¥50.5n");2編寫程序: a=150,b=20,c=45,編寫求a/b、a/c(商)和a%b、a%c(余數(shù))的程序。答案:#include<stdio.h>main()int a,b,c,x,y;a=150;b=20;c=45;x=a/b;y=a/c;printf(&q
3、uot;a/b的商=%dn",x);printf("a/c的商=%dn",y);x=a%b;y=a%c;printf("a/b的余數(shù)=%dn",x);printf("a/c的余數(shù)=%dn",y);4. 設(shè)變量a的值為0,b的值為-10,編寫程序:當(dāng)a>b時(shí),將b賦給c;當(dāng)a<=b時(shí),將a賦給c。(提示:用條件運(yùn)算符)答案:#include<stdio.h>main()int a,b,c;a=0;b=-10;c= (a>b) ? b:a;printf("c = %dn",c);
4、五、調(diào)試和測(cè)試結(jié)果1.編譯、連接無錯(cuò),運(yùn)行后屏幕上顯示以下結(jié)果: The dress is long The shoes are big The trousers are black3、 編譯、連接無錯(cuò),運(yùn)行后屏幕上顯示以下結(jié)果:a/b的商=7a/c的商=3a/b的余數(shù)=10a/c的余數(shù)=154. 編譯、連接無錯(cuò),運(yùn)行后屏幕上顯示以下結(jié)果:c =-10實(shí)驗(yàn)二 順序結(jié)構(gòu)程序設(shè)計(jì)四、程序清單1鍵盤輸入與屏幕輸出練習(xí)問題1 D 。問題2 改printf("%c,%c,%dn",a,b,c);這條語句 改成:printf("%c %c %dn",a,b,c);問
5、題3 改scanf("%c%c%d",&a,&b,&c);這條語句 改為:scanf("%c,%c,%d",&a,&b,&c);問題4 改printf("%c,%c,%dn",a,b,c);這條語句 改成:printf("%c %c %dn",a,b,c);2(1)從鍵盤輸入兩個(gè)八進(jìn)制數(shù),計(jì)算兩數(shù)之和并分別用十進(jìn)制和十六進(jìn)制數(shù)形式輸出。#include <stdio.h>int main()int a,b,c; printf("Enter a a
6、nd b:");scanf("%o%o",&a,&b);c = a + b;printf("d:%dn",c);printf("x:%xn",c);return 0;2(2)編寫程序:從鍵盤輸入兩個(gè)實(shí)數(shù)a和x,按公式計(jì)算并輸出y的值: #include<stdio.h>#include<math.h>int main() float a,x,y; scanf("%f%f",&a,&x);y = pow(a,5) + sin(a*x) + exp(a*
7、x) + log(a+x);printf("y=%fn",y);return 0;3改錯(cuò)題正確的程序?yàn)椋?include <stdio.h>main()int a,b,c,s;scanf("%d%d%d",&a,&b,&c);s=a+b+c;printf("%d=%d+%d+%dn",s,a,b,c); /*輸出s=a+b+c*/printf("%d+%d+%d=%dn",a,b,c,s); /*輸出a+b+c=s*/五、調(diào)試和測(cè)試結(jié)果2(1) 輸入: 12 14 輸出:26 1
8、a2(2) 輸入:1 0輸出:2.000000實(shí)驗(yàn)三 選擇結(jié)構(gòu)程序設(shè)計(jì)四、設(shè)計(jì)流程(算法描述) (請(qǐng)寫出上機(jī)內(nèi)容2(2)題的算法描述) 主要是兩兩比較,然后得出最大的數(shù)五、程序清單2(1) 輸入整數(shù)x和a,計(jì)算并輸出下列分段函數(shù)f(x)的值(保留2位小數(shù)),請(qǐng)調(diào)用log函數(shù)求自然對(duì)數(shù),調(diào)用fabs函數(shù)求絕對(duì)值。程序?yàn)椋?include <stdio.h>#include <math.h>main()int x,a;double y;printf("Enter a and x:");scanf("%d%d",&a,&
9、x);if(fabs(x)!=a)y=log(fabs(a+x)/(a-x)/(2*a);elsey=0;printf("a=%d,f(%d)=%.2fn",a,x,y); (2)輸入a、b、c三個(gè)整數(shù),輸出最大數(shù)。#include<stdio.h>main() int a,b,c,x;scanf("%d%d%d",&a,&b,&c);if(a>=b)x=a;elsex=b;if (x<c)x=c;printf("the max number is:%dn",x);return 0;3改
10、錯(cuò)題正確程序?yàn)椋?include <stdio.h>main()double n;printf("Enter n:");scanf("%lf",&n);if(n<0)printf("n is less than 0n");else if(n=0)printf("n is equal to 0n");elseprintf("n is greater 0n");六、調(diào)試和測(cè)試結(jié)果2(1) Enter a and x:5 6a=5,f(6)=0.24Enter a and x
11、:5 5a=5,f(5)=0.002(2) 輸入:3 2 1 輸出:the max number is:3 輸入:2 3 1 輸出:the max number is:3輸入:1 2 3 輸出:the max number is:3實(shí)驗(yàn)四 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)四、設(shè)計(jì)流程(算法描述)(請(qǐng)寫出上機(jī)內(nèi)容2的算法描述)首先求出每一個(gè)給定數(shù)的所有因子和,然后從2到5000循環(huán),那一個(gè)數(shù)x與因子之和相等,就是完數(shù)。五、程序清單1編寫程序:求1+2+3+100和12+22+33+1002。#include<stdio.h>#include<math.h>int main() int i
12、,j,sum;sum = 0;for (i=1;i<=100;i+)sum += i;printf("the sum is:%dn",sum);sum =0;for(i=1;i<=100;i+)j=pow(i,2);sum +=j;printf("the square sum is:%dn",sum);return 0; 2一個(gè)數(shù)如果恰好等于它的因子之和,這個(gè)數(shù)就稱為“完數(shù)”,編寫程序找出25000中的所有完數(shù)。 #include<stdio.h>#include<math.h> main() int i,j,sum=
13、0;for(i=2;i<=5000;i+) /遍歷從2到5000的所有數(shù)sum = 0; for (j=1;j<=i/2;j+) /找出給定整數(shù)X的所有因子和if(i%j = 0)sum +=j;if(i = sum) /sum為因子和,如果和i相等,則輸出printf("%d ",i);return 0; 3. 改錯(cuò)題正確的程序?yàn)椋?include <stdio.h>main()int n=1;int find=0;while(!find)if(n%5=1 && n%6=5 && n%7=4 && n
14、%11=10)printf("n=%dn", n);find =1;n+;六、調(diào)試和測(cè)試結(jié)果1:結(jié)果:the sum is:5050 the square sum is:3383502:結(jié)果:6 28 496實(shí)驗(yàn)五 函數(shù)和預(yù)處理命令四、設(shè)計(jì)流程(算法描述)(請(qǐng)寫出上機(jī)內(nèi)容1的算法描述)利用循環(huán)將m乘n次五、程序清單1編寫自定義函數(shù)long power(int m,int n),計(jì)算的值。利用此函數(shù)編程序?qū)崿F(xiàn):從鍵盤輸入兩個(gè)整數(shù)m和n,計(jì)算出的值。 #include<stdio.h>long power(int m,int n)/要返回的是long型int i;l
15、ong s;/因?yàn)槭且祷氐臄?shù),所以這里也定義為long型s=1;for(i=1;i<=n;i+)s *=m;return s;int main(void)int m,n;scanf("%d%d",&m,&n);printf("s=%ldn",power ( m,n);return 0; 2、寫出兩個(gè)函數(shù),分別求兩個(gè)整數(shù)的最大公約數(shù)和最小公倍數(shù),用主函數(shù)調(diào)用這兩個(gè)函數(shù),并輸出結(jié)果,兩個(gè)整數(shù)由鍵盤輸入。1 源程序如下:int zdgys(int n1,int n2)int y,i; for(i=n2;i<=1;i-) if(n1
16、%i=0&&n2%i=0) y=i;break; return y;int zxgbs(int n1,int n2)int y,i; for(i=n1;i<=n1*n2;i+) if(i%n1=0&&i%n2=0) y=i;break; return y;main()int n1,n2,t; scanf("n1=%d n2=%d",&n1,&n2); if(n1<n2) t=n1;n1=n2;n2=t; printf("zdgys=%d zxgbs=%d",zdgys(n1,n2),zxgbs(
17、n1,n2);3、改錯(cuò)題正確程序如下:#include <stdio.h>int fact(int n);int multi(int n);main()int i; double sum,item,eps; eps=1E-6; sum=1; item=1; for(i=1;item>=eps;i+)item=fact(i)/multi(2*i+1); sum=sum+item; printf(“PI=%0.5lfn”,sum*2);return 0;int fact(int n)int i; int res=1; for(i=0;i<=n;i+) res=res*i;r
18、eturn res;int multi(int n)int i; int res=1; for(i=3;i<=n;i=i+2) res=res*i;return res; 六、調(diào)試和測(cè)試結(jié)果1、輸入:2 3 輸出:s=82、 輸入:n1=24 n2=16輸出:zdgys=8 zxgbs=482. 3、輸出結(jié)果為:實(shí)驗(yàn)六 數(shù)組四、設(shè)計(jì)流程(算法描述)(請(qǐng)寫出上機(jī)內(nèi)容1的算法描述)設(shè)置兩個(gè)變量分別指示頭和尾。第一個(gè)和最后一個(gè)元素值互換,然后頭和尾變量向里移動(dòng),最終到兩變量相遇為止。五、程序清單1編寫程序:從鍵盤輸入一串整數(shù)保存到數(shù)組中,調(diào)用函數(shù)antitone()將數(shù)組反序輸出。自定義函數(shù)v
19、oid antitone(int a,int n)實(shí)現(xiàn)將數(shù)組中的n個(gè)數(shù)據(jù)按逆序存放。 void antitone(int a,int n)int i,j;int k;i=0;j=n-1;while(i<j)k=ai;ai=aj;aj=k;i +=1;j -=1;2已知某數(shù)列的前兩項(xiàng)為2和3,其后每一項(xiàng)為其前兩項(xiàng)之積。編程實(shí)現(xiàn):從鍵盤輸入一個(gè)整數(shù)x,判斷并輸出x最接近數(shù)列的第幾項(xiàng)?#include<stdio.h>#include<math.h>void Mad(int a,int n)int i;a0=2;a1=3;for(i=2;i<n;i+)ai = a
20、i-1 * ai-2;int main(void)int a100,x,k1,k2;int i;Mad(a,100);/產(chǎn)生序列printf("input x:");scanf("%d",&x);i=0;for(;x>ai;i+);k1 = abs(x-ai-1);k2 = abs(x-ai);if(k1>k2)printf(" x 最接近第%d項(xiàng)n",i+1);elseprintf("x 最接近第%d項(xiàng)n",i);return 0; 3、源程序如下:#include <stdio.h&g
21、t;main() char c15;int i,word=0,num=0,space=0;for(i=0;i<=14;i+)scanf("%c",&ci);for(i=0;i<=14;i+)if(ci=' ') space+; if(ci>='0'&&ci<='9') num+;if(ci>'a'&&ci<'z') word+;printf("字符:%d 數(shù)字:%d 空格:%dn",word,num,
22、space);六、調(diào)試和測(cè)試結(jié)果1、輸入:1 2 3 4 5輸出:5 4 3 2 12、輸入:110輸出:x 最接近第6項(xiàng)3、輸入:sd234kj64jk mjk輸出:字符:9數(shù)字:5空格:1實(shí)驗(yàn)七 數(shù)組和函數(shù)綜合程序設(shè)計(jì)四、程序清單(請(qǐng)寫出上機(jī)內(nèi)容2、3中源程序)2、 原程序求得的是下三角形,經(jīng)改進(jìn)調(diào)試之后的程序?yàn)椋?#include <stdio.h>#define N 6main()int i,j,sum=0;int aNN=0;printf("input 5×5 data:n");for(i=1;i<N;i+) printf("
23、Input the %d line data:n",i);for(j=1;j<N;j+)scanf("%d",&aij);for(i=1;i<N;i+)for(j=1;j<N;j+)printf("%5d",aij);printf("n"); for(i=1;i<N;i+)for(j=N-1;j>=i;j-)sum=sum+aij;printf("sum=%dn",sum);3、void fun(int ttMN,int ppN) int i,j,max; for(j
24、=0; j<N; j+ ) max=tt0j; for(i=1;i<M;i+) if(ttij>max)max=ttij; ppj=max; 五、調(diào)試和測(cè)試結(jié)果(寫出上機(jī)內(nèi)容1中填空的內(nèi)容)1、(1) sum=0 (2) tii (3) 1 實(shí)驗(yàn)八 指針?biāo)?、程序清?請(qǐng)寫出上機(jī)內(nèi)容2中的函數(shù))求出每個(gè)位上的數(shù)字,然后放在千位上的數(shù)字乘以1000,放在百位上的數(shù)字乘以100,放在10位上的數(shù)字乘以10,然后相加。void fun(int a,int b,long *c) int a10,a1,b10,b1;a10=a/10;a1=a%10;b10=b/10;b1=b%10;*c
25、 = a10 * 1000 + b1 * 100 + a1 *10 + b10;五、調(diào)試和測(cè)試結(jié)果(請(qǐng)寫出上機(jī)內(nèi)容1的輸出結(jié)果)1(1) 輸出結(jié)果為:8,7,7,8(2) 6(3) (1)x=10 y=20(2)x=20 y=10 (4) 【1】int *p 【2】&ai 【3】 pi 輸入:1 2 3 4 5 6 輸出: 1 2 3 4 5 6實(shí)驗(yàn)九 指針、函數(shù)和數(shù)組綜合程序設(shè)計(jì)設(shè)計(jì)流程(算法描述)(請(qǐng)寫出上機(jī)內(nèi)容2中的算法描述)當(dāng) *(x+i)!=0i=0*(x+i)= =yTreturn 1i=i+1return 0F五、程序清單1已知一個(gè)整型數(shù)組a5,其各元素值為4,6,8,1
26、0,12。使用指針編程求數(shù)組元素之積。#include <stdio.h>int main(void)int a=4,6,8,10,12,sum;int *p;sum=1;for(p=a;p<a+5;p+)sum *= *p;printf("%dn",sum);return 0; 2定義函數(shù)int f(char *x, char y)判斷x所指的字符串中是否包含字符y,若是則函數(shù)返回1,否則返回1。int f(char *x, char y)char *p;for(p=x;*p!='0'p+)if(*p = y)printf("%
27、cn",*p);return 1;return 0; 3.定義函數(shù)void f(float x, int *y, float *z)將x的整數(shù)部分存于y所指的存儲(chǔ)單元,x的小數(shù)部分存于x所指的存儲(chǔ)單元。void f(float x, int *y, float *z)*y=(int)x;*z=x - *y;六、調(diào)試和測(cè)試結(jié)果測(cè)試結(jié)果正確實(shí)驗(yàn)十 結(jié)構(gòu)體四、程序清單(請(qǐng)寫出上機(jī)內(nèi)容1的源程序和上機(jī)內(nèi)容2中的函數(shù))1、上機(jī)內(nèi)容1的源程序#include<stdio.h>#include <string.h>#define FORMAT "%0dt%st%d
28、t%cn"struct student int num; char name20;int age; char sex; ;main() void input(struct student stu ); void stat(struct student stu);struct student stu4;int i; input(stu); for(i=0;i<4;i+) printf(FORMAT,stui.num,,stui.age,stui.sex); stat(stu);void input(struct student stu)int i;for(i=0
29、;i<4;i+)scanf("%d",&stui.num);getchar();scanf("%s",&);getchar();scanf("%d",&stui.age);getchar();scanf("%c",&stui.sex);getchar();void stat(struct student stu)int i,c=0,boy=0,girl=0; for(i=0;i<4;i+) if(stui.age<18) c+=1; if(stui
30、.sex='m') boy+; else girl+;printf("boytgirltage<18n");printf("%dt%dt%dn",boy,girl,c);2、void fun(struct STREC *a) int i; a->ave=0; for(i=0;i<N;i+)a->ave+=a->si; a->ave/=N;3、改錯(cuò)題正確的程序?yàn)椋簩?printf("%5d %-20s %2c %4dn",*p.num, *, p.sex, p.age);改
31、為:printf("%5d %-20s %2c %4dn", p->.num, p->name, p->sex, p->age);實(shí)驗(yàn)十一 共用體、位運(yùn)算和文件四、程序清單(請(qǐng)寫出上機(jī)內(nèi)容2中的程序源代碼)(1) 求100以內(nèi)能同時(shí)被3和5整除的自然數(shù),分別將它們輸出到顯示器屏幕和x.txt文件中。(2)用程序讀出上述x.txt文件中的數(shù)據(jù),將它們輸出到屏幕,并求它們的和。#include <stdio.h> #include <string.h> #include <stdlib.h> int main(void
32、) int i,sum;FILE *fd;char s10,*p,ch;if( (fd=fopen("D:shi.txt","wt")=NULL)printf("creat the file failedn");exit(0);elsefor(i=1;i<100;i+)if( (i%3 =0) && (i%5 = 0) )printf("%d, ",i);itoa(i,s,10);/轉(zhuǎn)換成字符串fputs(s,fd);fputc(' ',fd);printf("n&q
33、uot;);fclose(fd);/提取字符轉(zhuǎn)換成數(shù)字輸入if( (fd=fopen("D:shi.txt","rt")=NULL)printf("open the file failedn");exit(0);elsep=s;sum=0;doch=fgetc(fd);if(ch = ' ')i=atoi(s);sum +=i;printf("%d ",i);strset(s,'0');p=s;else*p=ch;p+;while(ch != EOF);printf("數(shù)的
34、和是:%dn",sum);fclose(fd); return 0;實(shí)驗(yàn)十二 參考答案實(shí)驗(yàn)十二參考答案:(可根據(jù)情況,弄清楚一個(gè)模塊即可)題目:設(shè)某班有n位同學(xué),每位同學(xué)的數(shù)據(jù)包括以下內(nèi)容:學(xué)號(hào)(長(zhǎng)整型)、姓名(字符串)、數(shù)學(xué)成績(jī)(整型)、程序設(shè)計(jì)成績(jī)(整型)。設(shè)計(jì)程序完成以下五項(xiàng)功能:新建數(shù)據(jù)檔案、添加數(shù)據(jù)、刪除數(shù)據(jù)、對(duì)輸入的數(shù)據(jù)進(jìn)行排序和查詢。注:輸入數(shù)據(jù)時(shí),要求學(xué)號(hào)不能相同,姓名可以相同。設(shè)計(jì)思路:1)程序運(yùn)行時(shí),首先顯示主菜單(模塊)如下:1程序運(yùn)行時(shí),首先顯示主菜單如下:1新建數(shù)據(jù)2添加數(shù)據(jù)3刪除數(shù)據(jù)4排序5查詢6退出用戶輸入序號(hào)后,程序進(jìn)行相應(yīng)操作。2)在主菜單中選擇序號(hào)
35、4,彈出子菜單選擇排序方式,子菜單如下:1數(shù)學(xué)成績(jī)排序2程序設(shè)計(jì)成績(jī)排序3總分排序。4返回主菜單 選擇子菜單的序號(hào)后,程序能正確運(yùn)行并在屏幕上顯示按要求排序后的相關(guān)信息。3在主菜單中選擇序號(hào)5,彈出子菜單選擇查詢方式,子菜單如下:1學(xué)號(hào)查詢2姓名查詢3數(shù)學(xué)成績(jī)查詢4程序設(shè)計(jì)成績(jī)查詢5總分查詢6返回主菜單請(qǐng)按序號(hào)選擇相應(yīng)操作 在子菜單中選擇序號(hào)后,程序按以下方式工作。(1)學(xué)號(hào)查詢:輸入學(xué)號(hào)后,若該學(xué)號(hào)存在則顯示與其相關(guān)的所有信息,否則顯示找不到的提示信息;(提示:查詢到滿足條件的結(jié)果后,查詢即可結(jié)束)(2)姓名查詢:輸入姓名后,若該姓名存在則顯示與其相關(guān)的所有信息,否則顯示找不到的提
36、示信息;(提示:使用字符串比較函數(shù)進(jìn)行比較)(3)按科目查詢:輸入指定分?jǐn)?shù),程序運(yùn)行后顯示該科目中考試成績(jī)大于等于指定分?jǐn)?shù)的同學(xué)的學(xué)號(hào)、姓名以及該科成績(jī)并統(tǒng)計(jì)滿足條件的人數(shù);(4)總分查詢:輸入指定分?jǐn)?shù),程序運(yùn)行后顯示總分成績(jī)大于等于指定分?jǐn)?shù)的同學(xué)的學(xué)號(hào)、姓名以及各科成績(jī)并統(tǒng)計(jì)滿足條件的人數(shù)。C源程序清單如下:#include "stdio.h"#include "stdlib.h"#include "string.h"#include "conio.h"#include "mem.h"#inc
37、lude "ctype.h"#include "alloc.h"#define N 2 typedef struct z1char no11;char name15;int scoreN;float sum;float average;int order;struct z1 *next;STUDENT;/*Functions*/STUDENT *init(); /*initialize*/STUDENT *create();STUDENT *delete(STUDENT *h);STUDENT *searchno(STUDENT *h);void pri
38、nt(STUDENT *h);void search(STUDENT *h);void save(STUDENT *h);STUDENT *load();STUDENT *insert(STUDENT *h);STUDENT *sort(STUDENT *h);STUDENT *index(STUDENT *h);int menu_select(); /*menu*/*main*/main()int i;STUDENT *head;head=init();clrscr();for(;)switch(menu_select()case 1:head=init();break;case 2:hea
39、d=create();break;case 3:head=delete(head);break;case 4:print(head);break;case 5:search(head);break;case 6:head=searchno(head);break;case 7:save(head);break;case 8:head=load(); break;case 9:head=insert(head); break;case 10:head=sort(head);break;case 11:case 12:case 13:head=index(head);break;case 0:ex
40、it(0); menu_select()char *menu="*MENU*"," 1. Init list"," 2. Enter list"," 3. Delete a record from list"," 4. print list "," 5. Search record by name"," 6. Search record by Number"," 7. Save the file"," 8. Load the
41、file"," 9. insert record to list "," 10. sort by total scores"," 11. sort by maths scores"," 12. sort by program scores"," 13. index on number"," 0. Quit"char s3;int c,i;gotoxy(1,25);printf("press any key continue.n");getch()
42、;clrscr();gotoxy(1,1);textcolor(YELLOW);textbackground(BLACK);gotoxy(10,2);putch(0xc9);for(i=1;i<44;i+)putch(0xcd);putch(0xbb);for(i=3;i<20;i+)gotoxy(10,i);putch(0xba);gotoxy(54,i);putch(0xba);gotoxy(10,20);putch(0xc8);for(i=1;i<44;i+)putch(0xcd);putch(0xbc);window(11,3,53,19);clrscr();for(
43、i=0;i<16;i+)gotoxy(10,i+1);cprintf("%s",menui);textbackground(BLACK);window(1,1,80,25);gotoxy(10,21);doprintf("n Enter you choice(013):");scanf("%s",s);c=atoi(s);while(c<0|c>14);return c;STUDENT *init()return NULL;STUDENT *create()int i; int s;STUDENT *h=NULL,*
44、info;for(;)info=(STUDENT *)malloc(sizeof(STUDENT);if(!info)printf("nout of memory");return NULL;inputs("enter no:(10 digitals .enter 0 to exit)",info->no,11);if(info->no0='0') break; /*when the first number is 0,break*/inputs("enter name:(<15 letters)",
45、info->name,15);printf("please input scores n");s=0; /*s is sum,begins with 0*/for(i=0;i<N;I+)doif(i=0)printf("Please input Maths scores:");if(i=1)printf("Please input Program scores:");scanf("%d",&info->scorei); /* socre0 stores maths scores,socor
46、e1 stores program scores*/if(info->scorei>100|info->scorei<0)printf("bad data,repeat inputn");while(info->scorei>100|info->scorei<0);s=s+info->scorei;info->sum=s;info->order=0;info->next=h;h=info;return(h);inputs(char *prompt, char *s, int count)char p25
47、5;doprintf(prompt);scanf("%s",p);if(strlen(p)>count)printf("n too long! n");while(strlen(p)>count);strcpy(s,p);/*Print infor*/void print(STUDENT *h)int i=0;STUDENT *p;clrscr();p=h;printf("nnn*STUDENT*n");printf("|rec| NO. | name | maths | program | sum |order
48、|n");printf("|-|-|-|-|-|-|-|n");while(p!=NULL)i+;printf("|%3d|%-10s|%-15s|%7d|%9d|%4.2f| %3d |n",i,p->no,p->name,p->score0,p->score1,p->sum,p->order);p=p->next;printf("*end*n");STUDENT *delete(STUDENT *h)STUDENT *p,*q;char s11;clrscr();printf(&
49、quot;please enter the number you want to delete n");scanf("%s",s);q=p=h;while(strcmp(p->no,s)&&p!=NULL)q=p;p=p->next;if(p=NULL)printf("nlist no %s studentn",s);elseprintf("nnn*STUDENT*n");printf("| NO. | name | maths | program | sum |order|n"
50、;);printf("|-|-|-|-|-|-|n");printf("|%-10s|%-15s|%7d|%9d|%4.2f| %3d |n",p->no,p->name,p->score0,p->score1,p->sum,p->order);printf("*end*n");getch();if(p=h)h=p->next;elseq->next=p->next;free(p);printf("n have deleted No %s studentn",s
51、);return(h);STUDENT *searchno(STUDENT *h)STUDENT *p,*q;char s11;clrscr();printf("please enter the number you want to search n");scanf("%s",s);q=p=h;while(strcmp(p->no,s)&&p!=NULL)q=p;p=p->next;if(p=NULL)printf("n %s No Found!n",s);elseprintf("n %s Fou
52、nd!n",s);printf("nnn*STUDENT*n");printf("| NO. | name | maths | program | sum |order|n");printf("|-|-|-|-|-|-|n");printf("|%-10s|%-15s|%7d|%9d|%4.2f| %3d |n",p->no,p->name,p->score0,p->score1,p->sum,p->order);printf("*end*n");g
53、etch();return(h);void search(STUDENT *h)STUDENT *p;char s15;clrscr();printf("please enter name for searchn");scanf("%s",s);p=h;while(strcmp(p->name,s)&&p!=NULL)p=p->next;if(p=NULL)printf("n %s No Found!n",s);elseprintf("n %s Found!n",s);printf(&q
54、uot;nnn*STUDENT*n");printf("| NO. | name | maths | program | sum |order|n");printf("|-|-|-|-|-|-|n");printf("|%-10s|%-15s|%7d|%9d|%4.2f| %3d |n",p->no,p->name,p->score0,p->score1,p->sum,p->order);printf("*end*n");STUDENT *insert(STUDENT *h)STUDENT *p,*q,*info;char s11;int s1,i;printf("please enter the No.which this record will be located be
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 響應(yīng)式編程語言性能分析-洞察分析
- 衛(wèi)星導(dǎo)航系統(tǒng)定位算法-洞察分析
- 塑膠場(chǎng)地污染控制技術(shù)-洞察分析
- 油斑治理技術(shù)研究-洞察分析
- 油氣管道安全監(jiān)測(cè)-洞察分析
- 牙齦囊腫切除術(shù)后生活質(zhì)量影響研究-洞察分析
- 《電磁防蠟技術(shù)介紹》課件
- 《燈箱制作教程》課件
- 2024年05月廣西桂林銀行容縣村行社會(huì)招考(524)筆試歷年參考題庫附帶答案詳解
- 2024年柳城縣中醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點(diǎn)附帶答案
- 2024年03月中國(guó)農(nóng)業(yè)發(fā)展銀行內(nèi)蒙古分行校園招考擬招錄人員筆試歷年參考題庫附帶答案詳解
- 2024年盾構(gòu)操作工職業(yè)技能競(jìng)賽理論考試題庫(含答案)
- ISO 56001-2024《創(chuàng)新管理體系-要求》專業(yè)解讀與應(yīng)用實(shí)踐指導(dǎo)材料之8:“5領(lǐng)導(dǎo)作用-5.2創(chuàng)新方針”(雷澤佳編制-2025B0)
- (西北卷)名校教研聯(lián)盟2025屆高三12月聯(lián)考英語試卷(含答案解析)
- 金科新未來大聯(lián)考2025屆高三12月質(zhì)量檢測(cè)語文試題(含答案解析)
- 江蘇省2025年高中學(xué)業(yè)水平合格考?xì)v史試卷試題(含答案詳解)
- 《地下水環(huán)境背景值統(tǒng)計(jì)表征技術(shù)指南(試行)》
- 大學(xué)試卷(示范)
- 高職院校智能制造實(shí)驗(yàn)室實(shí)訓(xùn)中心建設(shè)方案
- 房產(chǎn)交易管理平臺(tái)行業(yè)發(fā)展預(yù)測(cè)分析
- 檔案工作人員分工及崗位責(zé)任制(4篇)
評(píng)論
0/150
提交評(píng)論