课后题答案.docx

上传人:b****6 文档编号:7839265 上传时间:2023-01-26 格式:DOCX 页数:21 大小:35.95KB
下载 相关 举报
课后题答案.docx_第1页
第1页 / 共21页
课后题答案.docx_第2页
第2页 / 共21页
课后题答案.docx_第3页
第3页 / 共21页
课后题答案.docx_第4页
第4页 / 共21页
课后题答案.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

课后题答案.docx

《课后题答案.docx》由会员分享,可在线阅读,更多相关《课后题答案.docx(21页珍藏版)》请在冰豆网上搜索。

课后题答案.docx

课后题答案

项目一

一、选择题

1.A2.C3.B4.A5.D

二、填空题

1.编辑、编译、链接、运行

2.至少一个,可以由任意多个

3.Options子菜单【Directories】子菜单项;Include路径、库文件路径、输出路径、TC路径

4.按照指定格式输出数据

5.快捷键Ctrl+F9;Alt+F5

三、编程题

#include

main()

{

printf("*\n");

printf("**\n");

printf("**\n");

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

printf("*Triangle!

*\n");

}

项目二

一、填空题

1.'\n':

换行;'\t'跳格;'\0':

空字符;'\07':

BEL;'\"':

双引号。

2.10:

整型;'A':

字符型;1.5E12:

实型;'\n':

字符型。

3.格式字符%d用于输出十进制整数;%c用于输出单个字符;%s用于输出字符串。

4.格式字符%d用于输入十进制整数;%f用于输入单精度数值;%s用于输入字符串。

5.单引号(')

6.axbycz

7.英文大小写字母、数字、下划线。

字母、下划线

8.printf(“n1=%d\nn2=%d”,n1,n2);

二、选择题

1.D

2.C

3.C

4.B

5.D

6.B

7.D

8.B

三、程序的执行结果

项目三

一、选择题

1.C2.D3.D4.C5.D

二、填空题

1.1

2.103

3.1

4.2

5.12;10

三、编程题

1.j

2.x=3,y=2,a=1,b=3

3.

(1)x转换为double型xdouble,y转换为int型yint

(2)计算yint%3

(3)将y转化为double类型ydouble与xdouble相加

(4)将步骤(3)的结果强制转化为int类型

(5)将步骤

(2)的结果与将步骤(4)的结果相乘,结果仍为整数

(6)将步骤(5)的结果转换为double类型,和xdouble相加

main()

{

floatx=3.01;chary='A';

printf("%lf\n",x+y%3*(int)(x+y));

printf("%d",x+y%3*(int)(x+y));

}

4.

main()

{

intn,n1,n2,n3;

printf("inputanumber(100~999):

\n");

scanf("%d",&n);

if(n<100||n>999)

{

printf("%disnotanumberbetween100and999.");

exit(0);

}

n1=n%10;

n2=(n/10)%10;

n3=n/100;

printf("sum:

%d+%d+%d=%d",n1,n2,n3,n1+n2+n3);

}

项目四

四、填空题

1.顺序、选择、循环

2.顺序

3.1

4.&&、||、!

5.x

6.y%2==1

五、选择题

1.C

2.D

3.B

4.C

5.C、D

6.D

六、求解下面表达式的值

1.0

2.1

3.

(1)1

(2)0(3)0(4)1

七、程序题

1.2

2.you$3.0yuan/xiaoshi

3.25,18,16

4.功能是完成大小写字母转换,输入Z运行结果是 :

z

八、编写程序

参考程序如下:

1.#include

main()

{inta;

intb;

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

if(a*a+b*b>100)

printf("a*a+b*b=%d",a*a+b*b);

else

printf("a+b=%d",a+b);

}

2.#include

main()

{intx;

scanf("%d",&x);

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

printf("yes" );

else

printf("no");

}

3.#include

main()

{inta;

intb;

intc ;

intmax ;

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

if(a>b)max=a ;

elsemax=b

if(max

printf("Max=%d",max);

}

项目五

一、填空题

1.0

2.终止当前switch语句的执行;多个switch表达式对应同样的操作

3.如果没有满足的case语句,就执行default对应的语句

4.执行该语句时,顺次判断各条件,一旦满足某一个条件i,就接着执行对应的语句i。

并且不再执行其他判断,直接退出整个if-else语句。

在执行switch语句时,先计算switch后面括号里表达式的值,然后根据这个结果选择匹配的case语句执行(case后面的常量表达式与switch表达式的值相等称为匹配)。

如果没有满足的case语句,就执行default对应的语句。

5.2

6.0

二、编程题

1.

main()

{

doublex=1;

inty;

printf("pleaseinputvalueofx:

\n");

scanf("%lf",&x);

switch((x<=0)+(x<0))

{

case0:

y=1;

break;

case1:

y=0;

break;

case2:

y=-1;

break;

}

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

}

2.

main()

{

intmonth,days;

printf("inputmonth:

\n");

scanf("%d",&month);

if(month<1||month>12)

return;

switch(month)

{

case1:

case3:

case5:

case7:

case8:

case10:

case12:

days=31;

break;

case2:

days=28;

break;

default:

days=30;

break;

}

printf("%dthmonthhas%ddays\n",month,days);

}

3.

main()

{

intn1,n2,n3,n4,m1,m2;

printf("input4integers:

\n");

scanf("%d",&n1);

scanf("%d",&n2);

scanf("%d",&n3);

scanf("%d",&n4);

if(n1

if(n3

if(n1>n3)

printf("Maxvalueis%d",n1);

else

printf("Maxvalueis%d",n3);

}

4.

main()

{

intn,n1,n2,n3;

printf("inputanumber(0~999):

\n");

scanf("%d",&n);

if(n<0||n>999)

{

printf("%disnotaintegerbetween0and999.\n",n);

return;

}

n3=n/100;

if(n3)

{

printf("three-digitnumber.\n");

}

else

{

n2=(n/10)%10;

if(n2)

{

printf("two-digitnumber.\n");

}

else

{

n1=n%10;

if(n1)

{

printf("one-digitnumber.\n");

}

else

{

printf("zero.\n");

}

}

}

}

5.

main()

{

doublemiles,cost;

printf("inputmiles:

\n");

scanf("%lf",&miles);

if(miles<0)

return;

if(miles<3)

cost=7;

else

cost=7+(miles-3)*2.2;

printf("%.2lfmilescost%.2lfyuan.\n");

}

项目六

九、填空题

1.forwhiledo-while

2.do-while语句

3.for语句

4.先判断,后执行。

先执行,后判断。

5.循环变量终值

一十、选择题

1.B

2.A

3.A

4.C

5.C

6.B

7.B

一十一、程序填空

1.(-1)*f

2.①pow1=1②n

3.①sum=0②i++ ; ③sum=sum+1.0/i

4.①i=1 ②scanf("%d",&a); ③a>max

5.①fact=1②i<=n

一十二、写出程序执行结果

1.######

2.8921

3.52

4.死循环,无结果

5.*#*#*#$

6.输出n的阶乘

7.输出x的n次方

8.输出所有输入的数中偶数的和,当输入的数小于0时结束程序

一十三、编写程序

参考程序如下:

4.#include

main()

{

inti,s;

doublet,sum;

s=2;

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

{

s=s+i-1;

t=s*(1.0)/i;

sum=sum+t;

}

printf("%f\n",sum);

}

5.#include

main()

{inti;

longsum,t;

t=0;

sum=0;

for(i=1;i<=6;i++)

{t=t*10+8;

sum=sum+t;

}

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

}

项目七

一、选择题

1.C2.D3.D4.D

二、填空题

1.M-1;N-1

2.strcat

3.str1[0]='\0'

4.&a[i];i%4==0;printf("\n");;

5.a[i][j]%2==0;number++

三、编程题

1.

main()

{

charstr1[20],str2[20];

inti=0,len;

printf("Input2strings:

\n");

gets(str1);

gets(str2);

if(strlen(str1)+strlen(str2)+1>20)

return;

len=strlen(str1);

for(i=0;i

str1[len+i]=str2[i];

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

printf("Thenewstringis:

%s\n",str1);

}

2.

main()

{

doubledata[5],sum;

inti;

printf("input5doublefloatnumber:

\n");

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

scanf("%lf",&data[i]);

sum=0.0;

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

sum=sum+data[i];

sum=sum/5;

printf("average:

%lf\n",sum);

printf("thosenumberarebiggerthanaverage:

\n");

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

if(data[i]>sum)

printf("%lf",data[i]);

}

3.

main()

{

intarr[10]={23,45,-22,32,-56,-1,30,-10,22,16};

inti,num=0;

clrscr();

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

{

if(arr[i]>0)num++;

if(arr[i]<0)arr[i]=0;

}

printf("thereare%dpositivenumbers.\n",num);

printf("thenewelementsare:

\n");

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

{

printf("%d,",arr[i]);

}

printf("\n");

}

4.

main()

{

charstr[20];

chartemp;

inti,j;

printf("inputastring.\n");

gets(str);

for(i=0,j=strlen(str)-1;i

{

temp=str[i];

str[i]=str[j];

str[j]=temp;

}

printf("reversedstring:

%s\n",str);

}

5.

intIsSymmetric(char*str)

{

inti,j;

for(i=0,j=strlen(str)-1;i

{

if(str[i]!

=str[j])return0;

}

return1;

}

main()

{

charstr[20];

chartemp;

inti,j;

clrscr();

printf("inputastring.\n");

gets(str);

if(IsSymmetric(str))

printf("Symmetric.\n");

else

printf("NotSymmetric\n");

}

项目八

一十四、写执行结果

1.x=2,y=5.000000

x=2,y=5.000000

ffc2,ffc4

ffc2,ffc4

(注:

后两行结果不一定与此相同)

2.1

2

3

4

5

6

7

8

9

10

3.C,program,CLanguge

4.1345

5.最后少了“printf("b=%d",b);} ”,结果为:

b=13

一十五、编写程序

1.#include

main()

{inti=0;

chars[30],*p;

printf("pleaseinputtwostrings:

\n");

gets(s);

p=s;

while(*p!

='\0')

{i++;p++;}

printf("Thelengthofstringis%d\n",i);

}

2.#include

main()

{inti,n,t;

intnum[20],*p,*q;

printf("\nPleaseinputn(n<20):

");

scanf("%d",&n);

for(i=0;i

{printf("\nPleaseinputNo.%d:

",i+1);

scanf("%d",&num[i]);

}

for(p=num,q=num+n-1;p

{t=*p;*p=*q;*q=t;}

for(i=0;i

}

或:

#include

main()

{intn,t;

intnum[20],*p,*q;

printf("\nPleaseinputn(n<20):

");

scanf("%d",&n);

for(p=num;p

{printf("\nPleaseinputNumber:

");

scanf("%d",p);

}

for(p=num,q=num+n-1;p

{t=*p;*p=*q;*q=t;}

for(p=num;p

}

项目九

一、选择题

1.A2.C3.A4.D5.B

二、填空题

1.一一对应,个数相同,对应参数的类型相同

2.从实参到形参的单向传递

3.返回主调函数继续向下执行

4.A+B=12,C=14

三、编程题

1.

intsum(intn)

{

inti,s=0;

for(i=2;i<=n;i+=2)

s=s+i;

returns;

}

main()

{

inti,n;

printf("inputainteger(>1):

\n");

scanf("%d",&n);

if(n<1)

return;

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

}

2.

intIsPrime(intn)

{

inti;

if(n<2)

return-1;

for(i=2;i

{

if(n%i==0)return0;

}

return1;

}

main()

{

intn,m;

clrscr();

printf("inputapositiveinteger:

\n");

scanf("%d",&n);

m=IsPrime(n);

if(m==1)

printf("%disaprimenumber.\n",n);

elseif(m==0)

printf("%disnotaprimenumber.\n",n);

}

3.

intsum(intn)

{

inti,s=0;

while(n)

{

s=s+n%10;

n=n/10;

}

returns;

}

main()

{

inti,n;

printf("inputapositiveinteger(>1):

\n");

scanf("%d",&n);

if(n<1)

return;

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

}

4.

voidfunc(char*str)

{

intlen,i;

printf("inputastring:

\n");

gets(str);

len=strlen(str);

for(i=1;i<=len;i++)

str[i-1]=str[i];

printf("newstringis:

\n");

printf("%s\n",str);

}

main()

{

intn,m;

charstr[20];

clrscr();

func(str);

}

项目十

一十六、分析程序功能

1.计算整数u和v的最大公约数H.C.F和最小公倍数L.C.D。

2.输入一个不超过10个字符的字符串,将字符串中字符从大倒小排序输出。

一十七、错误分析

正确的程序如下:

intsum(inta,intb)

{

return(a+b);

}

main()

{

intx,y;

x=3;

y=5;

printf("%d\n",sum(x,y));

}

一十八、读程序,写结果

1.运行结果为:

Theresultis243.000000

程序的功能为:

求乘方

2.程序运行结果为:

5050。

该程序的功能为:

求1+2+3+4+……+k的和

3.程序运行结果为:

140。

该程序的功能为:

计算7*20

项目十一

一十九、简答题

1.函数gettime获取当前系统时间。

需要加载头函数dos.h

2.函数initgraph

3.调用格式为:

initgraph(*gdriver,*gmode,*path)

调用方法:

intgdriver=VGA,gmode=VGAHI;

initgraph(&gdriver,&gmode,"d:

\\turboc");

4.使用函数setcolor(4)设置前景色为红色

使用函数setbkcolor

(1)设置背景色为蓝色。

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

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

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1