《C语言程序设计基础》教材参考答案
3.补充程序: int n1=10,n2=20; printf(\ \ 要求按以下格式输出n1和n2的值,每个输出行从第一列开始。
n1=0010 n2=0020
4.有以下程序,程序运行时输入:1234<回车>,执行后输出的结果是_________________。
#include
ch1=getchar(); ch2=getchar(); n1=ch1-’0’; n2=n1*10+(ch2-’0’);
printf(\ }
5. 输入多个非字符型的数值数据时,数据输入时可用 、 和 作为间隔符。
*******************************************************************************
习题答案:
一.选择题
1.A
2.D
3.B
4.A
5.C
二.填空题
1.A 2.0.33%
3.n1=d\\nn2=d 4.n1=1,n2=12
5.空格,TAB键,回车
*******************************************************************************
四.实训指导
1. 完成【引例】中的题目,要求计算结果保留两位小数。
(1)输入三角形三边长度a,b,c;(2)计算s和面积area;(3)输出三角形面积area。 学习完本单元后,结合给定的演示运行界面,完成如下问题:
(1)输入三角形三边长度的语句如何描述:scanf(\
16
《C语言程序设计基础》教材参考答案
(2)输出计算结果的语句如何描述:printf(\三角形面积为:%.2f\\n\(3)试写出完整的程序实现代码: #include
{ float a,b,c,s,area;
printf(\请输入三角形三边长:\ scanf(\ s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf(\三角形的面积为:%.2f\\n\ }
2.编写程序,从键盘上输入某学生四门课程的成绩,计算并输出总成绩和平均成绩。
参考程序代码如下: #include
{ float a,b,c,d,sum=0,ave;
printf(\请输入四门课程成绩:\ scanf(\ sum=a+b+c+d; ave=sum/4;
printf(\该学生的总成绩为%.2f,平均成绩为:%.2f\\n\ }
3.设半径r=2.5,编程计算相应的圆的周长、圆的面积和圆球的体积。用函数scanf输入数据,输入数据要有提示语,输出计算结果中要有文字说明,计算结果取小数点后2位。
参考程序代码如下: #include
printf(\请输入半径值:\ scanf(\ c=2*PI*r; s=PI*r*r; v=3*PI*r*r*r/4;
printf(\半径为%.2f时,对应的:\\n\ printf(\圆的周长为:%.2f.\\n\ printf(\圆的面积为:%.2f.\\n\
17
《C语言程序设计基础》教材参考答案
printf(\球的体积为:%.2f.\\n\}
4.将“China”字符串译成密码,译码规则:对每个字母用其后面的第5个字母替换。即字母a用f替换,b用g替换,以此类推。
(1)请预编写程序,定义五个字符型变量c1、c2、c3、c4和c5,同时赋初值分别为’C’、’h’、’i’、’n’和’a’,然后译成密码并输出,分析结果是否符合要求。
参考程序代码如下: #include
{ char c1='C',c2='h',c3='i',c4='n',c5='a'; printf(\原数据为:\
printf(\ c1+=5; c2+=5; c3+=5; c4+=5; c5+=5;
printf(\译成密码后的结果:\ printf(\}
(2)将变量c1、c2、c3、c4和c5的初值改为’H’、’a’、’p’、’p’和’y’,再次运行程序,分析结果是否符合要求。
答:不符合要求了,初值’H’、’a’、’p’、’p’和’y’译成密码后的结果为“Mfuu~”,初值最后一个字母’y’其后第5个字母应该为’d’。通过分析可以看出,要想获得字母’y’后的第5个字母,直接加5是得不到的。对于这样的情况应该进行选择判断处理,在下一章讲解。
18
《C语言程序设计基础》教材参考答案
单元四 选择结构程序设计
一. 随堂练习 【随堂练习4-1】
1.当a=3,b=2,c=1时,判断例4-1中条件表达式的值? (1)a>b==c 真 (2)a=b (1)r==3 真 (2) r=4 真 (3)0 【随堂练习4-2】 1.判断字符变量ch的值为大写字母的逻辑表达式为: ch>=’A’&&ch<=’Z’ 。 2.判断某一年份是否为闰年。闰年是符合以下条件的年份:能被4整除但不能被100整除,或者能被400整除。若用整型变量year 表示年份,则闰年的逻辑判断表达式为: year%4==0&&year0!=0||year@0==0 。 【随堂练习4-3】 1.以下程序段的运行结果是 x=20,y=20 。 int x=10,y=20; if(x printf(“x=%d,y=%d”,x,y); 2.以下程序段的功能是计算一个整数的绝对值,将程序补充完整。 int n; scanf(“%d”,&n); if(n<0) n=-n; printf(“该整数的绝对值是%d.”,n); 【随堂练习4-4】 1.以下程序可判断指定的年份是否为闰年,补充完整。 19