《C语言程序设计基础》教材参考答案-20140211
更新时间:2024-05-23 19:08:01 阅读量: 综合文库 文档下载
《C语言程序设计基础》教材
参 考 答 案
包括各单元:
一. 随堂练习 二. 单元总结 三. 单元练习 四. 实训指导
《C语言程序设计基础》教材参考答案
单元一 程序设计宏观认识
一. 随堂练习
【随堂练习1-1】
1.根据上述示例模仿编程,输入正方形的边长,计算其面积。
#include
//数据准备,边长a,面积s
printf(\请输入正方形的边长:\ scanf(\ s=a*a; }
//数据输入
//数据计算
printf(\该正方形的面积为:%d.\\n\
【随堂练习1-2】
1. 下面哪些标识符属于合法的用户自定义标识符: Main、void、_num、my$、a*、N4、3m、a-2 答:合法的用户自定义标识符是:Main、_num、N4
2. 结合【例1.2】指出程序代码中所用到的标识符哪些是关键字,哪些是预定义标识符,
哪些是用户自定义标识符。 答:关键字:void、int
预定义标识符:include、main、printf、scanf 用户自定义标识符:a、b、c
3. 分析【例1.2】中函数的结构,包括函数首部(函数返回值类型、函数名、形式参数)、
函数体语句(说明语句、可执行语句)。
答:函数首部: void main( ),其中函数返回值类型为void、函数名为main、形式参数无; 函数体语句:{}内的语句为函数体,其中:说明语句为int a,b,c;,其余为可执行语句。 【随堂练习1-3】
1. 在VC++6.0环境中完成【例1.2】程序开发过程。
(略)
2.查阅【例1.2】所对应的工程文件夹,了解相关文件的含义。
1
《C语言程序设计基础》教材参考答案
工程文件夹中:
.CPP:用C/C++语言编写的源代码文件。
.DSP:VC开发环境生成的工程文件,VC4及以前版本使用MAK文件来定义工程。项目文件,文本格式。
.DSW:VC开发环境生成的WorkSpace文件,用来把多个工程组织到一个WorkSpace中。工作区文件,与.dsp差不多。
.NCB:NCB是“No Compile Browser”的缩写,其中存放了供ClassView、WizardBar和Component Gallery使用的信息,由VC开发环境自动生成。无编译浏览文件。当自动完成功能出问题时可以删除此文件。编译工程后会自动生成。
.OPT:VC开发环境自动生成的用来存放WorkSpace中各种选项的文件。工程关于开发环境的参数文件。如工具条位置信息等。
DEBUG文件夹中:
.OBJ:源文件编译后生成的目标文件,是模块的二进制中间文件。 .EXE:可执行文件。
(注:蓝色字体为重点了解。)
二. 单元总结
本单元中,核心内容有C语言程序框架结构、程序的构成和程序开发过程。通过本单元的学习,我们应该知道:
1.C语言程序最基本的程序框架由两部分构成,分别是: (1) 编译预处理 (2) 函数组
2.C程序最大的特点就是所有的程序都是用函数来装配的,函数是构成C语言程序的基本单位,函数包括主函数、库函数和自定义函数。函数的一般结构形式为: 函数返回值类型 函数名(形式参数) //函数首部 { 说明语句; //函数体 可执行语句;
}
3.标识符是用来标识程序中的某个对象名字的字符序列。C语言把标识符分为三类,即关键字、预定义标识符、用户自定义标识符。对于用户自定义标识符的命名C语言规定:
(1) 所有的用户标识符必须先定义后使用;
(2) 用户标识符由字母(A~Z,a~z)、数字(0~9)、下划线“_”组成,并且首字符不能是 数字 ;
2
《C语言程序设计基础》教材参考答案
(3) 区分大小写;
(4)不能用关键字作为用户自定义标识符,通常不使用预定义标识符作为用户自定义标识符。
4.理论上讲,程序开发过程分为四个步骤,分别为:
(1) 编辑源程序 (2) 编译源程序,生成目标程序 (3) 连接目标程序及其相关模块,生成可执行文件 (4) 运行可执行文件 5.简单描述使用VC++6.0开发应用程序的步骤: 如图所示:
启动VC++6.0 打开或 新建工程 打开或 新建文件 编辑、编译 连接、运行 完成 图 VC++6.0开发程序的步骤 总之,通过本单元的学习,应该掌握C语言程序框架结构和程序开发过程,还要对C语言程序设计的知识脉络有一定的了解。
三. 单元练习
一.选择题
1.构成C语言程序的基本单位是( )。
A.框架
B.预处理 C.函数 D.语句
2.在程序开发过程中,把文本文件格式源程序转化为二进制格式的目标程序的过程称之为( )。
A.编辑 B.编译 C.连接 D.运行 3.关于主函数,下列说法不正确的是( )。
A.一个完整的C语言应用程序有唯一的主函数 B.主函数的名称只能是main C.主函数可以被其他自定义函数调用
D.C语言程序的运行从主函数开始,以主函数为核心展开
3
《C语言程序设计基础》教材参考答案
4.关于标识符,下列说法不正确的是( )。
A.库函数名称为预定义标识符,不建议用作用户自定义标识符 B. 关键字不能作为用户自定义标识符 C.用户自定义标识符中不区分大小写字母
D.标识符中可以出现下划线,且可以出现在标识符的任意位置 5.以下可用作用户自定义标识符的一组是( )。
A.void、return、if
B.printf、include、fabs D.2abc、pay$、sum-10
C.Max、_abc、Main
二.填空题
1.C语言程序一般由若干个函数构成,程序中应至少包含一个_________,其名称只能为_________。
2.C语言程序中每条语句必须以_________结束。
3.C语言程序的注释是以_________开头,以________结束的,在VC++6.0编程环境中,可使用_________作为注释的起始标识,注释对程序的执行不起任何作用。
4.最初编写的C语言程序称为_________,其扩展名为_________,编译后生成的文件为_________,其扩展名是_________,连接后生成的文件是_________,其扩展名是_________。 5.C语言规定,标识符只能由_________、_________和_________三种字符组成,而且,首字符只能是_________或_________。
*******************************************************************************
习题答案:
一.选择题
1.C
2.B
3.C
4.C
5.C
二.填空题
1.主函数 main 2.分号;
3./* */ //
4.源程序 .cpp或.c 序) .exe
目标文件(或目标程序) .obj 可执行文件(或可执行程
5.字母(A~Z,a~z)、数字(0~9)、下划线“_” 字母或下划线
*******************************************************************************
4
《C语言程序设计基础》教材参考答案
1.已定义x为float型变量,其值为213.45678,则printf(\的输出结果为( )。
A.213.46 C.-213.45
B.213.45
D.输出格式控制说明的域宽不够,不能输出
2. 有以下程序,程序运行时输入:1,2,3<回车>,则输出的结果为( )。
#include
scanf(\ printf(\ }
A.6 B.a+b+c=6 C.123 D.不确定的值
3.下面输入语句中,正确的是( )。
A.scanf(\ B.scanf(\; C.scanf(\;
D.scanf(\;
4.在VC++6.0环境中,下列说法正确的是( )。
A.输入函数scanf()输入多个数据时,有时数据间不必加间隔符。
B.输入函数scanf()中单精度或双精度浮点型数据都要用%f作为格式控制符。 C.使用输出函数printf()输出字符或字符串都用格式控制符%s。
D.输出函数printf()中单精度或双精度浮点型数据都要用%f作为格式控制符。 5.下面程序的功能是实现两个字符变量互换值,若为ch1输入a,ch2输入b,则程序运行时正确的输入是( )。
#include
{ char ch1,ch2,ch;
scanf(\ ch=ch1;ch1=ch2;ch2=ch;
printf(\ }
A.a,b B.a<空格>b C.ab D.a<回车>b
二.填空题
1.有语句putchar(getchar()),程序运行时输入:A,则输出结果是____________。 2.printf(\3);的输出结果是____________。
15
《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
正在阅读:
《C语言程序设计基础》教材参考答案-2014021105-23
电工电子实习心得体会09-05
极度伤心的话语02-11
晋华宫矿“走动式”管理制度及考核办法07-02
微免大题12-07
安徽工业大学电工电子实习总结报告11-14
浅谈中国及英国食品安全监管体系的对比研究12-17
可以遗忘的过来10-28
个人家庭理财系列(投资基础)08-06
典型环节及其阶跃响应03-14
- 小学生造句大全
- 增压泵投资项目可行性研究报告(模板)
- 高中语文人教版粤教版必修1-5全部文言文知识点归纳
- 两学一做专题民主生活会组织生活会批评与自我批评环节个人发言提
- 管理处环境保洁工作操作标准作业指导书
- 2012六一儿童节活动议程 - 图文
- 移树申请报告
- 《贵州省市政工程计价定额》2016定额说明及计算规则
- 计算机长期没有向WSUS报告状态
- 汉语拼音教学策略研究
- 发展西部领先的航空货运枢纽
- 司法所上半年工作总结4篇
- 如何提高银行服务水平
- 发电厂各级人员岗位职责
- 丰田汽车的外部环境分析
- 2017—2018年最新冀教版四年级数学下册《混合运算》教案精品优质
- 中建八局样板策划 - 图文
- 戚安邦《项目管理学》电子书
- 2015年高级项目经理笔记
- 弯桥的设计要点
- 程序设计
- 20140211
- 答案
- 教材
- 语言
- 参考
- 基础
- 人教版小学三年级数学教案(上册)
- 工商行政处罚裁量标准规范是什么?
- 公司企业技术中心申请报告
- 中国仿真帆船市场发展研究及投资前景报告(目录) - 图文
- 华师 现代教育技术 习题与答案
- 物理化学习题解答(五)
- 2018年湖北省恩施州中考物理、化学试题及参考答案(word解析版)
- 若尔盖县城市生活污水处理工程初步设计_
- 高考图文转换之图表类强化训练55题
- 项目管理小组作业
- 《C语言程序设计基础》单元总结与练习题及答案
- 基于PLC和MCGS的四层电梯控制系统论文
- 关于肺结核的中医药检索
- 九年级英语第七、八单元学案(16k)
- 滚石坝中桥荷载试验方案2015.6.23
- 水库大坝安全管理应急预案
- 软件体系结构课后习题第三章作业
- 粤教版三年级科学上册教案(已整理)
- 导游服务技能模拟试题(三)
- 员工岗位责任书