二级C语言笔试-289

合集下载

全国计算机等级考试二级C语言笔试试题及答案

全国计算机等级考试二级C语言笔试试题及答案
常将有日思无日,莫待无时思有时。——《增广贤文》
老当益壮,宁移白首之心;穷且益坚,不坠青云之志。——唐·王勃
D) 4 (31) 有如下类定义:
class XX( int xx; public: XX(): xx(0) {cout<<' A';} XX( int n):xx ( n) {tout<<' B';} }; Class YY:public XX( Int yy; public: YY(): yy ( 0) (cout+yy;} YY ( int n ): XX (n+1 ), yy(n) (cout<<yy;} YY ( int m, int n):XX (m), yy (n) (cout<<yy;} }; 下列选项中,输出结果为 A0 的语句是 A) YY y1 (0,0); B) YY y2(1); C) YYy3(0); D) YYy4; (32) 有如下程序: #include<iostream> Using namespace std; class A( public: virtual void f () (cout+1;} void g () (cout<<2;} }; class B:public A( public: virtual void f () (cout<<3;} void g()(ecut<<4;} }; void show (A &a)(a.f();a.g( ) ; } int main()( B b; show(b); return 0; } 运行时的输出结果是 A) 12 B) 34 C) 14 D) 32 (33) 有如下程序: #include<iostream> using namespace std; class Pair( int m; int n; public: Pair ( int i, int j ): m(i), n(j) (} boot operator > ( pair p ) const;//须在类体外给出定义 ); int main () { Pair Al(3,4),p2(4,3); p3(4,5); Cout<< (pl>p2) << (P2>P1) << (p2>p3) << (p3>p2); return 0; } 运算符函数。operator〉的功能是比较两个 Pair 对象的大小,当左边对象大时,返回 true,否则 返 回 false。比较规则是首先比较两对象的 m 成员,m 大者为大;当 m 相等时比较 n, n 大者为大。程序输 出 0101, 下列对运算符重载函数的正确定义是 A ) bool Pair::operator> ( Pair p ) const {if (m!=p.m) return m>p.m; return n>p.n;}

计算机二级C语言技术考试试题及答案

计算机二级C语言技术考试试题及答案

XX年计算机二级C语言技术考试试题及答案C语言适用范围大。

适合于多种操作系统,如Windows、DOS、UNIX、LINUX等等;也适用于多种机型。

以下是关于计算机二级C语言技术考试试题及答案,希望大家认真阅读!
以下各题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). int a=1,b=3那么a^b的值为
A.3
B.1
C.2
D.4
正确答案:C
以下给定程序中,函数fun的功能是:将形参n中个位上为偶数的数取出,并按原来从高位到低位相反的顺序组成一个新数,作为函数值返回。

例如,输入一个整数27638496,函数返回值为64862。

请在程序的下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。

注意:局部源程序在文件BLANKl.C中。

不得增行或删行,也不得更改程序的构造!#include
unsigned long fun(unsigned long n){unsigned long
x=0;int t;。

全国计算机等级考试二级c语言笔试试题

全国计算机等级考试二级c语言笔试试题

全国计算机等级考试二级c语言笔试试题全国计算机等级考试二级C语言笔试试题一、单项选择题(每题2分,共40分)1. C语言中,一个整型变量所占的基本存储单位是()。

A. 1个字节B. 2个字节C. 3个字节D. 4个字节2. 下列关于C语言函数的描述,错误的是()。

A. 函数可以返回一个结构体类型的值B. 函数可以没有返回值,也可以返回一个值C. C语言中,main函数可以没有返回值D. 函数的返回值类型必须与定义时的类型一致3. 在C语言中,用于定义字符串的标识符是()。

A. char *B. char[]C. stringD. text4. 下列关于C语言数组的描述,正确的是()。

A. 数组在定义时必须初始化B. 数组的元素可以是不同数据类型的C. 数组在定义后,其元素的个数不能改变D. 数组的元素个数可以是变量5. C语言中,表示逻辑“与”操作的运算符是()。

A. &&B. ||C. !D. &6. 下列关于C语言指针的描述,错误的是()。

A. 指针是一个变量,用于存储另一个变量的地址B. 指针的值是它所指向的变量的地址C. 指针变量可以重新赋值为任意地址D. 指针可以进行算术运算7. C语言中,用于文件操作的库函数是()。

A. math.hB. stdio.hC. string.hD. conio.h8. 下列关于C语言结构体的描述,错误的是()。

A. 结构体是一种构造数据类型B. 结构体可以包含不同类型的成员C. 结构体的所有成员必须同时初始化D. 结构体可以定义为函数的参数9. C语言中,表示关系“小于等于”的运算符是()。

A. <B. >C. <=D. >=10. 在C语言中,用于实现循环结构的语句有()。

A. forB. whileC. do-whileD. 所有选项二、填空题(每空3分,共30分)11. C语言中,一个浮点型变量所占的存储空间通常是________字节。

二级C语言-289_真题-无答案

二级C语言-289_真题-无答案

二级C语言-289(总分100,考试时间90分钟)一、程序填空题1. 请补充函数proc(),该函数的功能是:从“a”到“z”统计一个字符串中所有字母字符各自出现的次数,结果保存在数组buff中。

注意:不区分大小写,不能使用字符串库函数。

例如,若输入:“A=abc+5*c”,则输出结果为:a=2 b=1 c=2,d以后所有字母字符出现的次数全为0。

注意:部分源程序给出如下。

请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。

试题程序:#include<stdlib.h>#include<conio.h>#include<stdio.h>#define M 100void proc(char *str, int buff[]){int i;char *p=str;for(i=0; i<26; i++)______;while(*p){if(*p>="A"&&*p<="Z")______;if(*p>="a"&&*p<="z")buff[*p-"a"]++;______;}}void main(){char str[M];char a="a";int buff[26], k;system("CLS");printf("\nPlease enter a char string: ");scanf("%s", str);printf("\n**The original string**\n");puts(str);proc(str, buff);printf("\n**The number of letter**\n");for(k=0; k<26; k++){if(k%5==0)printf("\n");printf("%c=%d", a+k, buff[k]);}printf("\n");}二、程序改错题1. 下列给定程序中,函数proc()的功能是:删除字符串str中所有空白字符(包括Tab字符、Enter符及换行符)。

全国计算机二级《C语言》考试题库与答案

全国计算机二级《C语言》考试题库与答案

全国计算机二级《C语言》考试题库与答案全国计算机二级《C语言》考试题库与答案在学习、工作中,我们都离不开试题,借助试题可以检验考试者是否已经具备获得某种资格的基本能力。

什么样的试题才能有效帮助到我们呢?以下是店铺为大家收集的全国计算机二级《C语言》考试题库与答案,欢迎大家分享。

全国计算机二级《C语言》考试题库与答案篇1(1)下列关于栈叙述正确的是( )。

A.栈顶元素最先能被删除B.栈顶元素最后才能被删除C.栈底元素永远不能被删除D.栈底元素最先被删除(2)下列叙述中正确的是( )。

A.在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化B.在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化C.在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化D.以上说法都不正确某二叉树共有7个结点,其中叶子结点只有l个,则该二叉树的深度为(假设根结点在第1层)( )。

A.3B.4C.6D.7软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。

下面属于应用软件的是( ):A.学生成绩管理系统B.c语言编译程序C.UNIX操作系统D.数据库管理系统(5)结构化程序所要求的基本结构不包括( )。

A.顺序结构B.GOT0跳转C.选择(分支)结构D.重复(循环)结构(6)下面描述中错误的是( )。

A.系统总体结构图支持软件系统的详细设计B.软件设计是将软件需求转换为软件表示的过程C.数据结构与数据库设计是软件设计的任务之一D.PAD图是软件详细设计的表示工具(7)负责数据库中查询操作的数据库语言是( )。

A.数据定义语言B.数据管理语言C.数据操纵语言D.数据控制语言一个教师可讲授多门课程,一门课程可由多个教师讲授。

则实体教师和课程间的联系是( )。

A.1:1联系B.1:m联系C.m:1联系D.m:n联系(9)已知大写字母A的ASCIl码值是65,小写字母a的ASCIl码值是97。

以下不能将变量C中的大写字母转换为对应小写字母的语句是( )。

全国计算机等级考试二级C语言笔试试题

全国计算机等级考试二级C语言笔试试题

全国计算机等级考试二级C语言笔试试题全国计算机等级考试二级C语言笔试试题计算机二级考试是全国计算机等级考试(National Computer Rank Examination,简称NCRE)四个等级中的一个等级,考核计算机基础知识和使用一种高级计算机语言编写程序以及上机调试的基本技能。

那么全国计算机等级考试二级C语言会怎么考?以下仅供参考!一、选择题(1-30 每小题1 分,31-45 每小题2 分,共60 分)下列各题A),B),C),D)四个选项,只有一个选项是正确的,请将正确的选项在答题卡相应位置上涂黑。

答在试卷上不得分。

(1) 二进制数101110 转换为等值的八进制数是()。

A.45B.56C.67D.78(2) CPU 是由()组成的。

A.内存储器和控制器B.控制器和运算器C.内存储器和运算器D.内存储器、控制器和运算器(3) DOS 是为IBM PC 系列微型计算机及其兼容机所配置的()磁盘操作系统。

A.多用户多任务B.单用户单任务C.分时D.分布式(4) 启动MS-DOS 操作系统后,()已驻留内存。

A.B.C.D.CCCC.EXE(5) 设驱动器B 中软盘上的目录结构如下图所示。

设当前目录为F2,则把A 盘根目录下的PROG.BAS 文件复制到B 盘F3 子目录中的命令是()。

A.COPY PROG.BAS B:B.COPY A:PROG.BAS B:C.COPY A:PROG.BAS B:F3D.COPY A:PROG.BAS B:F3(6) 下面四组DOS 命令中,意义完全相同的一组是()。

A.COPY 和DISKCOPYB.COMP 和DISKCOMPC.DEL 和RDD.RENAME 和REN(7) 防止软盘感染病毒的有效方法是()。

A.不要把软盘和有毒软盘放在一起B.在写保护缺口上贴上胶条C.保持机房清洁D.定期对软盘格式化(8) 双面高密度5 英寸软磁盘的容量是()。

c语言二级考试题及答案

c语言二级考试题及答案

c语言二级考试题及答案一、单项选择题(本大题共40小题,每小题2分,共80分)1. 在C语言中,下列哪个选项是正确的整型常量?A. 0.5B. 0x12C. 0x12.0D. 0x12L答案:B2. C语言中,下列哪个选项是正确的字符串字面量?A. "hello"B. 'hello'C. "hello'"D. 'hello"答案:A3. 在C语言中,下列哪个选项是合法的标识符?A. 2variableB. variable2C. _variableD. variable-2答案:C4. 下列哪个选项是C语言中的关键字?A. intB. integerC. realD. double答案:A5. 在C语言中,下列哪个选项是正确的二进制常量表示?A. 0x1BB. 0b1101C. 0B1101D. 0x1101答案:B6. C语言中,下列哪个选项是正确的浮点型常量表示?A. 3.14B. 3.14e2C. 3.14E-2D. 3.14f答案:C7. 在C语言中,下列哪个选项是正确的字符常量表示?A. 'a'B. "a"C. 'ab'D. '0x61'答案:A8. 下列哪个选项是C语言中合法的数组声明?A. int a[5] = {1, 2, 3, 4, 5};B. int a[] = {1, 2, 3, 4, 5};C. int a[5] = {1, 2, 3};D. int a = {1, 2, 3, 4, 5};答案:A9. 在C语言中,下列哪个选项是正确的函数声明?A. int add(int a, int b);B. int add();C. int add(int, int);D. int add(int a, b);答案:A10. 下列哪个选项是C语言中合法的指针声明?A. int *p;B. int *p[];C. int *p[5];D. int (*p)();答案:A11. 在C语言中,下列哪个选项是正确的结构体声明?A. struct Point { int x, y; };B. struct { int x, y; } Point;C. struct Point { int x; int y; };D. struct { int x; int y; };答案:C12. 下列哪个选项是C语言中合法的枚举声明?A. enum {RED, GREEN, BLUE} color;B. enum color {RED, GREEN, BLUE};C. enum {RED, GREEN, BLUE};D. enum color {0, 1, 2};答案:B13. 在C语言中,下列哪个选项是正确的宏定义?A. #define PI 3.14159B. #define PI = 3.14159C. #define PI(3.14159)D. #define PI 3.14159;答案:A14. 下列哪个选项是C语言中合法的文件包含指令?A. #include <stdio.h>B. #include "stdio.h"C. #include <stdio.h>D. #include "stdio.h"答案:A15. 在C语言中,下列哪个选项是正确的条件语句?A. if (a > b) { ... }B. if a > b { ... }C. if (a > b) then { ... }D. if a > b then { ... }答案:A16. 下列哪个选项是C语言中合法的循环语句?A. for (i = 0; i < n; i++) { ... }B. for i = 0; i < n; i++ { ... }C. for (i = 0; i < n; i++) { ... }D. for i = 0 to n { ... }答案:A17. 在C语言中,下列哪个选项是正确的switch语句?A. switch (a) { case 1: ...; case 2: ...; }B. switch (a) { case 1: ...; case 2: ...; default: ...; }C. switch (a) { case 1: ...; case 2: ...; break; }D. switch (a) { case 1: ...; case 2: ...; default: ...; }答案:D18. 下列哪个选项是C语言中合法的goto语句?A. goto label;B. goto 10;C. label: ...D. goto;答案:C19. 在C语言中,下列哪个选项是正确的函数调用?A. printf("%d", 10);B. scanf("%d", &a);C. printf("%d", a);D. scanf("%d", a);答案:B20. 下列哪个选项是C语言中合法的函数定义?A. int add(int a, int b) { return a + b; }B. int add(int a, b) { return a + b; }C. int add(int a, int b) { return a + b; }D. int add(a, b) { return a + b; }答案:A21. 在C语言中,下列哪个选项是正确的递归函数调用?A. int factorial(int n) { return n * factorial(n - 1); }B. int factorial(int n) { if (n == 0) return 1; else return n * factorial(n - 1); }C. int factorial(int n) { return n * factorial(n + 1); }D. int factorial(int n) { if (n == 1) return 1; else return n * factorial(n - 1); }答案:B22. 下列哪个选项是C语言中合法的数组初始化?A. int a[5] = {1, 2, 3, 4, 5};B. int a[5] = {1, 2, 3, 4};C. int a[5] = {1, 2, 3};D. int a[5] = {1, 2, 3, 4, 5, 6};答案:A23. 在C语言中,下列哪个选项是正确的字符串复制?A. strcpy(a, b);B. strcopy(a, b);C. copy(a, b);D. strcp(a, b);24. 下列哪个选项是C语言中合法的内存分配?A. int *p = (int *)malloc(sizeof(int) * 10);B. int *p = malloc(10 * sizeof(int));C. int *p = (int *)malloc(10);D. int *p = malloc(sizeof(int) * 10);答案:A25. 在C语言中,下列哪个选项是正确的内存释放?A. free(p);B. delete p;C. deallocate p;D. dispose p;答案:A26. 下列哪个选项是C语言中合法的指针运算?B. p--;C. p += 2;D. p = 2;答案:A27. 在C语言中,下列哪个选项是正确的结构体赋值?A. Point p1 = {1, 2};B. Point p1 = p2;C. Point p1 = {1, 2};D. Point p1 = {1, 2, 3};答案:B28. 下列哪个选项是C语言中合法的枚举值使用?A. color = RED;B. color = 0;C. color = "RED";D. color = 1;答案:A29. 在C语言中,下列哪个选项是正确的宏替换?A. #define SQUARE(x) x * xB. #define SQUARE(x) (x) * (x)C. #define SQUARE(x) x * xD. #define SQUARE(x) (x) * (x)答案:D30. 下列哪个选项是C语言中合法的文件操作?A. FILE *fp = fopen("file.txt", "r");B. FILE *fp = open("file.txt", "r");C. FILE *fp = fopen("file.txt", "w");D. FILE *fp = open("file.txt", "w");答案:A31. 在C语言中,下列哪个选项是正确的文件读取?A. fscanf(fp, "%d", &a);B. scanf(fp, "%d", &a);C. fscanf(fp, "%d", a);D. scanf(fp, "%d", a);答案:A32. 下列哪个选项是C语言中合法的文件写入?A. fprintf(fp, "%d", a);B. printf(fp, "%d", a);C. fprintf(fp, "%d", &a);D. printf(fp, "%d", &a);答案:A33. 在C语言中,下列哪个选项是正确的文件关闭?A. close(fp);B. fclose(fp);C. fclose(fp);D. close(fp);答案:B34. 下列哪个选项是C语言中合法的错误处理?A. if (fp == NULL) { perror("Error opening file"); exit(1); }B. if (fp == NULL) { printf("Error opening file"); exit(1); }C. if (fp == NULL) { perror("Error opening file"); return 1; }D. if (fp == NULL) { printf("Error opening file"); return 1; }答案:A35. 在C语言中,下列哪个选项是正确的位运算?A. a & b;B. a && b;D. a || b;答案:A36. 下列哪个选项是C语言中合法的逻辑运算?A. a && b;B. a || b;C. a & b;D. a | b;答案:A37. 在C语言中,下列哪个选项是正确的自增运算?A. a++;B. ++a;C. a += 1;D. a = a + 1;38. 下列哪个选项是C语言中合法的自减运算?A. a--;B. --a;C. a -= 1;D. a = a - 1;答案:A39. 在C语言中,下列哪个选项是正确的类型转换?A. (int)a;B. int(a);C. (int)(a);D. int a;答案:C40. 下列哪个选项是C语言中合法的sizeof运算?A. sizeof(a);B. sizeof int;C. sizeof(int);D. sizeof "string";答案:C二、程序填空题(本大题共2小题,每小题10分,共20分)1. 给定以下代码片段,请填写缺失的部分以实现计算并打印两个整数的和。

全国计算机等级考试二级C语言笔试试题及答案

全国计算机等级考试二级C语言笔试试题及答案

2005 年4 月全国计算机等级考试二级 C 语言笔试试题及答案一、选择题((1)~(10)每小题 2 分,(11)~(50)每小题 1 分,共60 分)下列各题 A )、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)数据的存储结构是指______。

A.存储在外存中的数据B.数据所占的存储空间量C.数据在计算机中的顺序存储方式D.数据的逻辑结构在计算机中的表示(2)下列关于栈的描述中错误的是______。

A.栈是先进后出的线性表B.栈只能顺序存储C.栈具有记忆作用D.对栈的插入与删除操作中,不需要改变栈底指针(3)对于长度为n 的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是______。

A.冒泡排序为n/2B.冒泡排序为nC.快速排序为nD.快速排序为n(n-1)/2(4)对长度为n 的线性表进行顺序查找,在最坏情况下所需要的比较次数为______。

A.log2nB.n/2C.nD.n+1(5)下列对于线性链表的描述中正确的是______。

A.存储空间不一定是连续,且各元素的存储顺序是任意的B.存储空间不一定是连续,且前件元素一定存储在后件元素的前面C.存储空间必须连续,且前件元素一定存储在后件元素的前面D.存储空间必须连续,且各元素的存储顺序是任意的(6)下列对于软件测试的描述中正确的是______。

A.软件测试的目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误D.软件测试的目的是使程序符合结构化原则(7)为了使模块尽可能独立,要求______。

A.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱2005 年4 月全国计算机等级考试二级 C 语言笔试试题及答案一、选择题((1)~(10)每小题 2 分,(11)~(50)每小题 1 分,共60 分)下列各题 A )、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

二级C语言笔试-289(总分:80.00,做题时间:90分钟)一、选择题(总题数:40,分数:50.00)1.能正确表示“当x的取值在[1,10]和[100,110]范围内为真,否则为假”的表达式是( )。

(分数:1.00)A.(x>=1)&&(x<=10)&&(x>=100)&&(x<=110)B.(x>=1)||(X<=10)||(X>=100)||(x<=110)C.(x>=1)&&(X<=10)||(x>=100)&&(x<=110) √D.(x>=1)||(x<=10)&&(x>=100)||(x<=110)解析:[解析]本题考查逻辑与(&&)和逻辑或(||)运算符的使用。

x>=1和x<=1O是逻辑与的关系,因此C 语言表达式应写成“(x>=1)&&(x<=10)”,x>=100和x<=11O也是逻辑与的关系,因此C语言表达式应写成“(x>=100)&&(x<=110)”;[1,10]和[100,110]是逻辑或的关系,因此只要将前两个表达式用逻辑或运算符连接起来即可,所以最后的表达式;(x>=1)&&(x<=10)||(x>=100)&&(x<=110)。

2.己知一个有序线性表为(13,18,24,35,47,50,62,83,96,115,134),当用二分法查找值为90的元素时,查找成功的比较次数为( )。

(分数:1.00)A.1B.2 √C.3D.9解析:[解析]根据二分法查找需要两次:①首先将90与表中间的元素50进行比较,由于90大于50,所以在线性表的后半部分查找。

②第二次比较的元素是后半部分的中间元素,即90,这时两者相等,即查找成功。

3.有下列二叉树,对此二叉树前序遍历的结果为( )。

(分数:1.00)A.ACFXDBEYZB.ABEFXYZCDC.ABCDEFXYZD.ABDYECFXZ √解析:[解析]对二叉树的前序遍历是指:先访问根结点,然后访问左子树,最后访问右子树,并且,在访问左、右子树时,先访问根结点,再依次访问其左、右子树。

记住3种遍历的顺序:①前序,访问根一按前序遍历左子树一按前序遍历右子树;②中序,按中序遍历左子树一访问根一按中序遍历右子树;③后序,按后序遍历左子树→按后序遍历右子树→访问根4.下列不正确的转义字符是( )。

(分数:1.00)A.'//'B.'/t'D.'088' √解析:[解析]'//'是反斜线转义字符:'/t'是水平跳格转义字符:'/n'是换行转义字符;C语言中没有规定'088'为转义字符。

5.函数调用strcat (strcpy(str1,str2),str3)的功能是( )。

(分数:1.00)A.将字符串str1复制到字符串str2中后再连接到字符串str3之后B.将字符串str1连接到字符串str2之后再复制到字符串str3之后C.将字符串str2复制到字符串str1中后再将字符串str3连接到字符串str1之后√D.将字符串str2连接到字符串str1之后再将字符串str1复制到字符串str3中解析:[解析]sffcat(s1,s2)是把s2字符串连接到s1字符串末尾,strcpy(s1,s2)是把s2字符串复制给s1字符串,要保证sj能容纳下连接或复制后的字符串。

6.若有"double a;",则正确的输入语句是( )。

(分数:1.00)A.scanf("%lf",a);B.scanf("%f",&a);C.scanf("%lf",&a)D.scanf("%le",&a);√解析:[解析]scanf函数的调用形式是:scanf(格式字符串,输入项地址表)。

其中,“格式字符串”是要输入的变量的格式符;“输入项地址表”是要输入的变量的地址。

题中定义变量a为双精度型变量,双精度变量的格式符为“1e”;变量的地址用取地址符“&”加变量名表示,例如变量a的地址为“&a”。

7.需求分析阶段的任务是( )。

(分数:1.00)A.软件开发方法B.软件开发工具C.软件开发费用D.软件系统功能√解析:[解析]需求分析是软件定义时期的最后一个阶段,它的基本任务就是详细调查现实世界要处理的对象,充分了解原系统的工作概况,明确用户的各种需求,然后在这些基础上确定新系统的功能。

8.若有说明int a[][3]=1,2,3,4,5,6,7,8,9,则a数组第一维的大小是( )。

(分数:1.00)A.2B.3 √C.4D.无确定值解析:[解析]本题考查二维数组第一维的大小如何确定。

二维数组第一维的大小由下列规则确定:①当初值的个数能被第二维的常量表达式的值除尽时,所得商数就是第一维的大小:②当初值的个数不能被第二维的常量表达式的值除尽时,第一维的大小等于所得商数加1。

9.有下列程序:#include " stdio.h"int x=0;int y=0;while (x<7&&++y)y--;x++;printf("%d,%d",y,x);程序的输出结果是( )。

(分数:1.00)A.0, 7 √B.7, 7C.0,6D.1,6解析:[解析]本题考查while循环。

y的值在while循环的控制表达式中加1,在循环体内减1,所以总的y值不变,且控制条件++y永远非零。

当x加到7时不满足循环条件,结束循环。

10.#define能作简单的替代,用宏来替代计算多项式5*x*x+5*x+5的值的函数f,正确的宏定义语句为( )。

(分数:1.00)A.#define f(x)5*x*x+5*x+5B.#define f5*x*x+5*x+5C.#define f(a)(5*a*a+5*a+5) √D.#define (5*x*x+5*x+5)f(x)解析:[解析]带参数宏的格式为:#define标识符(形参表) 形参表达式。

其功能是:在预处理程序中将程序中出现的所有带实参的宏名,展开成由实参组成的表达式。

11.假定所有变量均已正确说明,下列程序段运行后x的值是( )。

a=b=c=0;x=12;if(!(分数:2.00)A.x--;解析:[解析]本题考查if else语句。

第一个if语句,先判断条件,发现a=0,则!a成立,执行下列的语句,x--,得x=11:第二个if语句,判断条件,发现c=o,则条件不成立,执行下列的else语句,得x=4。

12.下列叙述中正确的是( )。

(分数:2.00)A.break语句只能用于switch语句B.在switch语句中必须使用defaultC.break语句必须与switch语句中的case配对使用D.在switch语句中,不一定使用break语句√解析:[解析]break为C语言关键字,又称间断语句。

break语句的功能是跳出正在执行的条件语句或循环语句。

它可以出现在switch语句中,也可以出现在循环语句中。

default是关键字,起标号的作用,代表所有case标号之外的那些标号。

default标号可以出现在语句体中任何标号位置上。

在switch语句体中也可以没有default标号。

13.设q1和q2是指向一个float型一维数组的指针变量,k为float型变量,则不能正确执行的语句是( )。

(分数:2.00)A.k=*q1+*q2;B.q1=k;√C.q1=q2;D.k=*q1*(*q2);解析:[解析]选项A)是将指针q1和q2所指向的变量值相加,然后赋给k;选项B)中,float型数据和指针型数据之间不能进行赋值运算;选项C)中,是两个指针变量之间的赋值:选项D)中,是两个指针型变量所指向的两个float型数据相乘。

14.树是结点的集合,它的根结点的数目是( )。

(分数:2.00)A.有且只有1个B.1或多于1C.0或1 √D.至少有2个解析:[解析]树具有明显的层次关系,即树是一种层次结构。

在树结构中,根结点在第一层上。

当树为非空时,树中有且只有一个根结点,当树为空时,树中根结点的数目为0。

15.结构化程序设计主要强调的是( )。

(分数:2.00)A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序的易读性√解析:[解析]程序不光是编写完就结束了,为了测试和维护程序,往往还有其他人阅读和跟踪程序,因此程序设计的风格应该强调简单和清晰,即程序的易读性,“清晰第一,效率第二”。

16.下列程序的运行结果是( )。

#include <stdio.h>main()int a=2,b=3,c=4;if(a<b)if(b<0) c=0;else c+=1;printf("%d/n", c);(分数:2.00)A.2B.3C.5 √D.4解析:[解析]本题考查if else语句。

第一个if语句,先判断条件,发现a<b条件成立,执行下列的语句;第二个if语句,先判断条件,发现b<0条件不成立,则执行与其配对的else语句,c+=1,得c=5。

17.若有下列说明和语句,已知int型数据占2个字节,则下列语句的输出结果是( )。

struct stchar a[15];int b;double c;;printf("%d",sizeof (struct st));(分数:2.00)A.15B.8C.25 √D.2解析:[解析]本题主要考查结构体的内存使用:对结构体而言,结构中不同的成员分别使用不同的内存空间,一个结构所占内存空间的大小是结构中每个成员所占内存空间大小的总和,结构中每个成员相互独立。

题中int b占2个字节,char a[15]占15个字节,double c占8个字节,所以共25个字节。

18.函数ftell(fp)的作用是( )。

(分数:2.00)A.得到fp所指向文件的当前读写位置√B.初始化流式文件的位置指针C.移动流式文件的位置指针D.以上答案均正确解析:[解析]位置指针当前值函数ftell()的基本调用格式为:ftell(fp)。

ftell()函数的参数说明:“fp”是指向文件的文件型指针。

ftell函数的功能:得到fp所指向文件的当前读写位置,即位置指针的当前值,如果函数的返回值为-1L,表示出错。

19.C语言的基本单位是( )。

(分数:2.00)A.函数√B.过程C.子程序D.子函数解析:[解析]C语言是函数式的语言,它的基本组成单位是函数,在C语言中任何程序都是由一个或者多个函数组成的。

相关文档
最新文档