新C語(yǔ)言實(shí)驗(yàn)教師版_第1頁(yè)
新C語(yǔ)言實(shí)驗(yàn)教師版_第2頁(yè)
新C語(yǔ)言實(shí)驗(yàn)教師版_第3頁(yè)
新C語(yǔ)言實(shí)驗(yàn)教師版_第4頁(yè)
新C語(yǔ)言實(shí)驗(yàn)教師版_第5頁(yè)
已閱讀5頁(yè),還剩24頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、實(shí)驗(yàn)一 上機(jī)操作初步(2學(xué)時(shí))一、實(shí)驗(yàn)方式:一人一機(jī)二、實(shí)驗(yàn)?zāi)康模?、熟悉VC+語(yǔ)言的上機(jī)環(huán)境及上機(jī)操作過(guò)程。2、了解如何編輯、編譯、連接和運(yùn)行一個(gè)C程序。3、初步了解C程序的特點(diǎn)。三、實(shí)驗(yàn)內(nèi)容:說(shuō)明:前三題為必做題目,后兩題為選做題目。1、輸出入下信息:(實(shí)驗(yàn)指導(dǎo)書P3) * Very Good *2、計(jì)算兩個(gè)整數(shù)的和與積。(實(shí)驗(yàn)指導(dǎo)書P4)3、從鍵盤輸入一個(gè)角度的弧度值x,計(jì)算該角度的余弦值,將計(jì)算結(jié)果輸出到屏幕。(書P4)4、在屏幕上顯示一個(gè)文字菜單模樣的圖案: = 1 輸入數(shù)據(jù) 2 修改數(shù)據(jù) 3 查詢數(shù)據(jù) 4 打印數(shù)據(jù) =5、從鍵盤上輸入兩個(gè)整數(shù),交換這兩個(gè)整數(shù)。四、參考答案:1、#i

2、nclude <stdio.h> void main( ) printf(“*n”); printf(“ Very Goodn”); printf(“*n”);2、#include <stdio.h> void main( ) int a,b,c,d; printf(“Please enter a,b:”); scanf(“%d,%d”,&a,&b); c=a+b;d=a*b; printf(“%d+%d=%dn”,a,b,c); printf(“%d*%d=%dn”,a,b,d);3、#include <stdio.h> #include

3、<math.h>void main( ) double x,s; printf(“Please input value of x:”); scanf(“%lf”,&x); s=cos(x); printf(“cos(%lf)=%lfn”,x,s);4、#include <stdio.h> void main( ) printf(“=n”); printf(“ 1 輸入數(shù)據(jù) 2 修改數(shù)據(jù)n”); printf(“ 3 查詢數(shù)據(jù) 4 打印數(shù)據(jù)n”); printf(“=n”);5、#include <stdio.h> void main( ) int x

4、,y,t; printf(“Please enter x and y:”); scanf(“%d%d”,&x,&y); t=x; x=y; y=t; printf(“After swap:x=%d,y=%dn”,x,y);實(shí)驗(yàn)二 簡(jiǎn)單的C程序設(shè)計(jì)(4學(xué)時(shí))一、實(shí)驗(yàn)方式:一人一機(jī)二、實(shí)驗(yàn)?zāi)康模?、掌握C語(yǔ)言的數(shù)據(jù)類型。2、學(xué)會(huì)使用C語(yǔ)言的運(yùn)算符及表達(dá)式。3、掌握不同數(shù)據(jù)類型的輸入輸出方法。三、實(shí)驗(yàn)內(nèi)容:說(shuō)明:前四題為必做題目,后兩題為選做題目。 1、輸入r1、r2,求出圓形墊片面積。(實(shí)驗(yàn)指導(dǎo)書P10)2、輸入華氏溫度h,輸出攝氏溫度c。(實(shí)驗(yàn)指導(dǎo)書P11)3、從鍵盤輸入一個(gè)3位

5、整數(shù),將輸出該數(shù)的逆序數(shù)。(實(shí)驗(yàn)指導(dǎo)書P14)4、輸入并運(yùn)行以下程序,分析運(yùn)行結(jié)果。 #include <stdio.h> void main( ) int i,j; i=8; j=10; printf(“%d,%dn”,+i,+j); i=8; j=10; printf(“%d,%dn”,i+,j+); i=8; j=10; printf(“%d,%dn”,+i,i); i=8; j=10; printf(“%d,%dn”,i+,i);5、輸入三角形三條邊的邊長(zhǎng),求三角形的面積。(實(shí)驗(yàn)指導(dǎo)書P153)6、輸入3個(gè)字符型數(shù)據(jù),將其轉(zhuǎn)換成相應(yīng)的整數(shù)后,求它們的平均值并輸出。(實(shí)驗(yàn)指導(dǎo)

6、書P154)四、參考答案:1、#include <stdio.h> #define P 3.14 void main( ) float r1,r2; double s1,s2,s; printf(“Please enter r1,r2:n”); scanf(“%f%f”,&r1,&r2); s2=r2*r2*P;s1=r1*r1*P;s=s2-s1; printf(“s=%lfn”,s);2、#include <stdio.h> void main( ) float h,c; printf(“請(qǐng)輸入華氏溫度:”); scanf(“%f”,&h);

7、 c=5.0/9*(h-32); printf(“n攝氏溫度:%fn”,c);3、#include <stdio.h> void main( ) int a,b,c,x,y; printf(“請(qǐng)輸入一個(gè)3位的正整數(shù):n”); scanf(“%d”,&x); a=x/100; /*求x的百位數(shù)*/b=(x-a*100)/10; /*求x的十位數(shù)*/c=x-a*100-b*10; /*求x的個(gè)位數(shù)*/y=c*100+b*10+a;printf(“%d:%dn”,x,y); 4、運(yùn)行結(jié)果:9,11 8,10 9,8 8,85、#include <stdio.h> #i

8、nclude <math.h> void main( ) int a,b,c; double area,s; printf(“Please enter a,b,c:”); scanf(“%d,%d,%d”,&a,&b,&c); s=(double)(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);printf(“area=%.2lfn”,area);6、#include <stdio.h> void main( ) char a,b,c; float x; printf(“Please enter:n”); scan

9、f(“%c%c%c”,&a,&b,&c); x=(a+b+c)/3.0; printf(“(a+b+c)/3=%.2fn”,x);實(shí)驗(yàn)三 選擇結(jié)構(gòu)程序設(shè)計(jì)(2學(xué)時(shí))一、實(shí)驗(yàn)方式:一人一機(jī)二、實(shí)驗(yàn)?zāi)康模?、熟練掌握if語(yǔ)句和switch語(yǔ)句。2、練習(xí)并掌握多分支選擇結(jié)構(gòu)的編程方法。3、學(xué)習(xí)調(diào)試和修改程序的步驟。三、實(shí)驗(yàn)內(nèi)容:說(shuō)明:前三題為必做題目,后兩題為選做題目。1、讀入3個(gè)分別表示箱子長(zhǎng)、寬、高的整數(shù)值,判斷并輸出該箱子是立方體還是長(zhǎng)方體。(實(shí)驗(yàn)指導(dǎo)書P28)2、輸入某一年月,輸出該月的天數(shù)。(實(shí)驗(yàn)指導(dǎo)書P29)3、有一函數(shù): x (x<1)y= 2x-1 (1

10、x<10) 3x-11 (x10) 編寫程序,輸入x值,輸出y值。4、從鍵盤輸入一個(gè)字符,如果該字符為小寫字母,則轉(zhuǎn)換為大寫字母輸出;如果該字符為大寫字母,則轉(zhuǎn)換為小寫字母輸出;如果為其他字符,原樣輸出。(實(shí)驗(yàn)指導(dǎo)書P163)5、從鍵盤輸入4個(gè)整數(shù),分別存入整型變量a、b、c、d中,并按從大到小的順序顯示出來(lái)。(實(shí)驗(yàn)指導(dǎo)書P160)四、參考答案:1、#include <stdio.h> void main( ) int l,w,h; printf(“請(qǐng)輸入箱子的長(zhǎng)、寬、高:n”); scanf(“%d%d%d”,&l,&w,&h); if(l=w&am

11、p;&w=h) /*如果長(zhǎng)、寬、高相等,則為立方體*/ printf(“該箱子是立方體。”); else printf(“該箱子是長(zhǎng)方體。”);2、#include <stdio.h> void main( ) int year,month,days; printf(“Please enter year and month:n”); switch(month) case 2: if(year%4=0&&year%100!=0|year%400=0) days=29; else days=28; break; case 1:case 3:case 5:case

12、 7:case 8:case 10:case 12: days=31; break; case 4: case 6: case 9: case 11: days=30;printf(“%d年%d月有%d天n”,year,month,days);3、方法1:#include <stdio.h> void main( ) float x,y; printf(“Please input x:n”); scanf(“%f”,&x); if(x<1) y=x; else if(x<10) y=2*x-1; else y=3*x-11; printf(“y=%fn”,y);

13、 方法2:#include <stdio.h> void main( ) float x,y; printf(“Please input x:n”); scanf(“%f”,&x); if(x<1) y=x; if(x>=1&&x<10) y=2*x-1; if(x>=10) y=3*x-11; printf(“y=%fn”,y);4、#include <stdio.h> void main( ) char x; printf(“Enter a char:n”); x=getchar();if(x>=a&&a

14、mp;x<=z) x-=32;else if(x>=A&&x<=Z) x+=32;putchar(x);5、#include <stdio.h> void main( ) int a,b,c,d,t; printf(“請(qǐng)輸入4個(gè)整數(shù):”); scanf(“%d%d%d%d”,&a,&b,&c,&d); if(a<b) t=a; a=b; b=t; if(a<c) t=a; a=c; c=t; if(a<d) t=a; a=d; d=t; if(b<c) t=b; b=c; c=t; if(b&

15、lt;d) t=b; b=d; d=t; if(c<d) t=c; c=d; d=t; printf(“從大到小排序后:n”); printf(“%d,%d,%d,%dn”,a,b,c,d);實(shí)驗(yàn)四 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(4學(xué)時(shí))一、實(shí)驗(yàn)方式:一人一機(jī)二、實(shí)驗(yàn)?zāi)康模?、熟練掌握while語(yǔ)句、do-while語(yǔ)句和for語(yǔ)句。2、練習(xí)并掌握循環(huán)結(jié)構(gòu)的嵌套形式。3、掌握循環(huán)結(jié)構(gòu)的程序設(shè)計(jì)方法。三、實(shí)驗(yàn)內(nèi)容:說(shuō)明:前四題為必做題目,后兩題為選做題目。1、從鍵盤上輸入若干個(gè)學(xué)生的成績(jī),統(tǒng)計(jì)并輸出最高成績(jī)和最低成績(jī),當(dāng)輸入負(fù)數(shù)時(shí)結(jié)束輸入。(實(shí)驗(yàn)指導(dǎo)書P41)2、求所有的水仙花數(shù)。水仙花數(shù)是一個(gè)3位數(shù)

16、的自然數(shù),該數(shù)各位數(shù)的立方和等于該數(shù)本身。(實(shí)驗(yàn)指導(dǎo)書P42)3、判斷輸入的某個(gè)數(shù)是否為素?cái)?shù)。若是,輸出YES,否則輸出NO。(實(shí)驗(yàn)指導(dǎo)書P167)4、計(jì)算的近似值。公式如下:/4=1-1/3+1/5-1/7+,直到最后一項(xiàng)的絕對(duì)值小于10-6為止。(實(shí)驗(yàn)指導(dǎo)書P169)5、計(jì)算1!+2!+n! 的值,n值由鍵盤輸入。(實(shí)驗(yàn)指導(dǎo)書P176)6、輸入10個(gè)整數(shù),統(tǒng)計(jì)并輸出其中正數(shù)、負(fù)數(shù)和零的個(gè)數(shù)。四、參考答案:1、#include <stdio.h> void main( ) float x,max,min; printf(“Please input scores:”); scanf

17、(“%f”,&x); max=min=x; while(x>=0) if(x>max) max=x; if(x<min) min=x; scanf(“%f”,&x);printf(“nmax=%fnmin=%fn”,max,min);2、#include <stdio.h> void main( ) int x,y,z; int k=100; while(k<=999) x=k/100; y=(k-x*100)/10; z=k-x*100-y*10; if(k=x*x*x+y*y*y+z*z*z) printf(“%dn”,k); k+;3、

18、#include <stdio.h> #include <math.h> void main( ) int i,x,yes,a; printf(“Enter integer number:”); scanf(“%d”,&x); yes=1; i=2; a=(int)sqrt(double)x); while(yes&&i<=a) if(x%i=0) yes=0; i+;printf(“%d”,x);if(yes) printf(“YESn”);else printf(“NOn”); 4、#include <stdio.h> #i

19、nclude <math.h> void main( ) float pi,t,n; int sign=1; pi=0; n=1; t=1; while(fabs(t)>=1e-6) t=sign/n; pi+=t; n+=2; sign=-sign;pi=pi*4;printf(“pi=%fn”,pi);5、#include <stdio.h> void main( ) int i,j,n;double m,s=0; printf(“Enter n:”); scanf(“%d”,&n); for(i=1;i<=n;i+) for(j=1,m=1;j

20、<=i;j+)m*=j; s+=m;printf(“result is:%.0lfn”,s);6、#include <stdio.h> void main( ) int x,i,a=0,b=0,c=0; for(i=1;i<=10;i+) printf(“n請(qǐng)輸入第%d個(gè)數(shù):”,i);scanf(“%d”,&x);if(x>0) a+;if(x<0) b+;if(x=0) c+;printf(“正數(shù)有%d個(gè),負(fù)數(shù)有%d個(gè),零有%d個(gè)n”,a,b,c);實(shí)驗(yàn)五 綜合實(shí)驗(yàn)1:結(jié)構(gòu)化程序設(shè)計(jì)(2學(xué)時(shí))一、實(shí)驗(yàn)方式:一人一機(jī)二、實(shí)驗(yàn)?zāi)康模?、進(jìn)一步掌握選擇結(jié)

21、構(gòu)、循環(huán)結(jié)構(gòu)的編程特點(diǎn)。2、掌握C語(yǔ)言的結(jié)構(gòu)化程序設(shè)計(jì)思想。3、學(xué)習(xí)利用循環(huán)結(jié)構(gòu)實(shí)現(xiàn)的一些常用算法(如窮舉、迭代、遞推等)。三、實(shí)驗(yàn)內(nèi)容:說(shuō)明:前兩題為必做題目,后兩題為選做題目。 1、編一程序,對(duì)于給定的一個(gè)百分制成績(jī),輸出對(duì)應(yīng)A,B,C,D,E表示的的等級(jí)成績(jī)。設(shè):90分以上為A,80-89分為B,70-79分為C,60-69分為D,60分以下為E。(實(shí)驗(yàn)指導(dǎo)書P162)2、百馬百擔(dān)問(wèn)題。(實(shí)驗(yàn)指導(dǎo)書P45)3、輸入一行字符,分別統(tǒng)計(jì)出其中英文字母、空格、數(shù)字和其他字符的個(gè)數(shù)。4、輸出如下圖案: * * * * * * *四、參考答案:1、方法1: #include <stdio.h

22、>void main( ) int s; printf(“Enter a score:”); scanf(“%d”,&s); if(s>=90) printf(“An”); else if(s>=80) printf(“Bn”); else if(s>=70) printf(“Cn”); else if(s>=60) printf(“Dn”); else printf(“En”); 方法2: #include <stdio.h> void main( ) int s,logic; char grade;logic=1;while(logic)

23、printf(“Input score:”); scanf(“%d”,&s); if(s>100|s<0) printf(“nError,Input again!n”); else logic=0; printf(“n”);switch(s/10) case 10:case 9: grade=A;break; case 8: grade=B;break;case 7: grade=C;break;case 6: grade=D;break;default: grade=E;printf(“Score is %d,the grade is %c.n”,s,grade);2、#

24、include <stdio.h> void main( ) int m,n,k; int sum=0; printf(“各種馱法如下:n”); for(m=1;m<=100;m+) for(n=1;n<=100-m;n+) k=100-m-n; if(k%2=0&&m*3+n*2+k/2=100) printf(“大馬%3d匹;中馬%3d匹;小馬%3d匹.n”,m,n,k); sum+;printf(“共有%d種馱法.n”,sum); 3、#include <stdio.h> void main( ) char c; int letter=

25、0,space=0,digit=0,other=0; printf(“請(qǐng)輸入一行字符:n”); while(c=getchar( )!=n) if(c>=a&&c<=z|c>=A&&c<=Z)letter+; else if(c= ) space+;else if(c>=0&&c<=9) digit+;else other+;printf(“字母數(shù)=%d,空格數(shù)=%dn”,letter,space);printf(“數(shù)字?jǐn)?shù)=%d,其他字符數(shù)=%dn”,digit,other); 4、#include <s

26、tdio.h>void main( ) int i,j,k;for(i=0;i<=3;i+) for(j=0;j<=2-i;j+) printf(“ ”);for(k=0;k<=2*i;k+) printf(“*”);printf(“n”);for(i=0;i<=2;i+) for(j=0;j<=i;j+) printf(“ ”);for(k=0;k<=4-2*i;k+) printf(“*”);printf(“n”);實(shí)驗(yàn)六 函數(shù)程序設(shè)計(jì)(4學(xué)時(shí))一、實(shí)驗(yàn)方式:一人一機(jī)二、實(shí)驗(yàn)?zāi)康模?、掌握C語(yǔ)言中函數(shù)的三要素:函數(shù)定義、函數(shù)調(diào)用和函數(shù)說(shuō)明。2、掌握

27、通過(guò)參數(shù)在函數(shù)間傳遞數(shù)據(jù)的方法。3、掌握全局變量、局部變量、動(dòng)態(tài)變量、靜態(tài)變量的概念和使用方法。三、實(shí)驗(yàn)內(nèi)容: 說(shuō)明:前四題為必做題目,后兩題為選做題目。1、從鍵盤輸入三角形的3條邊,調(diào)用三角形面積函數(shù)求出其面積,并輸出結(jié)果。(實(shí)驗(yàn)指導(dǎo)書P54)2、輸入整數(shù)n,輸出高度為n的等邊三角形。當(dāng)n=5時(shí)的等邊三角形如下:(實(shí)驗(yàn)指導(dǎo)書P58) * * * * *3、輸入并運(yùn)行以下程序,分析運(yùn)行結(jié)果。 #include <stdio.h>int a=5;int b=7; void main( ) int a=4,b=5,c; c=plus(a,b); printf(“a+b=%dn”,c);

28、plus(int x,int y) int z; z=x+y; return (z);4、求500以內(nèi)的所有親密數(shù)對(duì)。若正整數(shù)A的所有因子(包括1但不包括自身,下同)之和為B,而B的因子之和為A,則稱A和B為一對(duì)親密數(shù)對(duì)。(實(shí)驗(yàn)指導(dǎo)書P59)5、輸入并運(yùn)行以下程序,分析運(yùn)行結(jié)果。 #include <stdio.h> int d=1; f(int p) static int d=5; d+=p; printf(“%d ”,d); return (d);void main( ) int a=3; printf(“%d ”,f(a+f(d);6、設(shè)計(jì)一個(gè)函數(shù),輸出整數(shù)n的所有素?cái)?shù)因子。

29、(實(shí)驗(yàn)指導(dǎo)書P181)四、參考答案:1、#include <stdio.h> #include <math.h> float area(float a,float b,float c) float s,p,area; s=(a+b+c)/2; p=s*(s-a)*(s-b)*(s-c); area=sqrt(p); return (area);void main( ) float x,y,z,ts; scanf(“%f%f%f”,&x,&y,&z); if(x>0&&y>0&&z>0&&a

30、mp;x+y>z&&y+z>x&&x+z>y) ts=area(x,y,z); printf(“area=%fn”,ts);else printf(“data error!n”);2、#include <stdio.h> void trangle(int n) int i,j; for(i=0;i<n;i+) for(j=0;j<=n-i;j+) putchar( ); for(j=0;j<=2*i;j+) putchar(*); putchar(n);void main( ) int n; printf(“Ple

31、ase enter n:”); scanf(“%d”,&n); printf(“n”); trangle(n);3、a+b=94、#include <stdio.h> int facsum(int m) int sum=1,f=2; while(f<=m/2) if(m%f=0) sum=sum+f; f+;return sum;void main( ) int m=3,n,k; while(m<=500) n=facsum(m); k=facsum(n); if(m=k&&m<=n) printf(“%d,%dn”,m,n); m+; 5

32、、6 15 156、#include <stdio.h> int prime(int n) int i,flag=1; for(i=2;i<=n/2;i+) if(n%i=0) flag=0; retun flag;return flag;void factor(int n) int i; i=2; while(i<=n) if(n%i=0)&&prime(i) printf(“%d ”,i); n=n/i; continue; i+; void main( ) int num; printf(“Enter num:”); scanf(“%d”,&

33、;num); printf(“prime factor is:n”); factor(num);實(shí)驗(yàn)七 數(shù)組程序設(shè)計(jì)(4學(xué)時(shí))一、實(shí)驗(yàn)方式:一人一機(jī)二、實(shí)驗(yàn)?zāi)康模?、掌握數(shù)組的定義、賦值和輸入輸出的方法。2、學(xué)習(xí)用數(shù)組實(shí)現(xiàn)相關(guān)的算法(特別是排序算法)。3、掌握C語(yǔ)言中字符數(shù)組和字符串處理函數(shù)的使用。三、實(shí)驗(yàn)內(nèi)容:說(shuō)明:前四題為必做題目,后兩題為選做題目。1、下列程序的功能是:輸入10個(gè)整數(shù),按每行3個(gè)數(shù)輸出這些整數(shù),最后輸出10個(gè)整數(shù)的平均值。程序中有幾處錯(cuò)誤,試找出它們后加以修改,并上機(jī)驗(yàn)證修改結(jié)果。 #include <stdio.h> void main( ) int i,n

34、,a10,avg; for(i=0;i<n;i+) scanf(“%d”,ai); for(i=0;i<n;i+) if(i%3=0) printf(“n”); printf(“%d ”,ai);for(i=0;i<n;i+) avg+=ai;printf(“navg=%fn”,avg);2、寫一個(gè)函數(shù),對(duì)輸入的10個(gè)整數(shù)按從小到大的順序排序(升序,用冒泡排序?qū)崿F(xiàn))。(實(shí)驗(yàn)指導(dǎo)書P72)3、編寫程序,判斷某一字符串是不是“回文數(shù)”,回文數(shù)是從左至右或從右至左讀起來(lái)都是一樣的字符串。(實(shí)驗(yàn)指導(dǎo)書P77)4、輸入一個(gè)3行3列矩陣的所有元素,然后求出主對(duì)角線元素之和。5、給定某年某

35、月某日,將其轉(zhuǎn)換成這一年的第幾天并輸出。(實(shí)驗(yàn)指導(dǎo)書P76)6、編寫程序,在有序的數(shù)列中查找某數(shù),若該數(shù)在此數(shù)列中,則輸出它所在的位置,否則輸出no found。(實(shí)驗(yàn)指導(dǎo)書P189)四、參考答案:1、#include <stdio.h> void main( ) int i,n=10,a10;float avg=0; for(i=0;i<n;i+) scanf(“%d”,&ai); for(i=0;i<n;i+) if(i%3=0) printf(“n”); printf(“%d ”,ai);for(i=0;i<n;i+) avg+=ai;avg=avg

36、/n;printf(“navg=%fn”,avg);2、#include <stdio.h> void sort1(int s ,int n) int i,j; int t; for(i=0;i<n-1;i+) for(j=n-1;j>=i+1;j-) if(sj<sj-1) t=sj;sj=sj-1;sj-1=t; void main( ) int i,a10; printf(“Please input 10 numbers:n”);for(i=0;i<10;i+) scanf(“%d”,&ai);sort1(a,10);printf(“The s

37、orted 10 numbers:n”);for(i=0;i<10;i+) printf(“%d ”,ai); 3、#include <stdio.h> #include <string.h>#define N 40void main( ) char strN,ch=Y; int i; int len; printf(“Input a string:n”); scanf(“%s”,str); len=strlen(str); for(i=0;i<len/2;i+) if(stri!=strlen-1-i) ch=N; break; if(ch=Y) prin

38、tf(“%s是一個(gè)回文數(shù)n”,str); else printf(“%s不是一個(gè)回文數(shù)n”,str);4、#include <stdio.h> void main( ) int a33,sum; int i,j; sum=0; for(i=0;i<3;i+) for(j=0;j<3;j+) scanf(“%d”,&aij); for(i=0;i<3;i+) sum=sum+aii; printf(“sum=%dn”,sum); 5、#include <stdio.h> int day_tab213=0,31,28,31,30,31,30,31,

39、31,30,31,30,31,0,31,29,31,30,31,30,31,31,30,31,30,31; int day_year(int year,int month,int day) int i,j,s=0; if(year%4=0&&year%100!=0|year%400=0) i=1; else i=0; for(j=1;j<month;j+) s=s+day_tabij; return (s+day); void main( ) int y,m,d; printf(“Input year,month and day:n”); scanf(“%d%d%d”,&

40、amp;y,&m,&d); printf(“是這年的第%d天n”,day_year(y,m,d);6、#include <stdio.h> #define N 10 void main( ) int aN; int num,i; char ch=n; printf(“請(qǐng)輸入一個(gè)數(shù)組:n”); for(i=0;i<N;i+) scanf(“%d”,&ai); printf(“輸出數(shù)組:n”); for(i=0;i<N;i+) printf(“%d ”,ai); printf(“n”); printf(“請(qǐng)輸入一個(gè)數(shù):n”); scanf(“%d”,

41、&num); printf(“開始查找n”); for(i=0;i<N;i+) if(num=ai) ch=y; printf(“%d在數(shù)組的第%d位n”,num,i+1); if(ch=n) printf(“no foundn”);實(shí)驗(yàn)八 指針程序設(shè)計(jì)(2學(xué)時(shí))一、實(shí)驗(yàn)方式:一人一機(jī)二、實(shí)驗(yàn)?zāi)康模?、通過(guò)實(shí)驗(yàn)進(jìn)一步掌握指針的概念,會(huì)定義和使用指針變量。2、能正確使用指向數(shù)組和字符串的指針變量。3、熟悉指針作為函數(shù)參數(shù)的編程特點(diǎn)。三、實(shí)驗(yàn)內(nèi)容:說(shuō)明:前兩題為必做題目,后一題為選做題目。要求用指針?lè)椒▽?shí)現(xiàn)。1、輸入3個(gè)整數(shù),按從小到大的次序輸出。 (實(shí)驗(yàn)指導(dǎo)書P201)2、數(shù)據(jù)交換

42、。實(shí)驗(yàn)要求:1)定義兩個(gè)函數(shù),分別為void swap1(int a,int b)和void swap2(int *a,int *b),用于交換a,b的值。2)從主函數(shù)中分別輸入兩個(gè)整型變量a、b。3)從主函數(shù)中分別調(diào)用上述兩個(gè)交換函數(shù),并打印輸出交換后a、b的結(jié)果。(實(shí)驗(yàn)指導(dǎo)書P90)3、編寫一個(gè)程序計(jì)算字符串長(zhǎng)度的函數(shù),模擬C的<string.h>函數(shù)庫(kù)內(nèi)的計(jì)算字符串長(zhǎng)度的函數(shù)strlen( )。四、參考答案:1、#include <stdio.h> void swap(int *p1,int *p2) int p; p=*p1; *p1=*p2; *p2=p;vo

43、id main( ) int n1,n2,n3; int *p1,*p2,*p3; printf(“Please input three integer datas:”); scanf(“%d%d%d”,&n1,&n2,&n3); p1=&n1; p2=&n2; p3=&n3; if(n1<n2) swap(p1,p2); if(n1<n3) swap(p1,p3); if(n2<n3) swap(p2,p3); printf(“After swap:”); printf(“%d %d %dn”,n1,n2,n3);2、#include <stdio.h> void swap1(int x,int y); void swap2(int *x,int *y); void main( ) int a,b; printf(“Please input a=:”); scanf(“%d”,&a); printf(“Please

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論