1、一个C程序的执行是从() B A、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 B、本程序的main函数开始,到main函数结束 C、本程序的main函数开始,到本程序文件的最后一个函数结束 D、本程序文件的第一个函数开始,到本程序main函数结束 解析: 通常情况下,函数的命名没有限制,但main是一个特殊的函数名——每个程序都从main函数的起点开始执行,这意味着每个程序都必须在某个位置包含一个main函数。考察程序的执行顺序,答案为B。
2、一个C语言程序是由() D A、若干子程序组成 B、若干过程组成 C、一个主函数和若干子程序组成 D、函数和变量组成 解析: 一个c语言程序,无论其大小如何,都是由函数和变量组成。函数中包含一些语句,已指定所要执行的计算操作;变量用于存储计算过程中使用的值。函数是C语言编程最小的单位,所以答案为D。
3、以下叙述正确的是() D A、在对一个C程序进行编译的过程中,可发现注释中的拼写错误 B、在C程序中,main函数必须位于程序的最前面 C、C程序的每行中只能写一条语句 D、C语言本身没有输入输出语句 解析: 略
4、一个C程序的编译过程是() B A、编译,预处理,汇编,连接 B、预处理,编译,汇编,连接 C、预处理,汇编,编译,连接 D、预处理,编译,连接,汇编 解析: 具体解答请查看 c语言程序编译过程 ) 50% 50% no-repeat;" height="95" border="0" width="512"> 5以下叙述不正确的是() D A、一个C源程序可由一个或多个函数组成 B、一个C源程序必须包含一个main函数 C、C程序的基本组成单位是函数 D、在C程序中,注释说明只能位于一条语句的后面 解析: 略
c语言练习题解答-2、c语言运算符、表达式
1、如下所示,执行以下程序段后,变量a,b,c的值分别是() B int x =10, y = 9; int a, b, c; a = (--x == y++)? –-x : ++y; b = x++; c = y; A、a = 9, b = 9, c = 9 B、a = 8, b = 8, c = 10 C、a = 9, b = 10, c = 9 D、a = 1, b = 11, c = 10 解析:本题目主要考察对于自增/自减运算符的理解,自增/自减运算符的使用原则:运算符在变量前则先对变量进行运算,再取变量的值使用;运算符在变量后则先取变量的值使用再进行相应的运算。所以本题目中,--x == y++表达式中,首先将x的值自减再与y值相比较,再对y进行自增,则表达式值为真,所以在三目运算符中要取冒号前的表达式值即—x的值作为终值,++y不予执行,所以a的值为8,此时x的值也为8,则b获取的是x自增前的值,所以变量b值为8,y值在本段中只自增了一次,所以c的值为10。
2、若有以下定义,int k = 7, x = 12; 则能使值为3的表达式是() D A、x% = (k%=5) B、x% = (k - k%=5) C、x% = k - k%5 D、(x%=k) - (k%=5) 解析:本题目考察运算符的优先级问题。
3、在宏定义#define PI 3.14159中,用宏名PI代替一个() D A、常量 B、单精度数 C、双精度数 D、字符串 解析:本题目考察对于宏定义的理解,宏定义不检查语法,在使用上是用宏体替换宏名的操作,所以此处用宏名代替了一个字符串。
4、设有说明:char w; int x ; float y; double z; 则表达式w*x+z-y值的数据类型为() d A、float B、char C、int D、double 解析:不同数据类型间的数据作混合运算时,默认由精度低的向精度高的数据类型进行转换。
5、有关宏替换的叙述不正确的是() b A、宏替换不占用运行时间 B、宏名无类型 C、宏替换只是字符替换 D、宏名必须用大写字母表示 解析:宏名与类型是两个不同的概念
|