华中科技大学标准C语言程序设计及应用习题答案.docx

上传人:b****6 文档编号:13097653 上传时间:2023-06-11 格式:DOCX 页数:46 大小:22.46KB
下载 相关 举报
华中科技大学标准C语言程序设计及应用习题答案.docx_第1页
第1页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第2页
第2页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第3页
第3页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第4页
第4页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第5页
第5页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第6页
第6页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第7页
第7页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第8页
第8页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第9页
第9页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第10页
第10页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第11页
第11页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第12页
第12页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第13页
第13页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第14页
第14页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第15页
第15页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第16页
第16页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第17页
第17页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第18页
第18页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第19页
第19页 / 共46页
华中科技大学标准C语言程序设计及应用习题答案.docx_第20页
第20页 / 共46页
亲,该文档总共46页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

华中科技大学标准C语言程序设计及应用习题答案.docx

《华中科技大学标准C语言程序设计及应用习题答案.docx》由会员分享,可在线阅读,更多相关《华中科技大学标准C语言程序设计及应用习题答案.docx(46页珍藏版)》请在冰点文库上搜索。

华中科技大学标准C语言程序设计及应用习题答案.docx

华中科技大学标准C语言程序设计及应用习题答案

第二章

一.选择题

1.C2.BD3.A4.A5.D

6.C7.D8.C9.A10.D

11.B12.D13.C14.D15.A

16.B17.A18.B100011001111

二.判断题

1.错

2.错

3.错

4.错

三.填空题

1.B66

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

3.0

四.计算

1

(1)x|y=0x002f

(2)x^y=0x0026

(3)x&y=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

(5)1

(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("pleaseinputa&b:

");

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

printf("\nmaxis%d\n",(a>b)?

a:

b);

}

2.2

intmax(intx,inty);

main()

{

inta,b,c,max;

printf("pleaseinputa&b&c:

");

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

max=a>b?

a:

b;

max=c>max?

c:

max;

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

}

2.3

main()

{

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;i<10;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

#include

main()

{

inti;

inta=8,b=1;

intsum=0;

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

{

b+=3;

sum+=a;

a+=b;

printf("a%8db:

%8d\n",a,b);

}

printf("TheSumOfIs:

%d\n",sum);

}

2.7

#include

main()

{

floatx,y;

printf("pleaseinputx:

");

scanf("%f",&x);

if(x<1.0)

y=x;

elseif(x<10)

y=2*x-1;

else

y=3*x-11;

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

}

2.8

#include

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

#include

#include

#include

main()

{

inta,b,i,k=0;

randomize();

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

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

{

printf("pleaseguessanumber:

");

scanf("%d",&b);

if(a>b)

{

k++;

printf("\n%d:

Smaller,guessagain!

\n",k);

}

elseif(a

{

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

#include

main()

{

inta,b,c;

intnum;

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

{

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

{

for(c=1;c<10;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

#include

main()

{

inti;

inta,b;

printf("pleaseinputa,b:

");

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

for(i=a

a:

b;i>0;i--)

{

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

{

printf("Themax=%d",i);

break;

}

}

for(i=a>b?

a:

b;i>0;i++)

{

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

{

printf("\nThemin=%d",i);

break;

}

}

2.12

#include

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

#include

voidmain()

{

inti,x=0;

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

{

x=2*(x+1);

}

printf("Thefirstday:

%d",x);

}

2.15

#include

#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

#include

#include

main()

{

longintsn=0;

longintm=0,t=0;

inta,n,i;

printf("pleaseinputan:

");

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

for(i=0;i

{

m=m*10+a;

sn+=m;

}

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

}

2.17

#include

main()

{

intk;

printf("pleaseinputk:

");

do

{

scanf("%d",&k);

if(k>=0&&k<=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

#include

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

#include

#include

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);

}

第四章

写出下列程序输出结果

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]

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

#include

intfun();

intfun()

{

inta[3][3],sum;

inti,j;

sum=0;/*error*/

for(i=0;i<3;i++)

{

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

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

}

for(i=0;i<3;i++)

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

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

}

voidmain()

{

fun();

}

5.2

#include

 

voidmain(void)

{

floatNum[10];

floatInput,GetNum[11];

inti,j;

floata=6;

 

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

{

Num[i]=a;

a=a+7.5;

}

Loop1:

printf("PleaseinputaNumber(0-80)Input=");

scanf("%f",&Input);

if((Input<0)||(Input>70)==1)

gotoLoop1;

 

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

{

if(Input

gotoLoop2;

}

 

Loop2:

for(j=0;j

GetNum[j]=Num[j];

GetNum[j]=Input;

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

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

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

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

}

5.3

#include"stdio.h"

#include"stdlib.h"

main()

{

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

inta[3];

inti;

for(;;)

{

for(i=0;i<3;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

#include

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;i<100;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;i<100;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;i<100;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

#include

voidmain(void)

{

charstr1[80],str2[40];

inti,j,k;

/*Inputtwostring*/

printf("Pleaseinputthefirststring\nstr1=");

gets(str1);

printf("Pleaseinputthesecondstring\nstr2=");

gets(str2);

/*Gettheendofstr1*/

for(i=0;i<80;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

#include

structstudent

{charname[20];

intscore;

}stu[5],stu1;

voidmain(void)

{inti,j;

printf("Inputstudent'sscoreandname(5),seperateusingthecharacterof',':

\n");

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

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

/*sorting*/

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

for(j=0;j<4-i;j++)

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

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

printf("Aftersotred,scoreandname:

\n");

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

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

}

5.7

#include

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=(m>a[i][2])?

m:

a[i][2];

}

 

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

 

{o=(a[0][j]

a[0][j]:

a[1][j];

 

p=(o

o:

a[2][j];

}

if(n==p)

 

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

 

else

 

printf("Thereisnoandian.\\n");

}

5.8

#include

voidmain(vo

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2