c語言課后習(xí)題答案8_第1頁
c語言課后習(xí)題答案8_第2頁
c語言課后習(xí)題答案8_第3頁
c語言課后習(xí)題答案8_第4頁
c語言課后習(xí)題答案8_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

c語言程序設(shè)計(jì)教程r>2版)課后題及模擬題參考答案

習(xí)題1...................................................................................................................................................3

1-1填空題....................................................................................................................................3

1-2思考題.....................................................................................................................................3

1-3編程題.....................................................................................................................................3

習(xí)題2...................................................................................................................................................4

2-1單選題.....................................................................................................................................4

2-2思考題.....................................................................................................................................4

習(xí)題3...................................................................................................................................................5

3-1選擇題.......................................................................................................................................5

3-2填空題.......................................................................................................................................5

3-3編程題.......................................................................................................................................5

習(xí)題4...................................................................................................................................................7

4-1單選題......................................................................................................................................7

4-2填空題......................................................................................................................................7

4-3編程題.....................................................................................................................................7

習(xí)題5..................................................................................................................................................10

5-1單■選題....................................................................................................................................10

5-2填空題....................................................................................................................................10

5-3編程題...................................................................................................................................10

習(xí)題6..................................................................................................................................................13

6-1單選題....................................................................................................................................13

6-2填空題....................................................................................................................................13

6-3編程題...................................................................................................................................13

習(xí)題7..................................................................................................................................................15

7-1單選題....................................................................................................................................15

7-2填空題....................................................................................................................................15

7-3編程題...................................................................................................................................15

習(xí)題8..................................................................................................................................................16

8-1單選題....................................................................................................................................16

8-2填空題....................................................................................................................................16

8-3編程題...................................................................................................................................16

習(xí)題9..................................................................................................................................................18

9-1單選題....................................................................................................................................18

9-2填空題....................................................................................................................................18

9-3編程題...................................................................................................................................18

習(xí)題10..............................................................................................................................................22

10-1單選題..................................................................................................................................22

10-2填空題..................................................................................................................................22

10-3編程題.................................................................................................................................22

習(xí)題11..............................................................................................................................................24

11-1單■選題..................................................................................................................................24

11-2填空題..................................................................................................................................24

習(xí)題12..............................................................................................................................................25

12-1單選題..................................................................................................................................25

12-2填空題.................................................................25

實(shí)驗(yàn)篇...................................................................................................................................26

實(shí)驗(yàn)1熟悉VisualC++6.0可視化集成開發(fā)環(huán)境...............................26

實(shí)驗(yàn)2順序結(jié)構(gòu)程序設(shè)計(jì).....................................................26

實(shí)驗(yàn)3選擇結(jié)構(gòu)程序設(shè)計(jì).....................................................26

實(shí)驗(yàn)4循環(huán)結(jié)構(gòu)程序設(shè)計(jì).....................................................26

實(shí)駁5函數(shù)..................................................................28

實(shí)驗(yàn)6數(shù)組..................................................................32

實(shí)驗(yàn)7指針..................................................................33

實(shí)驗(yàn)8結(jié)構(gòu)體和共用體.......................................................35

實(shí)驗(yàn)9文件..................................................................36

實(shí)驗(yàn)10綜合編程............................................................36

模擬試卷(一)參考答案.......................................................................................................37

模擬試卷(二)參考答案.......................................................................................................38

習(xí)題1

1-1填空題

1.函數(shù)

2.主函數(shù)main。,主函數(shù)main。

3.主函數(shù)main。

4.函數(shù)首部,函數(shù)體

5.{,}

6./*,*/

7.順序結(jié)構(gòu),選擇結(jié)構(gòu),循環(huán)結(jié)構(gòu)

8..c,.obj,.exe

1-2思考題

1.結(jié)構(gòu)化程序設(shè)計(jì)是指:為使程序具有一個(gè)合理的結(jié)構(gòu)以保證程序正確性而規(guī)定的一套如

何進(jìn)行程序設(shè)計(jì)的原則。其基本結(jié)構(gòu)包括順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)三種。

2.算法是對(duì)具體問題求解步驟的一種描述。計(jì)算機(jī)算法的表達(dá)工具通常采用以下幾種方

法:(1)用自然語言表示算(2)用流程圖表示算法(3)用偽代碼表示算法(4)用程序設(shè)

計(jì)語言表示算法

3.語言簡潔、緊湊,使用方便、靈活;支持結(jié)構(gòu)化程序設(shè)計(jì);運(yùn)算符豐富;數(shù)據(jù)類型豐富;

較強(qiáng)的編譯預(yù)處理功能;C語言的可移植性好;C語言本身既有?般高級(jí)語言的優(yōu)點(diǎn),又有低

級(jí)(匯編)語言的特點(diǎn);語法限制不太嚴(yán)格,程序設(shè)計(jì)自由度大。

1-3編程題

1.試參照本章例題編寫計(jì)算梯形面積的C語言程序,梯形的上底、下底和高分別用4,b,

/?表示,并用a=10,b=20,h=5測試所編寫的程序。

#include"stdio.h"

main()

{floata,b,h,s;

a=10;b=20;

h=5;s=(a+b)*h/2;

printf("s=%f\n",s);

)

2.編寫程序顯示如圖1.11所示信息。

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

*HelloWorld*

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

圖1.11顯示信息

#include“stdio.h”

main()

{printf\n");

printf(K*helloworld*\nn);

printf("******************************\n?);}

習(xí)題2

2-1單選題

1~5DBDCA6-10DCABA11?12cA

2-2思考題

1.2.000000

2.1,0.5

3.9,2

4.6

5.100,d

6.(1)20(2)0(3)60

7.(1)10,6,4(2)6,9,15(3)3,60,83

8.55

習(xí)題3

3-1選擇題

1-5BDABC6-10ADCAC11-12BB

3-2填空題

1.3

2.0261

3.0x10

4.2,1互換a,b的值

5.6.6

6.-003

8.7

7.5.0,4,c=3<Enter>

8.i=10,j=20<Enter>

9.(1)65

(2)65,A

(3)56.123400,123.456001

(4)3.141600

(5)8765.432

(6)5.864000e+002

(7)3.141600e+000

(8)3.1416

(9)8765

(10)3.1416,8765.43

10.a=2b=5x=8.8y=76.34c1=65c2=97

3-3編程題

1.編寫程序?qū)崿F(xiàn)從鍵盤輸入兩個(gè)十進(jìn)制整型數(shù)據(jù)10和8給變量x和y,并按下列格式輸

出。

Xy

十進(jìn)制數(shù)108

八進(jìn)制數(shù)1210

十六進(jìn)制數(shù)a8

#include"stdio.h"

main()

{intx,y;

scanf("%d%d",&x,&y);

printffxy\nH);

printf(n%4d%4d\nn,x,y);

printf「%4o%4o\n”,x,y);

printff%4x%4x\n”,x,y);

)

2.編寫一個(gè)程序,輸入一個(gè)大寫英文字符(B?輸出它的前導(dǎo)字符、該字符本身及其

后續(xù)字符。

#include"stdio.h”

main()

{charc;

scanf(u%c,\&c);

printf{“%c,%c,%c\n",c-1,c,c+1);

|

3.編寫一個(gè)程序,輸入一個(gè)3位正整數(shù),要求反向輸出對(duì)應(yīng)的整數(shù),如輸入123,則輸出

321。編寫程序并給出相應(yīng)的程序流程圖。

#include"stdio.h”

main()

{inta,al,a2,a3;

scanf("%d",&a);

al=a%10;a=a/10;

a2=a%10;a=a/10;

a3=a%10;

printf(u%d%d%d\nM,al,a2,a3);

)

4.編寫程序,讀入3個(gè)double型數(shù)據(jù),求它們的平均值,保留此平均值小數(shù)點(diǎn)后1位數(shù),

對(duì)小數(shù)點(diǎn)后第2位數(shù)進(jìn)行四舍五入,最后輸出結(jié)果。

#include"stdio.h"

main()

{doublea,b,c,ave;

scanfft%lf%lf%lf,,&a,&b,&c);

ave=(a+b+c)/3;

printf(“%.ave);

}

5.編寫程序,讀入3個(gè)整數(shù)給變量a、b、c,然后交換它們的值,把a(bǔ)原來的值給b,把b

原來的值給c,把c原來的值給a。

#include"stdio.h”

main()

{inta,b,c,t;

scanf("%d%d%d”,&a,&b,&c);

t=a;a=c;c=b;b=t;

printff'a=%d,b=%d,c=%d\n,\a,b,c);

習(xí)題4

4-1單選題

1~5AADAD6-10ACBBB11-12BA

4-2填空題

1.1

2.⑴a>0||b>0(2)x>0&&x<=10

(3)a==1.5&&b==1.5&&c==1.5(4)p<a||p<b11p<c

3.(1)0(2)1(3)1(4)0(5)1

4.(max=a>b?a:b)>c?max:c

5.-4

6.1

7.5,0,3

8.(1)(a==0)(2)(b==0)(3)(disc<0)

4-3編程題

1.輸入3個(gè)實(shí)型數(shù)值a、b、c,如果能用它們作為三角形的3條邊形成一個(gè)三角形,則輸

出三角形的面積,并畫出實(shí)現(xiàn)該算法的N-S流程圖并編程實(shí)現(xiàn)。

#includeHstdio.hM

#include“math.h"

main()

{floata,b,c,s,area;

scanf(H%f,%f,%f,,,&a,&b,&c);

if(a+b>c&&a+ob&&b+c>a)

{s=(a+b+c)/2;

area=sqrt(s*(s-a)*(s-b)*(s-c));

printf(**%fM,area);

)

)

2.輸入整數(shù)x、y,若xZ+y'lOOO,則輸出乂2+/百位以上的數(shù)字,否則輸出兩數(shù)之和。

#include"stdio.h"

main()

{intx,y;

scanf("%d,%d”,&x,&y);

if(x*x+y*y>1000)

printf("%d\n”,(x*x+y*y)/100);

else

printf(M%d\nn,x+y);

)

3.輸入一個(gè)整數(shù),判斷它能否同時(shí)被3、5、7整除,并輸出“yes”或“no”字樣。

#include"stdio.h"

main()

{intx,

scanf(u%d,,,&x);

if(x%3==0&&x%5==0&&x%7==0)

printf(uyes\nn);

else

printf(<<no\nM);

)

4.對(duì)任意輸入的x,用下式計(jì)算并輸出y的值。

x2-sin(x),x<-2

y=?2'+x,2<x<-2

\lx2+x+1,x>2

#include"stdio.h"

#include"math.h"

main()

{floatx,y;

scanf("%f”,&x);

if(x<-2)y=x*x-sin(x);

elseif(x<=2)y=pow(2,x)+1;

elsey=sqrt(x*x+x+1);

printf(u%f\n,,,y);

)

5.編寫程序輸入一個(gè)5位整數(shù),判斷它是不是回文數(shù)?;匚臄?shù)是指一個(gè)數(shù)從右到左和從

左到右的對(duì)應(yīng)數(shù)碼相同,如12321是回文數(shù),個(gè)位與萬位相同,H立與千位相同。

#include"stdio.h*'

main()

{longge,shi,qian,wan,x;

scanf("%ld”,&x);

wan=x/10000;

qian=x%10000/1000;

shi=x%100/10;

ge=x%10;

if(ge==wan&&shi==qian)/*個(gè)位等于萬位并且十位等于千位*/

printf("thisnumberisahuiwen\n");

else

printf(nthisnumberisnotahuiwen\n");

)

6.編寫程序用于計(jì)算某運(yùn)輸公司的運(yùn)費(fèi)。設(shè)每公里每噸貨物的基本運(yùn)費(fèi)為p,貨物重量為

W,路程為s(單位為km),折扣為d,總費(fèi)用計(jì)算公式為:f=p*w*s*(l-d)

運(yùn)費(fèi)計(jì)算標(biāo)準(zhǔn)見表4.5o

表4.5某運(yùn)輸公司運(yùn)費(fèi)計(jì)算標(biāo)準(zhǔn)

s<250不打折

250<=s<500折扣2%

500<=s<1000折扣5%

1000<=s<2000折扣8%

2000<=s<3000折扣10%

s>3000折扣15%

#include"stdio.h"

main()

{floatp,w,s,d,f;

scanf(u%f,%,%fn,p,s,w);

if(s>3000)d=0.15

elseif(s>=2000)d=0.1;

elseif(s>=1000)d=0.08;

elseif(s>=500)d=0.05;

elseif(s>=250)d=0.02;

elsed=0

f=p*w*s*(1-d);

printf(M%fw,f);

習(xí)題5

5-1單選題

1-5CDABA6~10ABDDB11-14DBCB

5-2填空題

1.20

2.333

3.(1)i<10(2)j%3!=0

4.(1)flag*(float)k/(k+1)(2)flag=-flag

5.(1)max=x(2)x!=-1(3)scanf(,'%d",&x)

5-3編程題

1.用3種循環(huán)語句編寫程序?qū)崿F(xiàn)下列算式:

(1)1+2x2+3x34--+100x100

(2)e=-+-+-+.當(dāng)最后一項(xiàng)的值小于1CF6時(shí)為止。

1!2!3!加

(1)

#include"stdio.h"

main()

{inti;lonts=0;

forO=1;iv=100;i++)

s+=i*i;

printf(u%ld,,,s);

)

(2)

#include"stdio.h"

main()

{inti=1;lontp=1;floats=0;

do{

s+=1.0/p;

p*=++i;

}while(1.0/p>1e-6)

printf("%f”,s);

)

2.編寫程序求兩個(gè)正整數(shù)的最大公約數(shù)。

#include"stdio.h"

main()

{intm,n,t,a,b;

scanf("%d,%d”,&m,&n);

if(m<n){t=m;m=n;n=t;}

a=m;b=n;

t=m%n;

while(t)

{m=n;n=t;t=m%n;}

printf("%d,%d”,n,a*b/n);

)

3.編寫程序求一個(gè)整數(shù)的任意次方的最后3位數(shù),即求9的最后3位數(shù)。

#include"stdio.h”

main()

{intx,y,s=1;

scanf("%d,%d”,&x,&y);

for(;y>0;y-)s*=x;

printf(,,%d,%d,%d\n,\s%10,s/10%10,s/100%10);

)

4.百雞問題。用100元錢買100只雞,其中,公雞每只5元,母雞每只3元,小雞每3只

1元。編寫程序輸出各種買法。

#include"stdio.h"

main()

{intx,y,z;

for(x=1;x<20;x++)

for(y=1;y<33;y++)

{z=100-x-y;

if(z>=0&&(5*x+3*y+z/3)-100<1e-5)

printf(,,x=%d,y=%d,z=%d\n,,,x,y,z);

)

)

5.編寫程序分別打印如下圖形:

*

****

***

****

*****

****

****

(a)(b)

(a)#include"stdio.h"

main()

{intj,k;

for(j=1;j<=4;j++)

{for(k=1;k<=4-j;k++)printf("");

printf("****");

prin廿("\n");

)

(b)#include"stdio.h*'

main()

{intj,k;

for(j=1;j<=4;j++)

{for(k=1;k<=4?j;k++)printf(Hn);

for(k=1;k<=2*j-1;k++)

printf(…);

printf(H\n");

6.請(qǐng)編寫程序求100?999之間所有的水仙花數(shù)。水仙花數(shù)的含義是指這樣的一個(gè)3位數(shù),

其各位數(shù)字的立方和等于該數(shù)本身。例如,371=33+73+13,所以371是一個(gè)水仙花數(shù)。

程序分析:利用for循環(huán)控制100-999個(gè)數(shù),每個(gè)數(shù)分解出個(gè)位,十位,百位。

#include"stdio.h"

main()

(

inti,j,k,n;

printf('"waterflower'numberis:");

for(n=100;n<1000;n++)

(

i=n/100;/*分解出百位*/

j=n/10%10;/*分解出十位*/

k=n%10;/*分解出個(gè)位*/

if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)

(

printf("%-5d",n);

)

)

printf("\n");

)

習(xí)題6

6-1單選題

1-5CBBAD6-10DBCCD11-15DCABC

6-2填空題

1.120

2.x

3.3,2,2,3

4.fac/i

5.8,17

6.9

7.1.0/(i*i)

8.fun-in:30,20,10

fun-end:1015,35,1050

10,20,30

9.012345

10.93636

6-3編程題

1.編寫一函數(shù)把字符串中的小寫字母轉(zhuǎn)換成大寫字母,其他字符不變。

voidzhuan()

{charch;

while((ch=getchar())!=,\n,)

{if(ch>=,a,&&chv='z')ch=ch-32;

putchar(ch);

)

)

2.編寫一函數(shù)求e=’+'+J_+…+!+…

1!2!3!n\

floatexpp(intn)

{intk,fac=1;

floatsum=0;

for(k=1;k<=n;k++)

{fac*=k;

sum+=1.0/fac;

)

return(sum);

)

3.編寫一函數(shù)求一個(gè)整數(shù)的任意次方的最后3位數(shù),即求必的最后3位數(shù)。

intxy3(intx,inty)

{intk,num=1;

for(k=1;k<=y;k++)

num*=x;

num=num%1000;

returnnum;

)

4.有5個(gè)人坐在一?起,第5個(gè)人說他比第4個(gè)人大2歲,第4個(gè)人說他比第3個(gè)人大2歲,

第3個(gè)人說他比第2個(gè)人大2歲,第2個(gè)人說他比第1個(gè)人大2歲,第1個(gè)人說他10歲,

請(qǐng)問第5個(gè)人多大?

intage(intn)

{intc;

if(n==1)c=10;

elsec=age(n-1)+2;

returnc;

)

習(xí)題7

7-1單選題

1-5DBCCB6-8BDC

7-2填空題

1.c

2.60

3.100010

4.16

7-3編程題

1.編寫程序計(jì)算下列公式中的/值,使用帶參數(shù)的宏來實(shí)現(xiàn)。

#include“math.h"

#defineF(a)a*a+sqrt(3*a*a+2*a+1)

main()

{floatx,f;

scanf("%f”,&x);

f=4.5/F(exp(x))+F(cos(x))+F(sqrt(x))/F(x*x);

printf(u%f\nn,f);

)

習(xí)題8

8-1單選題

1?15CADAC6-10CCDAB11-15CBBCD

8-2填空題10000

01000

1(1).2345(2)10010(3)QuickC(4)00100

2.(1)j+=2(2)a[i]>a[j]00010

3.(1)r+b[k](2)*x00001

8-3編程題

1.設(shè)數(shù)組a中的元素都為正整數(shù),編程求其中偶數(shù)的個(gè)數(shù)和偶數(shù)的平均值。

#include"stdio.h"

#defineN10

main()

{inta[N]={1,2,3,4,5,67,8,9,0},osum=0,ocount=0,j;

for(j=0;j<10;j++)

if(!(j%2)){ocount++;osum+=a[j];}

printf(uocount=%d,osum=%d\n",ocount,osum);

)

2.有一個(gè)已排好序的數(shù)組,輸入一個(gè)數(shù),要求按原來排序的規(guī)律將它插入數(shù)組中,插入后

數(shù)組仍然有序,請(qǐng)編程實(shí)現(xiàn)。

#include"stdio.h"

#defineN10

main()

{inta[N]={10,20,30,40,50,60,70,80,90},j,k,x;

scanf("%d”,&x);

for(j=0;j<N;j++)

if(x<a[j])break;

for(k=N-1;k>j;k-)a[k]=a[k-1];

a[j]=x;

for(j=0;j<N;j++)printf("%d",a[j]);

)

3.編程求一個(gè)矩陣對(duì)角元素之和,其中矩陣元素值由數(shù)組初始化時(shí)給定。

#include"stdio.h"

#defineM3

main()

{inta[M][M]={{1,2,3},{4J5,6},{7,8,9}},j,sum1=0Jsum2=0;

for(j=O;j<M;j++)

{sum1+=a[j][j];

sum2+=a[j][M-(j+1)];}

printf("%d,%d\n,,,sum1,sum2);

)

4.編一個(gè)程序檢查二維數(shù)組是否對(duì)稱(即對(duì)所有的i和j,都有a[i]U]=aU][i])。

#include"stdio.h"

#defineM3

main()

{inta[M][M]={{1,2,3},{2,4,5},{3,5,6}},j,k,flag=1;;

for(j=O;j<M;j++)

for(k=0;k<M;k++)

if(a[j][k]!=a[k][j]){flag=0;break;}

if(flag)printf("ok");

elseprintfC'NO");

)

5.編程比較兩個(gè)字符串的大小(不用strcmp()函數(shù))。

#include"stdio.h"

#include"string.h"

main()

{charc1[10],c2[10],j;

gets(c1);gets(c2);

for(j=0;(c1[j]==c2[jj)&&c1[j]&&c2[j];j++);

printf(u%d\n,,,c1[j]-c2[j]);

)

6.有一篇文章,共有3行文字,每行有80個(gè)字符。要求分別統(tǒng)計(jì)出其中英文大寫字母、小

寫字母、數(shù)字、空格及其他字符的個(gè)數(shù)。

#include"stdio.h"

#include"string.h"

#defineM3

#defineN80

main()

{chara[M][N],j,k,n[5]={0};

for(j=O;j<M;j++)gets(a[j]);

for(j=0;j<M;j++)

for(k=0;a[j][k];k++)

if(a皿k]>='A'&&a[j][k]<='Z)n[1]++;

elseif(a[j][k]>=,a)&&a[j][k]<=,z,)n[2]++;

elseif(a[j][k]>=,0,&&a[j][k]<=,9,)n[3]++;

elseif(a[j][k]=")n[4]++;

elsen[5]++;

for(j=0;j<5;j++)

printf("%4d”,n[j]);

)

習(xí)題9

9-1單選題

1-5DDACB6-10ACBAD11-15CDBCC

9-2填空題

1.(1)2,1(2)(3)FOUR,0(4)60

2.(1)49⑵2(3)2(4)75319(5)15

(6)

1,1,1,1,1

3,3,3,3,3

10001

01010

00100

01010

10001

3.⑴*xt

4.⑴'\0'或0(2)n++或n+=1或n=n+1

5.024

9-3編程題

1.按以下要求編寫一個(gè)程序。定義三個(gè)變量用于存放輸入的三個(gè)整數(shù);另定義三個(gè)指向整

型變量的指針變量,并利用它們實(shí)現(xiàn)將輸入的三個(gè)整數(shù)按由小到大的順序輸出。

#include"stdio.hn

main()

(

intn1,n2,n3;

int*pointeri,*pointer2,*pointers;

printf(Mpleaseinput3number:n1,n2,n3:u);

scanf("%d,%d,%d”,&n1,&n2,&n3);

pointeri=&n1;

pointer2=&n2;

pointer3=&n3;

if(n1>n2)swap(pointer1,pointer2);

if(n1>n3)swap(pointer1,pointers);

if(n2>n3)swap(pointer2,pointers);

printf(Hthesortednumbersare:%d,%d,%d\n",n1,n2,n3);

)

sw叩(p1,p2)

int*p1,*p2;

{intp;

p=*p1;*p1=*p2;*p2=p;

)

2.編寫函數(shù),得到兩個(gè)整數(shù)相除的商和余數(shù)。要求通過指針在函數(shù)間傳遞商和余數(shù)這兩個(gè)

數(shù)據(jù)。

#include"stdio.h*'

main()

{inta,b,d;doublec;

voidfun(inta,intb,float*c,int*d);

scanf(”%d,%d”,&a,&b);

fun(a,b,&c,&d);

printf("%lf,%d\nn,c,d);

)

voidfun(inta,intb,double*c,int*d)

{if(b){*c=(double)a/b;*d=a%b;}}

3.輸入10個(gè)整數(shù),將其中最小的數(shù)與第一個(gè)數(shù)對(duì)換,把最大的數(shù)與最后一個(gè)數(shù)對(duì)換。編

寫三個(gè)函數(shù):①輸入10個(gè)數(shù);②進(jìn)行處理;③輸出10個(gè)數(shù)。

#include"stdio.h"

main()

{voidinput(int*);voidoutput(int*);voidchuli(int*);

inta[10];

input(a);chuli(a);output(a);

)

voidinput(int*a)

{intj;

for(j=0;j<10;j++)

scanf(”%d”,a+j);

}

voidchuli(int*a)

{intj,minl=0,maxl=0;

for(j=0;j<10;j++)

{if(a[maxl]<*(a+j))maxl=j;

if(a[minl]>*(a+j))minl=j;

)

j=a[O];a[O]=a[minl];a[minl]=j;

j=a[9];a[9]=a[maxl];a[maxl]=j;

)

voidoutput(int*a)

{intj;

for(j=0;j<10;j++)

printf("%4d",*(a+j));

printf("\n");

)

4.按下列要求輸入和輸出下列數(shù)據(jù)陣列:

輸入陣列如下:1234

5678

9101112

輸出陣列如下:

1211109

8765

4321

#defineM3

#defineN4

main()

{inta[M][N]={1,2)3,4,5,6,7,8,9,10,11,12),k,jJ*p=aJt;

for(k=0,j=M*N-1;k<j;k++,j-)

{t=*(p+k);*(p+k)=*(p+j);*(p+j)=t;}

for(k=0;k<M;k++)

{for(j=0;j<N;j++)

printf("%4dH,a[k][j]);

printf(<,\n>,);

)

)

5..編寫一個(gè)函數(shù),求一個(gè)字符串的長度。在main()函數(shù)中輸入字符串,并輸出其長度。

#include"stdio.h"

main()

(

intlen,length(p);

char*str[20];

printf("pleaseinputastring:"");

scanf("%s”,str);

len=length(str);

printf(Mthestringhas%dcharacters.\nM,len);

)

intlength(p)

char*p;

(

intn=0;

while(*p!=*\0')

(

n++;

P++;

)

returnn;

)

6.請(qǐng)編寫一個(gè)程序,運(yùn)行時(shí)輸出命令行參數(shù)的個(gè)數(shù)及參數(shù)名。

#include"stdio.h"

main(intargc,char*argv[])

{intk;

printf(uargc=%d",argc);

for(k=1;k<argc;k++)

printf(u%sn,argv[k]);

)

7o用指針數(shù)組操作將輸入的5個(gè)字符串按由小到大的順序。

#include"stdio.h"

#include"string.h”

main()

{

char*strl[5],ch[5][20],k;voidsort(char**);

fbr(k=0;k<5;k++)

{strl[k]=ch[k];

gcts(strl[k]);}

sort(strl);

fbr(k=0;k<5;k++)

puts(strl[k]);

}

voidsort(char**strl)

{intk,j,t;char*c;

fbr(k=0;k<4;k++)

{t=k;

fbr(j=k+l;j〈5;j++)

if(strcmp(*(strl+t),*(strl+j))>0)t=j;

c=*(strl+t);

*(str1+t)=*(str1+k);

*(strl4-k)=c;

習(xí)題10

10-1單選題

1-5CDBBB6-10BBBAD11-15CCBDA

10-2填空題

1.所有結(jié)構(gòu)體成員所占存儲(chǔ)空間的總和

2.與占用存儲(chǔ)空間最大的那個(gè)成員相等

3.(1)結(jié)構(gòu)體(2)3(3)sa.a(4)9(5)psa=&sa

4.80

5.structnode

6.0

10-3編程題

1.定義一個(gè)包含20個(gè)學(xué)生基本情況(包括學(xué)號(hào)、姓名、性別、C語言成績)的結(jié)構(gòu)體數(shù)組,

編程實(shí)現(xiàn)下列功能:

(1)輸入20個(gè)學(xué)生的學(xué)號(hào)、姓名、性別、C語言成績;

(2)分別統(tǒng)計(jì)男女生的人數(shù),求出男、女生的平均成績;

(3)按照學(xué)生的C語言成績從高到底進(jìn)行排序。

structstudent

(

longnum;

charname[20];

charsex;

floatscore:

};

main()

{structstudents[20],temp;

intj,k,man=0,woman=0;

floatsumman=0,sumwoman=0,aveman,avewoman;

for(k=0;k<20;k++)

{scanf(n%ld%s%c%fu,&s[k].num,s[k].name,&s[k].sex,&s[k].score);

if(s[k].sex==,m,)

{summan+=s[k].score;man++;}

else

{sumwoman+=s[k].score;woman++;}

aveman=summan/man;

avewoman=sumwoman/woman;

printf("%d\t%f\t%d\t%f\nM,man,aveman,woman,avewoman);

for(k=0;k<19;k++)

for(j=0:j<20-k;j++)

if(s[j].score<s[j+1].score)

{temp=s[j];s[j]=s[j+1];s[j+1]=temp;}

printf("thesortednumbers:\n");

for(k=0;k<20;k++)

printf(M%ld\t%s\t%c\t%5.1f\nn,s[k].num,s[k].name,s[k].sex,s[k].score);

)

習(xí)題11

11-1單選題

1-4BADD

11-2填空題

1.3d3d330

2.(1)28⑵20(3)0(4)-9

3.(1)251⑵42⑶209(4)-295(5)848

習(xí)題12

12-1單選題

1-5BCDCA6-8ADA

12-2填空題

1.rewind(文件指針)

2."dl.dat",nrbn

3.stdin

4.文本文件二進(jìn)制文件

5.(l)”w"(2)str[i]-32(3)T

6.fbpen

7.Hell

8.(1)"r"(2)fgetc(fp)(3)time++

實(shí)驗(yàn)篇

實(shí)驗(yàn)1熟悉VisualC++6.0可視化集成開發(fā)環(huán)境

實(shí)驗(yàn)2順序結(jié)構(gòu)程序設(shè)計(jì)

實(shí)驗(yàn)3選擇結(jié)構(gòu)程序設(shè)計(jì)

(D略

(2)略

(3)#include"stdio.h"

main()

(

floata,b;

printf("Pleaseinputthedataaandb:\n");

",H

scanf(%f%fJ&a,&b);

if(a>10.0)

a=a-10.0;

else

{a=a+10.0;

if(b>a);

elseb=a-b;

)

printf("a=%f,b=%f\n",a,b);

)

實(shí)驗(yàn)4循環(huán)結(jié)構(gòu)程序設(shè)計(jì)

(1)略

(2)略

(3)編寫一個(gè)程序,打印輸出半徑為I?10的圓的面積,若面積為40?90則予以打印,

否則,不予打印。

#include"stdio.h"

main()

{floatr=0,area=0;

while(r<10&&area<90)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論