《朱昌杰C语言程序设计课本习题解答》由会员分享,可在线阅读,更多相关《朱昌杰C语言程序设计课本习题解答(42页珍藏版)》请在金锄头文库上搜索。
1、习题1一选择题(1)以下叙述正确的是( )A. 计算机不仅能执行机器语言程序,也可以直接执行其它高级语言编写的程序B. 汇编语言是一种面向机器的低级语言,所以计算机可以直接执行用汇编语言编写的源程序C. 高级语言是与自然语言或数学语言相近的计算机语言,用高级语言编写的源程序计算机都不能直接执行D. 用高级语言编写的源程序只能经过解释程序边解释边执行(2)以下不正确的概念是( )A. 一个C程序必须包含一个main函数B. 一个C程序可以只有一个语句C. 一个C程序可以由一个或多个函数组成D. 一个C语言函数可以没有任何可执行语句(3)在C语言程序中( )。A. main函数必须放在程序最前头B
2、. main函数必须放在程序最后C. main函数必须放在所有函数之前D. main函数可以放在程序任何允许放置函数的位置(4)以下C语言源程序的书写格式不正确的是( )A. 正确的函数首部,其后必须加上分号B. 分号是语句的一部分C. 一行上可以书写多条语句D. 一个语句可以写在多行之上(5)以下不正确的叙述是( )A. 一个#include命令只能指定一个被包含文件B. 一个#include命令可以指定多个被包含文件C. 在#include命令中,文件名可以用尖括号或双引号括起来D. 一个C程序中,可以使用多个#include文件包含命令二填空题(1)计算机程序设计语言分为 语言、 语言和
3、 语言。(2)正确的算法应具有五个重要的特征是: , , , , 。(3)算法的表示方法主要有 、 、 、自然语言和 语言等。(4)程序设计方法主要分为 程序设计方法和 程序设计方法。(5)语言的函数一般由 和 两部分组成。(6)注释部分从 开始,以 结束。(7)任何C程序的执行都是从 函数开始。(8)函数体一般包括 部分和 部分。(9)一个C语言程序由若干个函数组成,其中必须有一个 函数。三编程题(1)上机运行本章例题,熟悉所用C语言系统(如:Turbo C/C+和Visual C+ 6.0等)的上机方法与步骤。(2)参照本章例题编写一个C语言程序,并上机运行,要求输出一下信息:* Hell
4、o,World!*【参考答案】一选择题 (1) C (2) B (3) D (4) A (5) B二填空题 (1) 机器语言、汇编语言、高级语言 (2) 有穷性、确定性、有效性、输入、输出。(3) 传统流程图、N-S图、伪代码、计算机程序 (4) 面向过程、面向对象(5) 函数首部、函数体 (6) /* 、*/ (7) main (8) 声明、执行 (9) main三编程题(1) 例1.3 输出一行信息,内容为:This is my first C program./* exa1-3.c */#include void main()printf(This is my first C progr
5、am.n);例1.4 键盘输入两个整数,求两个整数中的较大者。/* exa1-4.c */#include stdio.h /* 头文件 */void main() /* 主函数 */int max(int x,int y); /* 对被调用函数max的声明 */int a,b,c; /* 定义三个整型变量a,b,c */printf(Please input two integers a,b: ); /* 提示输入 */scanf(%d,%d,&a,&b); /* 键盘输入变量a和b的值 */c=max(a,b); /* 调用max函数,将函数返回值赋值给变量c */printf(max=%
6、dn,c); /* 输出c的值 */int max(int x,int y) /* 定义整型函数max,其两个形式参数x,y也为整型 */int z; /* 函数max的声明部分 */if(xy) z=x; /* 如果xy,将x赋值给z */else z=y; /* 否则,将y赋值给z */return(z); /* 将z的值返回给调用函数的位置 */ (2)解答:/* exe1-3-2.c */#include void main()printf(*n);printf( Hello,World!n);printf(*n);习题2一选择题(1)以下哪一个可以作为正确的变量名( )。AforB$
7、abcC3*xD_file(2)以下哪一个不是正确的C语言常量( )。A0x2acB3.25e-8C800D0486(3)以下哪一个是合法的C语言实型常量( )。A3E2.5BE6C2A8D218(4)以下哪一个整型常数值最大( )。A35B035C0x35D50(5)以下不是字符型常量的是( )。AmBnC115Dx8c(6)以下哪一个字符与其他3个字符不相等( )。AaBACX41D101(7)以下哪一个是C语言合法的字符串常量( )。AI am a student.B中国ChelloD$abc$(8)C语言中short型整数占2个字节,则unsigned short型数据的其值范围是:(
8、 )。A065535B065536C3276832767D6553565535(9)在C语言中,数字018是一个( )。A十进制数B八进制数C十六进制数D非法数(10)在C语言中,不同数据类型占用内存的字节长度是( )。A相同的B与编译环境有关的C任意的D由用户自己定义的(11)以下哪一个不是C语言中的数据类型( )。A实型B浮点型C空类型D关系型(12)以下哪一个是C语言中的数据类型( )。A集合型B双精度型C复数型D逻辑型二、填空题(1)C语言的常量分为:_常量、_常量、_常量、_常量和_常量。(2) C语言中的整型数据有三种表示方法,分别是:_进制、_进制和_进制。(3)C语言规定,变量
9、必须_定义,_使用。(4)C语言中,sizeof( )是分别是测定某种类型数据所占存储空间长度的_。(5)C语言中,运算符的结合性有两种:左结合和右结合,左结合是_计算,右结合是_计算。(6)C语言中,+i是先_,后_;i-是先_,后_。(7)赋值运算符比逗号运算符的优先级别_。(8)_运算符的优先级别最低,级别为15。(9)C语言的类型转换有三种方式:_类型转换、_类型转换和_类型转换。三、计算与编程题(1)给出下列公式的C语言表达式。 y=ax+bx+c y=ax+bcx+d 3.25108+(b4ac)-x-y y=1/2+2/3+(x+y)/(a+b) 求表达式3*2+4.0/515%
10、4+(5*8/9+4)%51/2+1.0/2的值。(2)上机运行本章例题,熟悉所用C语言编译系统的使用。(3)用运算符sizeof( )测试以下数据类型在内存中所占空间的大小:char、unsigned char、int、short、long、unsigned、unsigned short、unsigned long、float、double、long double,输出时一行输出一种数据类型的内存字节大小,并给出清晰的提示信息。【参考答案】一选择题(1) D (2) D (3) D (4) C (5) B (6) A(7) B (8) B (9) D (10) B (11) D (12) B
11、二填空题(1) 字符、整型、实型、字符串、符号(2) 十、八、十六(3) 先、后(4) 运算符(5) 从左到右、从右到左(6) 加1、引用、引用、减1(7) 高(8) 逗号(9) 自动、赋值、强制三、计算与编程题 (1) y=a*x*x+b*x+c y=(a*x+b)/(c*x+d) 3.25e8+sqrt(b*b-4*a*c)-x*x-y*y*y y=1.0/2+2/3.0+x*x/(a*a)+y*y/(b*b) 7.3(2) 略(3) /* exe2-3-3.c */#include int main() printf(char: %d bytesn,sizeof(char); printf(unsigned char: %d bytesn,sizeof(unsigned char); printf(int: %d bytesn,sizeof(int); printf(short: %d bytesn,sizeof(short); printf(long: %d bytesn,sizeof(long); printf(unsigned: %d bytesn,sizeof(unsigned); printf(unsigned short: %d bytesn,sizeof(unsigned short); pri