2005年9月二级C语言真卷及参考答案
- 格式:pdf
- 大小:202.25 KB
- 文档页数:15
c语言二级证考试真题及答案一、单项选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个函数?A. classB. functionC. voidD. int答案:D2. 下列哪个选项是合法的C语言变量名?A. 2variableB. variable-nameC. variable nameD. variable$name答案:B3. 若有定义 `int a[5] = {1, 2, 3, 4, 5};`,则 `a[0]` 的值是多少?A. 0B. 1C. 2D. 5答案:B4. 在C语言中,以下哪个运算符用于计算两个整数的乘积?A. %B. /C. *D. +答案:C5. 下列哪个选项是C语言中正确的注释方式?A. <!-- This is a comment -->B. // This is a commentC. /* This is a comment */D. # This is a comment答案:C6. 在C语言中,哪个函数用于计算并返回字符串的长度?A. strlen()B. length()C. size()D. strleng()答案:A7. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. +=D. ==答案:A8. 在C语言中,以下哪个关键字用于声明一个结构体?A. structB. unionC. classD. enum答案:A9. 若有定义 `int x = 10;`,则执行 `x += 5;` 后,`x` 的值是多少?A. 5B. 10C. 15D. 20答案:C10. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strncpy()C. strcat()D. strcmp()答案:A二、程序填空题(每空2分,共20分)给定以下代码片段,请在空白处填入正确的代码。
```c#include <stdio.h>int main() {int a, b, sum;a = 5;b = 3;sum = a + b;printf("The sum is: %d\n", sum);return 0;}若要计算两个数的乘积并打印出来,需要修改的代码为:```c#include <stdio.h>int main() {int a, b, product;a = 5;b = 3;product = a * b;printf("The product is: %d\n", product);return 0;}```三、编程题(每题30分,共60分)1. 编写一个C语言程序,实现输入两个整数,输出它们的和。
2005年春二级C考试试卷试题一、判断题(每小题1分,共10分)说明:在以下提供的若干个陈述中,逐一判断其正确与否,选A表示正确,选B表示错误。
(1)在C语言中,常量和变量都有数据类型。
(2)C语言的运算符只有单目运算符和双目运算符两种。
(3)若变量己正确定义,表达式x+y=z符合C语言语法。
(4)C编译器可以找出C源程序中所有的语法错误和逻辑错误。
(5)表达式3*5/2和表达式3/2*等价。
(6)表达式m=n++的求解顺序是先计算m=n,再计算n=n+1。
(7)变量名fahr和Fahr代表两个不同的变量。
(8)若表达式sizeof(unsigned)的值为2,则unsigned类型数据能表示的最大整数为216-1。
(9)break语句只能用于循环结构中。
(10)while语句先判断循环条件,所以循环体有可能一次也不执行。
试题二、单选题(每小题2分,共20分)b(11)执行scanf(“%d%lf%d”,&money,&rate,&year), 输入(11)后,money=1000, year=3, rate=0.025.A、1000 3 0.025B、1000 0.025 3C、1000,3,0.025 C、1000,0.025,3c(12)判断变量ch是英文字母的表达式为(12)。
A、('a'<=ch<='z')||('A'<=ch<='z')B、(ch>='a' && ch<='z')&&(ch>='A' && ch<='Z')C、(ch>='a' && ch<='z')|| (ch>='A' && ch<='Z')D、('A'<=ch<='z')&&('A'<=ch<='z')b (13)while((13))等价于while(!x)。
国家二级c语言考试试卷答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个选项是合法的标识符?A. 2variableB. _variableC. variable2D. variable-2答案:B2. C语言中,整型变量占用的字节数为:A. 1B. 2C. 4D. 8答案:C3. 若有定义:int a=5, b=2; 则表达式 a%b 的值是:A. 1B. 2C. 0D. 3答案:A4. 下列哪个选项不是C语言中的结构体类型?A. structB. unionC. enumD. int答案:D5. 在C语言中,以下哪个选项是正确的二维数组声明?A. int array[3][2];B. int array[][];C. int array[3][];D. int array[2,3];答案:A6. C语言中,以下哪个选项是正确的函数声明?A. void function();B. int function;C. int function();D. void function int;答案:C7. 若有定义:int x=10; 则表达式 x++ 的值是:A. 10B. 11C. 9D. 错误答案:A8. 在C语言中,以下哪个选项是正确的文件操作函数?A. fopenB. fcloseC. printfD. scanf答案:A9. 若有定义:float x=3.14; 则表达式 sizeof(x) 的值是:A. 2B. 4C. 8D. 1答案:B10. 在C语言中,以下哪个选项是正确的字符串声明?A. char str[5] = "hello";B. char str[] = "hello";C. char str[6] = "hello";D. char str = "hello";答案:B二、填空题(每题2分,共20分)1. C语言中,用于定义一个字符变量的关键字是 ________。
二级全国c语言机试题及答案二级全国C语言机试题及答案1. 以下哪个选项是C语言中正确的字符串定义?A. char str[5] = "hello";B. char str[] = "hello";C. char str[6] = "hello";D. char str[5] = {'h', 'e', 'l', 'l', 'o'};答案:B2. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A3. 以下哪个选项是C语言中正确的函数定义?A. int function(int a, int b) { return a + b; }B. int function(int a, int b) { return a - b; }C. int function(int a, int b) { return a * b; }D. All of the above答案:D4. 以下哪个选项是C语言中正确的数组初始化方式?A. int arr[5] = {1, 2, 3, 4, 5};B. int arr[5] = {1, 2, 3};C. int arr[5] = {};D. All of the above答案:D5. 在C语言中,以下哪个选项是正确的指针声明?A. int *p;B. int *p = 0;C. int *p = NULL;D. All of the above答案:D6. 以下哪个选项是C语言中正确的文件操作函数?A. fopenB. fcloseC. fprintfD. All of the above答案:D7. 在C语言中,以下哪个选项是正确的条件语句?A. if (a > b)B. if (a > b) { ... }C. if (a > b) { ... } else { ... }D. All of the above答案:D8. 以下哪个选项是C语言中正确的循环语句?A. for (int i = 0; i < 10; i++)B. while (condition)C. do { ... } while (condition);D. All of the above答案:D9. 在C语言中,以下哪个选项是正确的宏定义?A. #define PI 3.14159B. #define SQUARE(x) x * xC. #define MAX(a, b) ((a) > (b) ? (a) : (b))D. All of the above答案:D10. 在C语言中,以下哪个选项是正确的递归函数定义?A. int factorial(int n) {if (n == 0) return 1;else return n * factorial(n - 1);}B. int factorial(int n) {if (n == 0) return 1;else return n * factorial(n);}C. int factorial(int n) {if (n == 0) return 1;else return n * factorial(n - 1);}D. All of the above答案:A。
二级C语言2005年4月考试试卷一、选择题 ((1)~(10)每小题 2 分 ,(11)~(50)每小题 1 分 , 共 60 分)下列各题 A)、B)、C)、D)四个选项中, 只有一个选项是正确的。
01) 数据的存储结构是指A)存储在外存中的数据 B)数据所占的存储空间量C)数据在计算机中的顺序存储方式 D)数据的逻辑结构在计算机中的表示答案:D02) 下列关于栈的描述中错误的是A)栈是先进后出的线性表 B)栈只能顺序存储 C)栈具有记忆作用D)对栈的插入与删除操作中, 不需要改变栈底指针答案:B03) 对于长度为n的线性表, 在最坏情况下, 下列各排序法所对应的比较次数中正确的是A)冒泡排序为 n/2 B)冒泡排序为 n C)快速排序为 n D)快速排序为 n(n-1)/2答案:D04) 对长度为n的线性表进行顺序查找, 在最坏情况下所需要的比较次数为A) B)n/2 C)n D)n+1答案:C05) 下列对于线性链表的描述中正确的是A)存储空间不一定是连续, 且各元素的存储顺序是任意的B)存储空间不一定是连续, 且前件元素一定存储在后件元素的前面C)存储空间必须连续, 且前件元素一定存储在后件元素的前面D)存储空间必须连续, 且各元素的存储顺序是任意的答案:A06) 下列对于软件测试的描述中正确的是A)软件测试的目的是证明程序是否正确 B)软件测试的目的是使程序运行结果正确C)软件测试的目的是尽可能多地发现程序中的错误 D)软件测试的目的是使程序符合结构化原则答案:C07) 为了使模块尽可能独立, 要求A)模块的内聚程度要尽量高, 且各模块间的耦合程度要尽量强B)模块的内聚程度要尽量高, 且各模块间的耦合程度要尽量弱C)模块的内聚程度要尽量低, 且各模块间的耦合程度要尽量弱D)模块的内聚程度要尽量低, 且各模块间的耦合程度要尽量强答案:B08) 下列描述中正确的是A)程序就是软件 B)软件开发不受计算机系统的限制C)软件既是逻辑实体, 又是物理实体 D)软件是程序、数据与相关文档的集合答案:D09) 数据独立性是数据库技术的重要特点之一。
2005年9月国家二级(JA V A)笔试真题试卷(题后含答案及解析) 题型有:1. 选择题 2. 填空题选择题(每小题2分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1.下列叙述中正确的是A.程序设计就是编制程序B.程序的测试必须由程序员自己去完成C.程序经调试改错后还应进行再测试D.程序经调试改错后不必进行再测试正确答案:C解析:软件测试仍然是保证软件可靠性的主要手段,测试的目的是要尽量发现程序中的错误,调试主要是推断错误的原因,从而进一步改正错误。
测试和调试是软件测试阶段的两个密切相关的过程,通常是交替进行的。
选项C正确。
2.下列数据结构中,能用二分法进行查找的是A.顺序存储的有序线性表B.线性链表C.二叉链表D.有序线性链表正确答案:A解析:二分查找只适用于顺序存储的有序表。
在此所说的有序表是指线性表中的元素按值非递减排列(即从小到大,但允许相邻元素值相等)的。
选项A正确。
3.下列关于栈的描述正确的是A.在栈中只能插入元素而不能删除元素B.在栈中只能删除元素而不能插入元素C.栈是特殊的线性表,只能在一端插入或删除元素D.栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素正确答案:C解析:栈是一种特殊的线性表,其插入与删除运算都只在线性表的一端进行。
由此可见,选项A、选项B和选项D错误,正确答案是选项C。
4.下列叙述中正确的是A.一个逻辑数据结构只能有一种存储结构B.数据的逻辑结构属于线性结构,存储结构属于非线性结构C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率正确答案:D解析:一般来说,一种数据的逻辑结构根据需要可以表示成多种存储结构,常用的存储结构有顺序、链接、索引等存储结构。
而采用不同的存储结构,其数据处理的效率是不同的。
历年c语言二级考试真题及答案1. 题目:以下哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. Variable-nameD. variable name答案:B解析:在C语言中,变量名必须以字母或下划线开头,不能以数字开头。
因此,选项A和D是非法的。
选项C虽然以字母开头,但包含连字符,也是非法的。
只有选项B符合变量命名规则。
2. 题目:以下哪个选项是C语言中合法的整型常量?A. 0x12B. 0123C. 123.0D. .123答案:A解析:选项A是十六进制常量,以0x开头,是合法的。
选项B是八进制常量,以0开头,也是合法的。
选项C是浮点型常量,包含小数点,不是整型常量。
选项D是浮点型常量,且以小数点开头,不是整型常量。
3. 题目:以下哪个选项是C语言中合法的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!"\nD. "Hello, World!"\"答案:A解析:选项A是合法的字符串字面量,以双引号括起来。
选项B使用了单引号,表示字符字面量,不是字符串字面量。
选项C中的\n是转义字符,用于表示换行,但字符串字面量中不能包含未转义的双引号。
选项D中的\"是转义的双引号,但在字符串字面量中不需要转义双引号。
4. 题目:以下哪个选项是C语言中合法的函数声明?A. int add(int a, int b);B. int add(a, b);C. int add(int, int);D. int add(int a; int b);答案:A解析:选项A是合法的函数声明,包含了参数类型和参数名。
选项B缺少参数类型,是非法的。
选项C缺少参数名,虽然在C语言中可以省略参数名,但这不是标准的函数声明方式。
选项D的参数列表使用了分号而不是逗号,是非法的。
计算机二级c语言历年考试真题及答案一、单项选择题(每题2分,共20分)1. 在C语言中,下列哪个选项是正确的整型字面量?A. 0x1AB. 0x1GC. 0x1ZD. 0x1a答案:A2. 以下哪个关键字用于定义C语言中的结构体?A. structB. unionC. enumD. typedef答案:A3. 若有定义:int a[5] = {1, 2, 3, 4, 5}; 则以下哪个表达式的值不为5?A. a[4]B. a[5]C. *(a + 4)D. *(&a[0] + 4)答案:B4. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpyB. strncpyC. strcatD. strcmp答案:A5. 以下哪个选项不是C语言中的运算符?A. +=B. ||C. &&D. ::答案:D6. 在C语言中,哪个函数用于计算字符串的长度?A. strlenB. strcpyC. strcatD. strcmp答案:A7. 若有定义:int a = 10; 则执行语句:a += (a += 2); 后,变量a 的值是多少?A. 12B. 14C. 24D. 30答案:C8. 在C语言中,以下哪个选项不是合法的数组声明?A. int a[5];B. int b[][3] = {{1, 2, 3}, {4, 5, 6}};C. int c[3][];D. int d[3][3] = {1};答案:C9. 在C语言中,哪个关键字用于声明一个无限循环?A. forB. whileC. do...whileD. switch答案:B10. 若有定义:int x = 10; 则执行语句:x <<= 2; 后,变量x的值是多少?A. 20B. 30C. 40D. 100答案:C二、填空题(每题2分,共20分)1. 在C语言中,使用________运算符可以计算两个数的和。
2005年9月全国计算机等级考试二级笔试试卷Visual FoxPro 数据库程序设计(考试时间90分钟,满分100分)一、选择题(每小题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)下列叙述中正确的是A)程序设计就是编制程序B)程序的测试必须由程序员自己去完成C)程序经调试改错后还应进行再测试D)程序经调试改错后不必进行再测试(2)下列数据结构中,能用二分法进行查找的是A)顺序存储的有序线性表B)线性链表C)二叉链表D)有序线性链表(3)下列关于栈的描述正确的是A)在栈中只能插入元素而不能删除元素B)在栈中只能删除元素而不能插入元素C)栈是特殊的线性表,只能在一端插入或删除元素D)栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素(4)下列叙述中正确的是A)一个逻辑数据结构只能有一种存储结构B)数据的逻辑结构属于线性结构,存储结构属于非线性结构C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D)一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率(5)下列描述中正确的是A)软件工程只是解决软件项目的管理问题B)软件工程主要解决软件产品的生产率问题C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D)软件工程只是解决软件开发中的技术问题(6)在软件设计中,不属于过程设计工具的是A)PDL(过程设计语言) B)PAD图C)N-S图D)DFD图(7)下列叙述中正确的是A)软件交付使用后还需要进行维护B)软件一旦交付使用就不需要再进行维护C)软件交付使用后其生命周期就结束D)软件维护是指修复程序中被破坏的指令(8)数据库设计的根本目标是要解决A)数据共享问题B)数据安全问题C)大量数据存储问题D)简化数据维护(9)设有如下关系表:R S TA B C A B C A B C1 123 1 3 1 1 22 23 2 2 33 1 3则下列操作中正确的是A)T=R∩S B)T=R∪S C)T=R×S D)T=R/S(10)数据库系统的核心是A)数据模型B)数据库管理系统C)数据库D)数据库管理员(11)Visual FoxPro是一种关系型数据库管理系统,这里关系通常是指A)数据库文件(dbc文件) B)一个数据库中两个表之间有一定的关系C)表文件(dbf文件)D)一个表文件中两条记录之间有一定的关系(12)扩展名为mnx的文件是A)备注文件B)项目文件C)表单文件D)菜单文件(13)报表的数据源可以是A)表或视图B)表或查询C)表、查询或视图D)表或其他报表(14)如果添加到项目中的文件标识为“排除”,表示A)此类文件不是应用程序的一部分B)生成应用程序时不包括此类文件C)生成应用程序时包括此类文件,用户可以修改D)生成应用程序时包括此类文件,用户不能修改(15)“项目管理器”的“运行”按钮用于执行选定的文件,这些文件可以是A)查询、视图或表单B)表单、报表和标签C)查询、表单或程序D)以上文件都可以(16)允许出现重复字段值的索引是A)侯选索引和主索引B)普通索引和惟一索引C)侯选索引和惟一索引D)普通索引和侯选索引(17)以纯文本形式保存设计结果的设计器是A)查询设计器B)表单设计器C)菜单设计器D)以上三种都不是(18)以下关于视图的描述正确的是A)视图保存在项目文件中B)视图保存在数据库文件中C)视图保存在表文件中D)视图保存在视图文件中(19)下面有关表间永久联系和关联的描述中,正确的是A)永久联系中的父表一定有索引,关联中的父表不需要有索引B)无论是永久联系还是关联,子表一定有索引C)永久联系中子表的记录指针会随父表的记录指针的移动而移动D)关联中父表的记录指针会随子表的记录指针的移动而移动(20)下面关于类、对象、属性和方法的叙述中,错误的是A)类是对一类相似对象的描述,这些对象具有相同种类的属性和方法B)属性用于描述对象的状态,方法用于表示对象的行为C)基于同一个类产生的两个对象可以分别设置自己的属性值D)通过执行不同对象的同名方法,其结果必然是相同的(21)在下面的Visual FoxPro表达式中,运算结果为逻辑真的是A)EMPTY(.NULL.) B)LIKE('xy? ', 'xyz')C)AT('xy', 'abcxyz') D)ISNULL(SPACE(0))(22)依次执行以下命令后的输出结果是SET DATE TO YMDSET CENTURY ONSET CENTURY TO 19 ROLLOVER 10SET MARK TO "."? CTOD("49-05-01")A)49.05.01 B)1949.05.01 C)2049.05.01 D)出错(23)假设职员表已在当前工作区打开,其当前记录的“姓名”字段值为“张三”(字符型,宽度为6)。
机密★启用前2005年9月全国计算机等级考试二级笔试试卷C语言程序设计24注意事项一、考生应严格遵守考场规则,得到监考人员指令后方可作答。
二、考生拿到试卷后应首先将自己的姓名、准考证号等内容涂写在答题卡的相应位置上。
三、选择题答案必须用铅笔填涂在答题卡的相应位置上,填空题的答案必须用蓝、黑色钢笔或圆珠笔写在答题卡的相应位置上,答案写在试卷上无效。
四、注意字迹清楚,保持卷面整洁。
五、考试结束将试卷和答题卡放在桌上,不得带走。
待监考人员收毕清点后,方可离场。
* * * 版权所有,任何单位或个人不得保留、复制和出版,违者必究 * * *教育部考试中心二00五年七月制2005年9月全国计算机等级考试笔试试卷二级公共基础知识和C语言程序设计(考试时间120分钟,满分100分)一、选择题((1)-(10)每小题2分,(11)-(50)每小题1分,共60分)(1)下列叙述中正确的是()。
A)程序设计就是编制程序B)程序的测试必须由程序员自己去完成C)程序经调试改错后还应进行再测试D)程序经调试改错后不必进行再测试(2)下列数据结构中,能用二分法进行查找的是()。
A)顺序存储的有序线性表B)线性链表C)二叉链表D)有序线性链表(3)下列关于栈的描述正确的是()。
A)在栈中只能插入元素而不能删除元素B)在栈中只能删除元素而不能插入元素C)栈是特殊的线性表,只能在一端插入或删除元素D)栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素(4)下列叙述中正确的是()。
A)一个逻辑数据结构只能有一种存储结构B)数据的逻辑结构属于线性结构,存储结构属于非线性结构C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D)一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率(5)下列描述中正确的是()。
A)软件工程只是解决软件项目的管理问题B)软件工程主要解决软件产品的生产率问题C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D)软件工程只是解决软件开发中的技术问题(6)在软件设计中,不属于过程设计工具的是()。
A)PDL(过程设计语言)B)PAD图C)N-S图D)DFD图(7)下列叙述中正确的是()。
A)软件交付使用后还需要再进行维护B)软件工具交付使用就不需要再进行维护C)软件交付使用后其生命周期就结束D)软件维护是指修复程序中被破坏的指令(8)数据库设计的根本目标是要解决()。
A)数据共享问题B)数据安全问题C)大量数据存储问题D)简化数据维护(9)设有如下关系表:R S TA B C 1 1 2 2 2 3则下列操作中正确的是( )。
A )T=R ∩SB )T=R ∪SC )T=R ×SD )T=R/S (10)数据库系统的核心的是( )。
A )数据模型B )数据库管理系统C )数据库D )数据库管理员 (11)下列叙述中错误的是( )。
A )用户所定义的标识符允许使用关键字B )用户所定义的标识符应尽量做到“见名知意”C )用户所定义的标识符必须以字母或下划线开头D )用户定义的标识符中、大、小写字母代表不同标识 (12)下列叙述中错误的是( )。
A )C 语句必须以分号结束B )复合语句在语法上被看作一条语句C )空语句出现在任何位置都不会影响程序运行D )赋值表达式末尾加分号就构成赋值语句 (13)下列叙述中正确的是( )。
A )调用printf()函数时,必须要有输出项B )使用putchar()函数时,必须在之前包含头文件stdio.hC )在C 语言中,整数可以以十二进制、八进制或十六进制的形式输出D )调节getchar()函数读入字符时,可以从键盘上输入字符所对应的ASCII 码 (14)下列关于函数的叙述中正确的是( )。
A )每个函数都可以被其他函数调用(包括main 函数)B )每个函数都可以被单独编译C )每个函数都可以单独运行D )在一个函数内部可以定义另一个函数(15)若有语句:char *line[5];下列叙述中正确的是( )。
A )定义line 是一个数组,每个数组元素是一个基类型为char 的指针变量B )定义line 是一个指针变量,该变量可以指向一个长度为5的字符型数组C )定义line 是一个指针数组,语句中的*号称为间址运算符D )定义line 是一个指向字符型函数的指针 (16)有下列程序段:typedef struct NODE{ int num ;struct NODE *next; } OLD ;下列叙述中正确的是( )。
A )以上的说明形式非法 B )NODE 是一个结构体类型 C )OLD 是一个结构体类型 D )OLD 是一个结构体变量 (17)下列叙述中错误的是( )。
A )在C 语言中,对二进制文件的访问速度比文本文件快A B C 1 1 2 2 2 33 1 3 A B C 3 1 3B )在C 语言中,随机文件以二进制代码形式存储数据 C )语句FILE fp ;定义了一个名为fp 的文件指针D )C 语言中的文本文件以ASC Ⅱ码形式存储数据(18)当把四个表达式用作if 语句的控制表达式时,有一个选项与其他三个选项含义不同,这个选项是( )。
A )k%2B )k%2= =1C )(k%2) ! =0D )!k%2= =1 (19)下列不能正确计算代数式 sin 2( )值的C 语言表达式是( )。
A )1/3 *sin(1/2)*sin(1/2)B )sin(0.5)*sin(0.5)/3C )pow(sin(0.5),2)/3D )1/3.0*pow(sin(1.0/2),2) (20)下列能正确定义且赋初值的语句是( )。
A )int nl=n2=10;B )char c=32;C )float f=f+1.1;D )double x=12.3E2.5;(21)下列程序的功能是:给r 输入数据后计算半径为r 的圆面积s 。
程序在编译时出错。
main( )/* Beginning */ { int r; float s;scanf("%d",&r); s=*π*r*r ;printf("s=%f\n",s); }出错的原因是( )。
A )注释语句书写位置错误B )存放圆半径的变量r 不应该定义为整型C )输出语句中格式描述符非法D )计算圆面积的赋值语句中使用了非法变量(22)设有定义:int k=1,m=2; float f=7;则下列选项中错误的表达式是( )。
A )k=k > =kB )-k+ +C )k%int(f)D )k > =f > =m(23)设有定义:int a=2,b=3,c=4;,则下列选项中值为0的表达式是( )。
A )(!a= =1)&&(!b= =0)B )(a <b)&&! c ‖ 1C )a && bD )a ‖(b+b)&&(c-a) (24)有下列程序段:int k=0,a=1,b=2,c=3;k=a <b?b:a ;k=k >c?c:k;执行该程序段后,k 的值是( )。
A )3B )2C )1D )0 (25)设变量a 、b 、c 、d 和y 都已正确定义并赋值。
若有下列if 语句if(a <b) if(c= =d) y=0; else y=1;该语句所表示的含义是( )。
3121A )⎩⎨⎧=01y d c b a ba =<≥且B )⎩⎨⎧=01y d c b a b a =<≠≥且且dcC )⎩⎨⎧=01y d c b a b a =<≠<且且dcD )⎩⎨⎧=01y d c b a =<≠且dc(26)有下列程序段int n,t=1,s=0; scanf("%d",&n);do{ s=s+t;t=t-2; }while(t! =n);为使此程序段不陷入死循环,从键盘输入的数据应该是( )。
A )任意正奇数 B )任意负偶数 C )任意正偶数 D )任意负奇数(27)设变量已正确定义,则以下能正确计算f=n!的程序段是( )。
A )f=0;B )f=1;for(i=1;i <=n;i+ +) f*=i; for(i=1;i <n;i+ +) f*=i; C )f=1; D )f=1;for(i=n;i >1;i+ +)f*=i; for(i=n;i > =2;i--)f*=i;(28)设有定义:int n1=0,n2,*p=&n2,*q=&n1;,以下赋值语句中与n2=n1;语句等价的是( )。
A )*p=*q;B )p=q;C )*p=&n1;D )p=*q; (29)若有定义:int x=0,*p=&x;,则语句printf("%d\n",*p);的输出结果是( )。
A )随机值B )0C )x 的地址D )p 的地址 (30)设fun()函数的定义形式为( )。
void fun(char ch,float x){…}则下列对函数fun 的调用语句中,正确的是A )fun("abc",3.0);B )t=fun('D',16.5);C )fun('65',2.8);D )fun(32,32); (31)有下列程序:main( ){ int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],*q=p+2;printf("%d\n",*p+*q); }程序运行后的输出结果是( )。
A )16B )10C )8D )6 (32)有下列程序:main( ){ char p[ ]={'a','bv,'c'},q[ ]="abc";printf("%d%d\n",sizeof(p),sizeof(q)); };程序运行后的输出结果是( )。
A )4 4 B )3 3 C )3 4 D )4 3 (33)有下列程序:#define f(x)=(x*x)main( ){ int i1,i2;i1=f(8)/f(4); i2=f(4+4)/f(2+2);prinft("%d,%d\n",i1,i2);}程序运行后的输出结果是()。
A)64,28 B)4,4 C)4,3 D)64,64 (34)有下列程序:main( ){ char a1='M',a2='m';printf("%c\n",(a1,a2));}下列叙述中正确的是()。