C语言实验报告第3章答案.docx

上传人:b****7 文档编号:15437477 上传时间:2023-07-04 格式:DOCX 页数:18 大小:202.26KB
下载 相关 举报
C语言实验报告第3章答案.docx_第1页
第1页 / 共18页
C语言实验报告第3章答案.docx_第2页
第2页 / 共18页
C语言实验报告第3章答案.docx_第3页
第3页 / 共18页
C语言实验报告第3章答案.docx_第4页
第4页 / 共18页
C语言实验报告第3章答案.docx_第5页
第5页 / 共18页
C语言实验报告第3章答案.docx_第6页
第6页 / 共18页
C语言实验报告第3章答案.docx_第7页
第7页 / 共18页
C语言实验报告第3章答案.docx_第8页
第8页 / 共18页
C语言实验报告第3章答案.docx_第9页
第9页 / 共18页
C语言实验报告第3章答案.docx_第10页
第10页 / 共18页
C语言实验报告第3章答案.docx_第11页
第11页 / 共18页
C语言实验报告第3章答案.docx_第12页
第12页 / 共18页
C语言实验报告第3章答案.docx_第13页
第13页 / 共18页
C语言实验报告第3章答案.docx_第14页
第14页 / 共18页
C语言实验报告第3章答案.docx_第15页
第15页 / 共18页
C语言实验报告第3章答案.docx_第16页
第16页 / 共18页
C语言实验报告第3章答案.docx_第17页
第17页 / 共18页
C语言实验报告第3章答案.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言实验报告第3章答案.docx

《C语言实验报告第3章答案.docx》由会员分享,可在线阅读,更多相关《C语言实验报告第3章答案.docx(18页珍藏版)》请在冰点文库上搜索。

C语言实验报告第3章答案.docx

C语言实验报告第3章答案

 

3.2基础实验

一、程序分析

1.以下程序若输入’a’,则输入格式为:

c1=a;运行结果为:

#includeintmain()

{charc1,c2;

scanf(“c1=%c”,&c1);c2=c1-32;

printf(“%c,n%”c,c1,c2);return0;

 

a,A↙

}

2.以下程序如果使得a的值为2、b的值为3,则输入格式为:

_a=2,b=3;运行结果为:

_2,3↙_。

#includeintmain()

{inta,b;scanf(“a=%d,b=%d”,&a,&b);

printf(“%n”a,,b);

return0;

}

3.以下程序若输入12.3、7.6、1.1,则输入格式为:

_12.37.61.1;运行结果为:

_aver=7.00。

#includeintmain()

{floata,b,c,d;

scanf(“%f%f%f”,&a,&b,&c);d=(a+b+c)/3;

printf(av“er=%.2f”d,);

return0;

}

二、程序填空

1.输入一个四位整数,求各位数字之和(如1234,则结果为1+2+3+4=10)。

若输入3562,则运行结果为:

3+5+6+2=16↙。

#includeintmain()

{intn,a,b,c,d,m;

scanf(“%&d”n),;a=n%10;b=(n/10)%10;c=(n/100)%10;

d=n/1000;m=__a+b+c+d;

printf(%“d+%d+%d+%d=%d\n”,d,c,b,a,m);

return0;

}

32)

 

行号

1

1.

分析以下程序段,找出错误并改正。

源程序

#include

2

main()

3

{inti;floatk;

4

scanf(“i=%d”,i);

5

k=3.12*i;

6

printf(“.2f%\n”,k);

7

return0;

8

}

 

调试正确后的运行结果

应改为:

scanf(“i=%d”,&i);

输入数据:

i=17运行结果:

53.04↙

行号

1

2.

分析以下程序段,找出错误并改正。

源程序

#include

2

main()

3

{chara;intb;floatc;doubled;

4

scanf(“%c,%d,%f,%lf”,&a,&b,&c,&d);

5

putchar(a\n);

6

printf(“%dn”b,,c,d);

7

return0;

8

}

 

找错

调试正确后的运行结果

四、程序设计

错误在5行

应改为:

putchar(a);putchar(“\n”);

输入数据:

A,19,12.3,10.98运行结果:

A↙19,12.30,10.98

1.对输入的字符进行加密,加密规则为“输入4个字符,将每个字符加4后转换成加密字符”,如输入“Ab2c”则加密后的字符序列为“Ef6g”。

1.#includeintmain()

{charc1,c2,c3,c4;

scanf(“c%%c%c%c”,&c1,&c2,&c3,&c4);c1+=4;

c2+=4;c3+=4;c4+=4;

printf(“n”c,1,c2,c3,c4);

return0;

}

3.3拓展实验

一、程序分析

1.⊙以下程序若输入3.4、12.0、8.9,则输入格式为:

3.4,12.0,8.9,运行结果

为:

7.20↙。

#include#includeintmain()

{floata,b,c;floats,area;

scanf(“%f,%f,%f”,&a,&b,&c);

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

area=sqrt(s*(s-a)*(s-b)*(s-c));printf(“%n”,area);return0;

}

2.以下程序若输入C和2,则运行结果分别为:

'F'和'5'。

#include

intmain()

{charc1;intc2=0;

c1=getchar();c2=c1+3;

putchar('\'');putchar(c2);putchar('\'');return0;

}

二、程序填空

1.⊙以下程序实现按由大到小顺序输出任意两个整数。

若输入3562,则运行结果为:

62,35↙。

#includeintmain()

{intm,n;

scanf(“%d”_,&m,&n);

 

n>=m?

printf(return0;

}

%“d,%d\n”,n,m):

_printf(“n”m,,n);

2.以下程序实现输入任意两个整数,完成加、减、乘、除、求余操作并运行

结果。

若输入29、18,则运行结果为:

_29+18=47,29-18=11,29*18=522,29/18=1,29%18=11_。

#includeintmain()

{intx,y;

printf(“请输入x,y的值:

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

printf(printf(printf(printf(printf(

%“d+%d=%d,”,_x,y,x+y);

%“d-%d=%d,”,_x,y,x-y);

%“d*%d=%d,”,_x,y,x*y);

%“d/%d=%d,”,_x,y,x/y);

%“d%%%d=%d”,_x,y,x%y);

return0;

}

三、程序改错

1.分析以下程序段,找出错误并改正。

4

main()

5

{floatr;

6

scanf(r“=%f”,&r);

7

printf(“%.2f

n”p,i*pow(r,2),2pi*r);

8

return0;

9

}

错误在3,7行

找错

应改为:

#definepi

3.1416

printf(“%.2f

n”p,i*pow(r,2),2*pi*r);

调试正确后

输入数据:

r=2

运行结果:

12.57,12.57↙

的运行结果

r=3

28.27,18.85↙

 

3.4

习题

一、选择题

1.以下4个选项中,不能看作一条语句的是()。

A.{;}B.a=0,b=0,c=0;C.if(a>0);D.if(b==0)m=1;n=2;

2.以下叙述中错误的是()。

A.C语句必须以分号结束

B.复合语句在语法上被看作一条语句

C.空语句出现在任何位置都不会影响程序运行D.赋值表达式末尾加分号就构成赋值语句

3.⊙已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A,B,当从第一列开始输入数据时,正确的数据输入方式是()。

inta1,a2;charc1,c2;

scanf(“%d%c%d%”c,&a1,&c1,&a,2&c2);

A.10A20B↙B.10A20B↙C.10A20B↙D.10A20B↙

4.有输入语句:

scanf(“a=%d,b=%d,c=%d”,&a,&b,&c为);使变量a的值为

1,b的值为3,c的值为2,则正确的数据输入方式是()。

A.132↙B.1,3,2↙C.a=1b=3c=2↙D.a=1,b=3,c=2↙

5.若定义x为double型变量,则能正确输入x值的语句是()。

A.scanf(“%f”,x.)s;cBanf(“%f”,&x);

C.scanf(“%lf”,&Dx.s);canf(“%5.1f”,&x);

6.已知i,j,k为int型变量,若从键盘输入:

1,2,3<回车>,以下选项中正确的输入语句是()。

A.scanf(“%2d%2d%2”d,&i,&j,&k);B.scanf(“%d_%d_%”d,&i,&j,&k);

C.scanf(“%d,%d,%d”,&i,&j,&k);D.scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);

7.⊙若运行时输入:

12345678↙,则下列程序运行结果为()。

inta,b;

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

printf(“n%”d,a+b);A.46B.579C.5690D.出错

8.以下说法正确的是()。

A.输入项可以为一实型常量,如scanf(“%f”,3.5);

B.只有格式控制,没有输入项,也能进行正确输入,如scanf(“a=%d,b=%d”);

C.当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(“%4.2f”,&f);

D.当输入数据时,必须指明变量的地址,如scanf(“%f”,&f);

9.⊙以下程序若输入:

12<回车>,运行结果是()。

#include

intmain()

{chara,b;intn,m;a=getchar();b=getchar();

n=a-’0’;m=n*10+(b-’0’);

printf(“n%”m,);return0;

}

A.112B.12C.120D.出错

10.⊙以下程序的运行结果是()。

#includeintmain()

{intx=102,y=012;printf(“%2d,%2d”,x,y);return0;

}

A.10,01B.002,12C.102,10D.02,10

11.⊙printf函数中用到格式符%ms,其中数字m表示输出的字符串占的总列数。

如果m为负整数,则输出方式为()。

A.从左起输出该字串,当指定列数大于实际列数时右补空格

B.按原字符长从左向右全部输出

C.右对齐输出该字串,当指定列数大于实际列数时左补空格

D.输出错误信息

12.⊙设有如下程序段:

intx=17,y=18,z=19;

printf(“%d\n”,(x,y,++z));则以下叙述正确的是()。

A.输出语句中格式说明的个数少于输出项的个数,不能正确输出

B.运行时产生出错信息C.输出值为17,18,20D.输出值为20

13.有以下程序#includeintmain()

{chara1='M',a2='m';

printf(“n%”c,(a1,a2));return0;

}以下叙述中正确的是()。

A.程序输出大写字母MB.程序输出小写字母m

C.格式说明符不足,编译出错D.程序运行时出错

14.putchar()函数可以向终端输出一个()。

A.整型变量表达式值B.实型变量值

C.字符串D.字符或字符型变量值

15.⊙以下程序若输入:

123<回车>45678<回车>,则运行结果是()。

#include

intmain()

{chara,b,c,d,e,f;scanf(“%c%c%c%c”,&a,&b,&c,&d);e=getchar();

f=getchar();putchar(a);putchar(b);

printf(“%c%c\n”,e,f);

return0;

}

A.1267B.1256C.1278D.1245

二、填空题

1.复合语句是用一对大括号界定的语句块。

2.printf函数和scanf函数的格式说明都使用%字符开始。

3.在C语言中,输入操作是由库函数_scanf完成,输出操作是由库函数_printf

完成。

4.在C语言中,字符输出是由库函数_putchar完成,字符输入是由库函数

_getchar完成。

5.字符输出函数putchar每次输出_1个字符。

三、程序分析题

1.⊙用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1='A',c2='a',则在键盘输入格式为:

a=3b=78.57.182e1Aa。

#includeintmain()

{inta,b;

floatx,y;charc1,c2;

scanf(“a=%db=%d”,&a,&b);

scanf(“%f%e”,&x,&y);

scanf(“%c%c”,&c1,&c2);

printf(“%d,%d,%f,%f,%c,%c”,a,b,x,y,c1,c2);

return0;

}

2.以下程序的运行结果是a=12345,b=-1.98e+002,c=6.50↙。

#include

intmain()

{inta=12345;

floatb=-198.345,c=6.5;

printf(“a=%4d,b=%n”,a,b,c);return0;

}

3.

以下程序的运行结果是x=1y=2*sum*=3↙10Squaredis:

100↙。

#include

intmain()

{intx=1,y=2;

printf(“x=%dy=%d*sum*=%n”d,x,y,x+y);

printf(“10Squared(i1sn:

)%1”0d,10*10);

return0;

}

(2)10

(3)56.100000

(4)3.141600

4.以下程序运行结果是。

#includeintmain()

{intx=10;

floatpi=3.1416;printf(“

(1)n%”d,x);

printf(“

(2)%n6”d,x);

printf(“(3)n%”f,56.1);

printf(“(4)%n1”4f,pi);return0;

}

5.⊙以下程序若输入100↙,则运行结果是#include

intmain()

{inta;

scanf(“%d”,&a);

yes。

printf(“%s”,(a%2!

=0)?

“No”:

”Yes”);

}

四、程序填空题

1.以下程序实现的功能是输入一个字符,输出该字符的后4位,请将程序补充完整。

#includeintmain()

{intc1;c1=getchar();

putchar(c1+4);return0;

}

2.以下程序的功能是输出s1,x,y的值,保留原小数位数,请将程序补充完整。

#include

intmain()

{floatx=655.35;doubley=765.4271;chars1='c';

printf(“%c,%.2f,%.4lf”,s1,x,y);

return0;

}

3.以下程序是使用“*”在屏幕上显示一个C,请将程序补充完整。

#include“stdio.h”

intmain()

{printf(“HelloCn”);printf(“****\n”);

printf(“n”*);

printf(“n”*);

printf(“**n*”*);

}

4.要求按照以下形式输入3个整数并完成计算,请将程序补充完整。

从键盘输入:

a=13,b=14,c=25<回车>

#includeintmain()

{inta,b,c;

scanf(_“a=%d,b=%d,c=%d”,&a,&b,&c);

printf(“n”,a+b*c);

}

五、程序设计题

1.编写程序,输入一个人三门课的成绩,输出其平均成绩。

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

当前位置:首页 > 表格模板 > 合同协议

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

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