華中科技大學(xué)標(biāo)準(zhǔn)C語言程序設(shè)計及應(yīng)用習(xí)題答案_第1頁
華中科技大學(xué)標(biāo)準(zhǔn)C語言程序設(shè)計及應(yīng)用習(xí)題答案_第2頁
華中科技大學(xué)標(biāo)準(zhǔn)C語言程序設(shè)計及應(yīng)用習(xí)題答案_第3頁
華中科技大學(xué)標(biāo)準(zhǔn)C語言程序設(shè)計及應(yīng)用習(xí)題答案_第4頁
華中科技大學(xué)標(biāo)準(zhǔn)C語言程序設(shè)計及應(yīng)用習(xí)題答案_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

本文格式為Word版,下載可任意編輯——華中科技大學(xué)標(biāo)準(zhǔn)C語言程序設(shè)計及應(yīng)用習(xí)題答案

其次章

一.選擇題

1.C2.BD3.A4.A5.DC

6.C7.D8.B9.A10.D

11.B12.D13.C14.D15.A

16.B17.A18.B

二.判斷題

1.錯

2.錯

3.錯

4.錯

三.填空題

1.B66

2.n1=%d\nn2=%d\n

3.0

四.計算

1

(1)x|y=0x002f

(2)x^y=0x0026

(3)xy=0x0009;

(4)~x+~y=0xffc6

(5)x=30x0068

(6)y=40x0002

2

(1)6

(2)50

(3)1

(4)–16

(5)1

(6)20

3

(1)0

(2)1

(3)1

(4)4

(5)8

(6)1

4

(1)12

(2)0

(3)1

(4)27

(6)6

(7)24

(8)27

(9)–29

5

(1)0

(2)1

(3)1

(4)–3

(5)2

五.程序分析題

程序1

b=20a=3600

程序2

一.填空題

1.s=6

2.96

3.(1)scanf(%c,c);

(2)c-32更好的答案:c-('a'-'A')

2.1

main()

{

inta,b;

printf(pleaseinputab:);

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

printf(\nmaxis%d\n,(ab)?a:b);

}

2.2

intmax(intx,inty);

main()

{

inta,b,c,max;

printf(pleaseinputabc:);

scanf(%d%d%d,a,b,c);

max=ab?a:b;

max=cmax?c:max;

printf(\nmaxis%d\n,max);

}

2.3第三章

{

inti=0,sum=0;

while(i=100)

{

sum+=i;

i++;

}

printf(1+2+3++100=%d\n,sum);

}

2.4

main()

{

inti;

inta=10,b=-3;

intc;

printf(%6d%6d,a,b);

for(i=2;i10;i++)

{

c=3*b+a;

printf(%6d,c);

a=b;

b=c;

}

printf(\n);

}

2.5

main()

{

inti;

while(1)

{

printf(pleaseinputadata(0:exit):);

scanf(%d,i);

if(i==0)

break;

if(i%2==0)

printf(thedata%disaevennumber.\n,i);

else

printf(thedata%disaoddnumber.\n,i);

}

}

2.6

#includestdio.h

main()

{

inti;

inta=8,b=1;

intsum=0;

for(i=0;i10;i++)

{

b+=3;

sum+=a;

a+=b;

printf(a%8db:%8d\n,a,b);

}

printf(TheSumOfIs:%d\n,sum);

}

2.7

#includestdio.h

main()

{

floatx,y;

printf(pleaseinputx:);

scanf(%f,x);

if(x1.0)

y=x;

elseif(x10)

y=2*x-1;

else

y=3*x-11;

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

}

2.8

#includestdio.h

main()

{

longa,i,b,a1;

while(1)

{

printf(pleaseinputdata(1-99999):);

scanf(%ld,a);

printf(a:%ld\n,a);

if(a=0||a=100000)

break;

i=0;

a1=0;

while(a!=0)

{

b=a%10;

printf(%8d,b);

a/=10;

i++;

a1=a1*10+b;

}

printf(\ni:%lda1:%ld\n,i,a1);

}

}

2.9

#includestdio.h

#includetime.h

#includestdlib.h

main()

{

inta,b,i,k=0;

randomize();

a=random(1001);/*createarandomdata(0-1000)*/

for(i=0;i20;i++)

{

printf(pleaseguessanumber:);

scanf(%d,b);

if(ab)

{

k++;

printf(\n%d:Smaller,guessagain!\n,k);

}

elseif(ab)

{

k++;

printf(\n%d:Bigger,guessagain!\n,k);

}

else

{

printf(\nYouguessright,congraturation!);

printf(\nYouhaveguessed%dtimes,k);

break;

}

}

if(k==20)

printf(\nsorry,youfailed!);

}

2.10

#includestdio.h

main()

{

inta,b,c;

intnum;

for(a=0;a10;a++)

{

for(b=0;b10;b++)

{

for(c=1;c10;c++)

{

num=a*100+b*10+c;

if((num%3==0)(a==5||b==5||c==5))

printf(%8d,num);

}

}

}

printf(\n\n\n);

}

2.11

#includestdio.h

main()

{

inti;

inta,b;

printf(pleaseinputa,b:);

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

for(i=ab?a:b;i0;i--)

{

if(a%i==0b%i==0)

{

printf(Themax=%d,i);

break;

}

}

for(i=ab?a:b;i0;i++)

{

if(i%a==0i%b==0)

{

printf(\nThemin=%d,i);

break;

}

}

2.12

#includestdio.h

main()

{

inta,k=0;

printf(pleaseinputdata:);

scanf(%d,a);

while(a%2==0)

{

a=a/2;

k++;

}

printf(\nthenumberoffactor(2)is%d,k);

}

2.13

main()

{

longi,t=1;

longsum=0;

for(i=1;i=10;i++)

{

t*=i;

sum+=t;

printf(%ld!=%ld\n,i,t);

}

printf(sum:%ld\n,sum);

}

2.14

#includestdio.h

voidmain()

{

inti,x=0;

for(i=9;i=1;i--)

{

x=2*(x+1);

}

printf(Thefirstday:%d,x);

}

2.15

#includestdio.h

#definePI3.141593

main()

{

floatr,h;

floatv;

printf(pleaseinputr,h:);

scanf(%f%f,r,h);

v=1.0/3*PI*r*r*h;

printf(V=%.2f,v);

}

2.16

#includestdio.h

#includemath.h

main()

{

longintsn=0;

longintm=0,t=0;

inta,n,i;

printf(pleaseinputan:);

scanf(%d%d,a,n);

for(i=0;in;i++)

{

m=m*10+a;

sn+=m;

}

printf(a+aa+aaa+...+aa...a=%ld\n\n,sn);

}

2.17

#includestdio.h

main()

{

intk;

printf(pleaseinputk:);

do

{

scanf(%d,k);

if(k=0k=6)

break;

}while(1);

switch(k)

{

case0:printf(Sunday.\n);break;

case1:printf(Monday.\n);break;

case2:printf(Tuesday.\n);break;

case3:printf(Wednesday.\n);break;

case4:printf(Thursday.\n);break;

case5:printf(Friday.\n);break;

case6:printf(Saturday.\n);break;

}

}

2.18

#includestdio.h

main()

{

inti;

doublex,a,b=1,sum=1;

printf(pleaseinputx:);

scanf(%lf,x);

a=x;

for(i=1;a/b=1e-6;i++)

{

sum=sum+a/b;

a=a*x;

b=(i+1)*b;

}

printf(\nsum=%lf,sum);

}

2.19

#includestdio.h

#includemath.h

main()

{

floata,x1,x2;

printf(inputa:);

scanf(%f,a);

x1=1.0;

while(1)

{

x2=1.0/2*(x1+a/x1);

if(fabs(x2-x1)1e-5)

break;

x1=x2;

}

printf(sqrt(a)=%f,x2);

}

第四章

寫出以下程序輸出結(jié)果

1.no1a=1no1a=0no1a=1no1a=0

2.

a=0b=0c=0

a=1b=0c=0

a=2b=0c=0

3.

main:x=5,y=1,n=1

func:x=6,y=21,n=11

main:x=5,y=1,n=11

func:x=8,y=31,n=21

1.D

2.D

3.C

4.6

5.CDABC

6.(1)j+=2

(2)a[i]a[j]

7.(1)s[i++]!='\0'

(2)s[i-1]

8.D

9.B

10.6(同題4)

11.s[i]='0's[i]='9'

12.(1)'\0'(2)str1[i]-str2[i]

5.1

#includestdio.h

intfun();

intfun()

{

inta[3][3],sum;第五章

inti,j;

sum=0;/*error*/

for(i=0;i3;i++)

{

for(j=0;j3;j++)

scanf(%d,a[i][j]);/*error*/

}

for(i=0;i3;i++)

sum=sum+a[i][i];

printf(sum=%d\n,sum);

}

voidmain()

{

fun();

}

5.2

#includestdio.h

voidmain(void)

{

floatNum[10];

floatInput,GetNum[11];

inti,j;

floata=6;

for(i=0;i10;i++)

{

Num[i]=a;

a=a+7.5;

}

Loop1:printf(PleaseinputaNumber(0-80)Input=);

scanf(%f,Input);

if((Input0)||(Input70)==1)

gotoLoop1;

for(i=0;i10;i++)

{

if(InputNum[i])

gotoLoop2;

}

Loop2:for(j=0;ji;j++)

GetNum[j]=Num[j];

GetNum[j]=Input;

for(j=i;j=10;j++,i++)

GetNum[j+1]=Num[i];

for(j=0;j11;j++)

printf(%3.3f,GetNum[j]);

}

5.3

#includestdio.h

#includestdlib.h

main()

{

inta1,a2,a3,a4,a5,a6,a7,a8,a9;

inta[3];

inti;

for(;;)

{

for(i=0;i3;i++)

{

a[i]=rand()%3;

}

while((a[0]!=a[1])(a[0]!=a[2])(a[1]!=a[2]))/*getthreedifferentnumbers0,1,2*/

{

a1=a[0]+1;/*divide1~9intothreegroups,a1~a3,a4~a6,a7~a9*/

a2=a[1]+1;

a3=a[2]+1;

a4=a1+3;

a5=a2+3;

a6=a3+3;

a7=a1+6;

a8=a2+6;

a9=a3+6;

/*makesurethateachlineandeachrowismadeupwiththreemembersindifferentgroup.*/

/*suchas:a9a1a5

a2a6a7

a4a8a3*/

if(((a1+a5+a9)==(a2+a6+a7))((a1+a5+a9)==(a3+a4+a8))

((a1+a6+a8)==(a5+a7+a3))((a1+a5+a9)==(a2+a4+a9))){

printf(%d%d%d\n%d%d%d\n%d%d%d\n,a9,a1,a5,a2,a6,a7,a4,a8,a3);return;

}

}

}

}

5.4

#includestdio.h

voidmain(void)

{

charinput1[100],input2[100],input3[100];

inti,Eng=0,eng=0,num=0,blank=0,other=0;

printf(Input3rowsofcharacter,eachrowdon'texceed80characters:\n);

gets(input1);

printf(Thesecondrow:\n);

gets(input2);

printf(Thethirdrow:\n);

gets(input3);

/*testthefirstrow*/

for(i=0;i100;i++)

{

if(input1[i]=='\0')

gotoLoop1;

elseif(('A'=input1[i])(input1[i]='Z')==1)

Eng++;

elseif(('a'=input1[i])(input1[i]='z')==1)

eng++;

elseif(('0'=input1[i])(input1[i]='9')==1)

num++;

elseif(input1[i]==32)

blank++;

elseother++;

}

/*testthesecondrow*/

Loop1:for(i=0;i100;i++)

{

if(input2[i]=='\0')

gotoLoop2;

elseif(('A'=input2[i])(input2[i]='Z')==1)

Eng++;

elseif(('a'=input2[i])(input2[i]='z')==1)

eng++;

elseif(('0'=input2[i])(input2[i]='9')==1)

num++;

elseif(input2[i]==32)

blank++;

elseother++;

}

/*testthethirdrow*/

Loop2:for(i=0;i100;i++)

{

if(input3[i]=='\0')

gotoLoop3;

elseif(('A'=input3[i])(input3[i]='Z')==1)

Eng++;

elseif(('a'=input3[i])(input3[i]='z')==1)

eng++;

elseif(('0'=input3[i])(input3[i]='9')==1)

num++;

elseif(input3[i]==32)

blank++;

elseother++;

}

Loop3:printf(Upperenglishcharacter:%d\nLowerenglishcharacter:%d\nNumber:%d\nBlank:%d\nOthercharacters:%d\n,Eng,eng,num,blank,other);}

5.5

#includestdio.h

voidmain(void)

charstr1[80],str2[40];

inti,j,k;

/*Inputtwostring*/

printf(Pleaseinputthefirststring\nstr1=);

gets(str1);

printf(Pleaseinputthesecondstring\nstr2=);

gets(str2);

/*Gettheendofstr1*/

for(i=0;i80;i++)

{

if(str1[i]=='\0')

break;

}

/*Copystr2tostr1*/

for(j=i,k=0;str2[k]!='\0';k++,j++)

str1[j]=str2[k];

str1[i+k]='\0';

puts(str1);

}

5.6

#includestdio.h

structstudent

{charname[20];

intscore;

}stu[5],stu1;

voidmain(void)

{inti,j;

printf(Inputstudent'sscoreandname(5),seperateusingthecharacterof',':\n);

for(i=0;i5;i++)

scanf(%d,%s,stu[i].score,stu[i].name);

/*sorting*/

for(i=0;i5;i++)

for(j=0;j4-i;j++)

if(stu[j].scorestu[j+1].score)

{stu1=stu[j];stu[j]=stu[j+1];stu[j+1]=stu1;}

printf(Aftersotred,scoreandname:\n);

for(i=0;i5;i++)

printf(%d,%s\n,stu[i].score,stu[i].name);

}

5.7

#includestdio.h

main()

{inta[3][3],i,j,m,n,o,p;

printf(Pleaseinputa3*3shuzu:\n);

for(i=0;i=2;i++)

for(j=0;j=2;j++)

scanf(%d,a[i][j]);

for(i=0;i=2;i++)

{m=(a[i][0]a[i][1])?a[i][0]:a[i][1];

n=(ma[i][2])?m:a[i][2];

}

for(j=0;j=2;j++)

{o=(a[0][j]a[1][j])?a[0][j]:a[1][j];

p=(oa[2][j])?o:a[2][j];

}

if(n==p)

printf(Andianis%d\\n,p);

else

printf(Thereisnoandian.\\n);

}

5.8

#includestdio.h

voidmain(void)

{inta[4][3],b[3][4],i,j;

for(i=0;i4;i++)

{for(j=0;j3;j++)

scanf(%d,a[i][j]);

}

for(i=0;i4;i++)

{

printf(\n);

for(j=0;j3;j++)

printf(%5d,a[i][j]);

}

for(i=0;i4;i++)

{

for(j=0;j3;j++)

b[j][i]=a[i][j];

}

printf(\n);

for(i=0;i3;i++)

{

printf(\n);

for(j=0;j4;j++)

printf(%5d,b[i][j]);

}

5.9

#includestdio.h

#inc

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論