国家二级C语言机试(C语言基础知识)模拟试卷8
国家二级C++机试(继承和派生)模拟试卷8(题后含答案及解析)

国家二级C++机试(继承和派生)模拟试卷8(题后含答案及解析) 题型有:1. 选择题选择题1.有如下类定义:class AA{ int a:public:AA(intn=0):a(n){} };class BB:public AA{ public:BB(int n)____ };其中横线处缺失部分是( )。
A.:a(n){}B.:AA(n){}C.{a(n);}D.{a=n;}正确答案:B解析:根据派生类构造函数的一般格式:<派生类名>(<总参数表>):<基类名1>(<参数表1>),…<基类名n><参数表n>),<成员对象名1>(<参数表n+1>),<成员对象名m>(<参数表n+m>)<派生类构造函数体>。
在派生类BB的构造函数总参数表后面应该接上基类名AA和其参数。
知识模块:继承和派生2.有如下程序:#inc1ude <iostream>using namespace std;class Basel{ public:Basel(int d) {cout<<d;} ~Basel( ){} };class Base2{ public:Base2(int d) {cout<<d;} ~Base2( ){} };class Derived:public Basel,Base2{ public:Derived (int a,int b,int c,int d);Basel(b),Base2(a),bl(d),b2(c) {} Private:int b1;int b2;};int main( ){ Derived d(1,2,3,4);retum 0;} 运行时的输出结果是( )。
A.1234B.2134C.12D.21正确答案:D解析:程序在创建派生类对象d时,分别调用基类Basel和Basel的构造函数。
知识模块:继承和派生3.已知基类Employee只有一个构造函数,其定义如下:Employee::Employee(int n):id(n){} Manager是Employee的派生类,则下列对Manager 的构造函数的定义中,正确的是( )。
全国计算机等级考试二级C语言笔试试题及答案

全国计算机等级考试二级C语言笔试试题及答案一、选择题1. 以下关于C语言的描述中,正确的是(A)A. C语言是一种结构化程序设计语言B. C语言是面向对象的程序设计语言C. C语言是一种解释型语言D. C语言是一种高级汇编语言答案:A2. 在C语言中,以下哪个选项是非法的整型常量?(D)A. 012B. 0x123C. 0XabcD. 0123答案:D3. 若变量已正确定义并赋值,以下正确的表达式是(C)A. a = b ++ + 1;B. a = b ++ = a++;C. a = b + b++;D. a = ++b + ++b;答案:C4. 在C语言中,以下哪个函数用于输出字符?(B)A. printfB. putcharC. putcharcD. putchart答案:B5. 已知 int a = 5, b = 3;,以下哪个选项的结果为1?(D)A. a % bB. a / bC. a + bD. a - b答案:D二、填空题1. 在C语言中,一个int类型的数据在内存中占______个字节。
答案:42. C语言中,逻辑运算符“或”用______表示。
答案:||3. 若定义 int a = 10, b = 20;,则执行语句 a += b -= a; 后,b的值为______。
答案:104. 在C语言中,函数的返回值类型为void时,表示该函数______。
答案:无返回值5. 在C语言中,以下函数的返回类型为______。
int max(int a, int b) {return (a > b) ? a : b;}答案:int三、判断题1. C语言中的数组名可以作为指针使用。
(正确)2. 在C语言中,静态存储区的数据在程序运行期间一直存在。
(正确)3. 在C语言中,结构体是一种用户自定义的数据类型。
(正确)4. 在C语言中,函数的参数传递都是按值传递的。
(错误,部分按引用传递)5. 在C语言中,文件操作完成后必须关闭文件,否则可能导致数据丢失。
全国计算机等级二级C语言模拟试题及答案

2011年全国计算机等级二级C语言模拟试题及答案(1)一、填空题1、C语言中基本的数据类型有:__________、__________ 、__________ 。
2、C语言中普通整型变量的类型说明符为__________,在内存中占__________字节,有符号普通整型的数据范围是__________。
3、整数-35在机内的补码表示为__________。
4、执行下列语句int a=8; a+=a-=a*a; 后,a的值是__________ 。
5、有如下语句:char A[ ]={”I am a student”}; 该字符串的长度是__________,A[3]=__________ 。
6、符号”a”和’a’的区别是__________。
7、所谓“指针”就是__________ 。
“&”运算符的作用是__________。
“*”运算符的作用是__________ 。
8、有如下输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是__________。
二、选择题1、设整型变量a为5,使b不为2的表达式是()。
A. b=a/2B. b=6-(--a)C. b=a%2D. b=a>3?2:12、为了避免嵌套的条件分支语句if-else的二义性,C语言规定:C程序中的else总是与()组成配对关系。
A. 缩排位置相同的ifB. 在其之前未配对的ifC. 在其之前未配对的最近的ifD.同一行上的if3、以下程序的输出结果是( )。
int x=10,y=10;printf(“%d%d\n”,x--,--y);A. 10 10B. 9 9C. 9 10D. 10 94、设A为存放(短)整型的一维数组,如果A的首地址为P,那么A中第i 个元素的地址为()。
A.P+i*2B. P+(i-1)*2C. P+(i-1)D. P+i5、选出下列标识符中不是合法的标识符的是()。
计算机国家二级考试c语言试题及答案

计算机国家二级考试c语言试题及答案C语言是一种计算机编程语言,被广泛应用于软件开发和系统编程领域。
对于计算机专业人员来说,掌握C语言的基础知识和能力非常重要。
而计算机国家二级考试C语言试题及答案提供了一系列练习和参考,帮助考生更好地备战考试。
以下是一些常见的C语言试题和对应的答案,供大家参考:1. 以下哪个选项是C语言的数据类型?a) Stringb) Doublec) Chard) Float答案:c) Char2. 在C语言中,用于声明变量的关键字是什么?答案:int、float、char等是用于声明变量的关键字。
3. 下列语句哪个是用于在屏幕上输出字符串的?a) printf()b) scanf()c) gets()d) puts()答案:a) printf()4. 下列哪个操作符用于两个变量之间的相等比较?a) ==b) !=c) >d) <答案:a) ==5. 下列哪个语句用于在C语言中实现循环?a) forb) whilec) do-whiled) all of the above答案:d) all of the above6. 下列语句中,哪个是用于定义一个函数的头部?a) main()b) {c) return 0;d) int add(int a, int b)答案:d) int add(int a, int b)7. 下列选项中,哪个函数用于从键盘输入整数?a) printf()b) scanf()c) gets()d) puts()答案:b) scanf()8. 在C语言中,以下哪个是正确的注释格式?a) //This is a commentb) /**This is a comment**/c) #This is a commentd) /*This is a comment*/答案:d) /*This is a comment*/9. 下面的循环语句在执行时会输出什么内容?```cfor(int i = 0; i < 5; i++) {printf("%d ", i);}```答案:输出:0 1 2 3 410. 下列选项中,哪个函数用于比较两个字符串是否相等?a) strcmp()b) strcpy()c) strcat()d) strlen()答案:a) strcmp()以上是一些常见的计算机国家二级考试C语言试题及答案。
国家二级计算机考试c语言试题及答案

国家二级计算机考试c语言试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言中变量的描述,错误的是:A. 变量名必须以字母开头B. 变量名可以包含数字和下划线C. 变量名区分大小写D. 变量名可以以数字开头答案:D2. C语言中,用于定义一个整型变量的关键字是:A. intB. floatC. doubleD. char答案:A3. 在C语言中,以下哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C4. 下列哪个选项不是C语言中的控制结构?A. 顺序结构B. 选择结构C. 循环结构D. 函数结构5. 在C语言中,用于定义函数的关键字是:A. intB. voidC. returnD. function答案:B6. C语言中,用于声明一个字符型变量的关键字是:A. intB. charC. floatD. double答案:B7. 在C语言中,以下哪个选项是正确的注释方式?A. //B. /* */C.D. @@答案:B8. C语言中,用于定义一个浮点型变量的关键字是:A. intB. floatC. doubleD. char答案:B9. 在C语言中,以下哪个选项不是合法的整数常量?B. 0x1AC. 0123D. 1.23答案:D10. 在C语言中,以下哪个选项不是合法的标识符?A. _nameB. name2C. 2nameD. name-name答案:C二、填空题(每题2分,共20分)1. 在C语言中,使用________关键字可以定义一个数组。
答案:int2. C语言中,使用________函数可以输出格式化的字符串。
答案:printf3. 如果要定义一个指向整型数据的指针,应该使用________关键字。
答案:int*4. 在C语言中,使用________关键字可以定义一个结构体。
答案:struct5. 使用________函数可以获取当前系统时间。
答案:time6. 在C语言中,使用________关键字可以定义一个枚举类型。
国家二级(C语言)笔试模拟试卷150(题后含答案及解析)

国家二级(C语言)笔试模拟试卷150(题后含答案及解析)题型有:1. 选择题 2. 填空题选择题(1-10、21-40每题2分,11-20每题1分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1.算法的空间复杂度是指A.算法程序的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.执行算法需要的内存空间正确答案:D解析:算法的复杂度主要包括算法的时间复杂度和空间复杂度。
所谓算法的时间复杂度是指执行算法所需要的计算工作量;算法的空间复杂度是指执行这个算法所需要的内存空间。
2.在结构化程序设计中,模块划分的原则是A.各模块应包括尽量多的功能B.各模块的规模应尽量大C.各模块之间的联系应尽量紧密D.模块内具有高内聚度、模块间具有低耦合度正确答案:D解析:在结构化程序设计中,一般较优秀的软件设计尽量做到高内聚、低耦合,这样有利于提高软件模块的独立性,也是模块划分的原则。
3.下列叙述中,不属于测试的特征的是A.测试的挑剔性B.完全测试的不可能性C.测试的可靠性D.测试的经济性正确答案:C解析:软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。
它有3个方面的重要特征,即测试的挑剔性、完全测试的不可能性及测试的经济性。
其中,没有测试的可靠性这一说法。
4.下面关于对象概念的描述中,错误的是A.对象就是C语言中的结构体变量B.对象代表着正在创建的系统中的一个实体C.对象是一个状态和操作(或方法)的封装体D.对象之间的信息传递是通过消息进行的正确答案:A解析:对象是由数据和容许的操作组成的封装体,与客观实体有直接的对应关系,对象之间通过传递消息互相联系,来模拟现实世界中不同事物彼此之间的联系,B)、C)、D)是正确的,对象的思想广泛应用于C++、Java等语言中,因此A)错误。
5.下列关于队列的叙述中正确的是A.在队列中只能插入数据B.在队列中只能删除数据C.队列是先进先出的线性表D.队列是先进后出的线性表正确答案:C解析:队列是一种操作受限的线性表。
二级全国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。
2021年全国计算机二级等级考试模拟试卷及答案(第八套)

2021年全国计算机二级等级考试模拟试卷及答案(第八套)1. 下列关于栈叙述正确的是()。
A) 栈顶元素最先能被删除B) 栈顶元素最后才能被删除C) 栈底元素永远不能被删除D) 栈底元素最先被删除参考答案:A2.下列叙述中正确的是()。
A) 在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化B) 在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化C) 在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化D) 以上说法均不正确参考答案:C3.某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)()。
A) 3B) 4C) 6D) 7参考答案:D4.软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。
下面属于应用软件的是()。
A) 学生成绩管理系统B) C语言编译程序C) UNIX 操作系统D) 数据库管理系统参考答案:A5.结构化程序所要求的基本结构不包括()。
A) 顺序结构B) GOTO跳转C) 选择(分支)结构D) 重复(循环)结构参考答案:B6.下面描述中错误的是()。
A) 系统总体结构图支持软件系统的详细设计B) 软件设计是将软件需求转换为软件表示的过程C) 数据结构与数据库设计是软件设计的任务之一D) PAD图是软件详细设计的表示工具参考答案:A7.负责数据库中查询操作的数据库语言是()。
A) 数据定义语言B) 数据管理语言C) 数据操纵语言D) 数据控制语言参考答案:C8.一个教师可讲授多门课程,一门课程可由多个教师讲授。
则实体教师和课程间的联系是()。
A) 1:1联系B) 1:m联系C) m:1联系D) m:n联系参考答案:D9.有三个关系R、S和T如下:则由关系R和S得到关系T的操作是( )。
A) 自然连接B) 并C) 交D) 差参考答案:D10.定义无符号整数类为UInt,下面可以作为类UInt实例化值的是()。
A) -369C) 0.369D) 整数集合{1,2,3,4,5}参考答案:B11.以下叙述中错误的是A) C程序在运行过程中所有计算都以二进制方式进行B) C程序在运行过程中所有计算都以十进制方式进行C) 所有C程序都需要编译链接无误后才能运行D) C程序中字符变量存放的是字符的ASCII值参考答案:B12.以下关于C语言的叙述中正确的是A) C语言的数值常量中夹带空格不影响常量值的正确表示B) C语言中的变量可以在使用之前的任何位置进行定义C) 在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致D) C语言中的注释不可以夹在变量名或关键字的中间参考答案:D13.以下不合法的字符常量是A) '\\'C) '\018'D) '\xcc'参考答案:C14.以下选项中正确的定义语句是A) double, a, b;B) double a=b=7;C) double a; b;D) double a=7, b=7;参考答案:D15.若有定义语句:int a=3,b=2,c=1;以下选项中错误的赋值表达式是A) a=(b=4)=3;B) a=b=c+1;C) a=(b=4) +c;D) a=1+(b=c=4);参考答案:A16.若有定义:int a,b;scanf("%d;%d",&a,&b);能把整数3赋给变量a,5赋给变量b的输入数据是A) 3 5B) 3,5C) 3;5D) 35参考答案:C17.已知大写字母A的ASCII码是65,小写字母a的ASCII码是97。
国家二级C语言机试编译预处理和指针模拟试卷8_真题-无答案

国家二级C语言机试(编译预处理和指针)模拟试卷8(总分52,考试时间90分钟)1. 选择题1. 以下叙述中正确的是A. 在C语言中,预处理命令行都以”#”开头B. 预处理命令行必须位于C源程序的起始位置C. #include必须放在C程序的开头D. C语言的预处理不能实现宏定义和条件编译的功能2. 有以下程序,程序运行后的输出结果是#define PT 3.5;#define S(x)PT*x*x;main(){int a=1,b=2;printf("%4.1 f\n",S(a+b));}A. 31.5B. 7.5C. 程序有错无输出结果D. 14.03. 以下关于宏的叙述中正确的是A. 宏定义必须位于源程序中所有语句之前B. 宏名必须用大写字母表示C. 宏调用比函数调用耗费时间D. 宏替换没有数据类型限制4. 有以下程序,程序运行后的输出结果是#include #define S(x)4*(x)*x+1 void main() {int k=5,j=2;printf("%d\n",S(k+j));}A. 197B. 143C. 33D. 285. 设有宏定义:#define IsDIV(k,n)((k%n==1)?1:0)且变量m已正确定义并赋值,则宏调用:IsDIV(m,5)&&IsDIV(m,7)为真时所要表达的是A. 判断m是否能被5和7整除B. 判断m被5或者7整除是否余1C. 判断m被5和7整除是否都余1D. 判断m是否能被5或者7整除6. 有以下程序,程序运行后的输出结果是#include #define SUB(a)(a)-(a) main(){ int a=2,b=3,c=5,d;d=SUB(a+b)*c:printf("%d\n",d);}A. .12B. 0C. 10D. .207. 有以下程序,程序运行后的输出结果是#include #define fix)x*x*x main(){ int a=3,s,t;s=f(a+1);t=f((a+1));printf("%d,%d\n",s,t);} A. 10,10 B. 10,64C. 64,10D. 64,648. 有下列程序,程序的运行结果是#include #define N 5 #define M N+1 #define fix)(x*M) main() {int i1,i2;il=ff2);i2=f(1+1);printf("%d%d\n",i1,i2);}A. 12 7B. 12 12C. 11 11D. 11 79. 以下叙述中错误的是A. 预处理命令行的最后不能以分号表示结束B. C程序对预处理命令行的处理是在程序执行的过程中进行的C. #define MAX是合法的宏定义命令行D. 在程序中凡是以“#”开始的语句行都是预处理命令行10. 若程序中有宏定义行:#define N 100则以下叙述中正确的是A. 宏定义行中定义了标识符N的值为整数100B. 上述宏定义行实现将100赋给标示符NC. 在运行时用100替换标识符ND. 在编译程序对C源程序进行预处理时用100替换标识符N11. 若有以下程序,则程序的输出结果是#define S(x)x*x #define T(x)S(x)*S(x) main(){int k=5,j=2;printf("%d,%d\n",S(kI+j),T(k+j));}A. 17,37B. 49,2401C. 17,289D. 49,28912. 有以下程序,程序运行后的输出结果是#include<stdio.h>#define N 2 #define M N+1 #define NUM(M+1)*M/2 main(){printf("%d\n",NUM);}A. 4B. 8C. 9D. 613. 有以下程序,程序运行后的输出结果是#include #define SUB(X,Y)(X+1)*Y main(){int a=3,b=4;printf("%d\n",SUB(a++,b++));}A. 20B. 12C. 16D. 2514. 下面选项中关于编译预处理的叙述正确的是A. 凡是以≠}号开头的行,都被称为编译预处理命令行B. 预处理命令行必须使用分号结尾C. 预处理命令行不能出现在程序的最后一行D. 预处理命令行的作用域是到最近的函数结束处15. 有以下程序,程序的输出结果是#include<stdio.h>#define SQR(X)X*X main(){ int a=10,k=2,m:1;a|=SQR(k+m)/SQR(k+m);printf("%d\n",a);} A. 0 B. 1C. 9D. 1016. 以下叙述中正确的是A. 在包含文件中,不得再包含其他文件B. #include命令行不能出现在程序文件的中间C. 在一个程序中,允许使用任意数量的#include命令行D. 虽然包含文件被修改了,包含该文件的源程序也可以不重新进行编译和连接17. 有以下程序,程序的运行结果是#include #include int fun(int n) main() {int*p;{int a;p=(int*)malloc(sizeof(int));a=fun(10);*p=n;return*p;printf("%d\n",a+fun(10));} }A. 10B. 20C. 0D. 出错18. 有以下程序,程序运行后的输出结果是#include #include main() {int*a,*b,*c;a=b:c=(int*)malloc(sizeof(int));*a=1;*b=2,*c=3;a=b;printf("%d,%d,%d\n",*a,*b,*c);}A. 2,2,3B. 3,3,3C. 1,2,3D. 1,1,319. 有以下程序,程序运行后的输出结果是void fun(int*p1,int*p2,int*s) {s=(int*)malloc(sizeof(int));*s=*p1+*(p2++);} main(){int a[2]={1,2},b[2]={10,20},*s=a;fun(a,b,s);printf("%d\n",*s);}A. 10B. llC. 2D. 120. 有以下程序段int*p;p=_________malloc(sizeof(int));若要求使p指向一个int型的动态存储单元,在横线处应填入的是A. (int*)B. intC. int*D. (*int)21. 有以下程序,程序的输出结果是void fun(double*p1,double*p2,double*s) {s=(double*)calloc(1,sizeof(double));*s=*p1+*(p2+1):} main(){double a[2]={1.1,2.2},b[2]={10.0,20.0},*s=a;fun(a,b,s);printf("%5.2f\n",*s);} A. 1.10 B. 11.10C. 12.10D. 21.1022. 设有以下函数:void fim(int n,char,*s){……}则下面对函数指针的定义和赋值均正确的是A. void*pf();pf=fun;B. void(*pf)(int,char*);pf=fun;C. void*Pf();*pf=fun;D. void(*pf)(int,char);pf=&fun;23. 设有定义语句int(*f)(int);则以下叙述正确的是A. f是基类型为int的指针变量B. f是指向int类型一维数组的指针变量C. f是指向函数的指针变量,该函数具有一个int类型的形参D. f是函数名,该函数的返回值是基类型为int类型的地址24. 以下叙述中正确的是A. 指针变量只能通过求地址运算符(&)来获得地址值B. 语句“p=NULL;”与“p=\0;”是等价的语句C. “int*p1;int**p2;int*p3;”都是合法的定义指针变量的语句D. 语句p=NULL;执行后,指针p指向地址为0的存储单元25. 以下叙述中正确的是A. 函数的类型不能是指针类型B. 函数的形参类型不能是指针类型C. 基类型不同的指针变量可以相互混用D. 设有指针变量为“double*p”,则“p+1”将指针p移动8个字节26. 设有某函数的说明为int*func(int a[10],int n);则下列叙述中,正确的是A. 说明中的a[10]写成a[]或*a效果完全一样B. 形参a对应的实参只能是数组名C. func的函数体中不能对a进行移动指针(如a++)的操作D. 只有指向10个整数内存单元的指针,才能作为实参传给a。
国家二级C语言机试数据库设计基础模拟试卷8_真题-无答案

国家二级C语言机试(数据库设计基础)模拟试卷8(总分56,考试时间90分钟)1. 选择题1. 定义学生选修课程的关系模式为SC(S#,Sn,Sd,Sa,C#,G)(其属性分别为学号、姓名、所在系、年龄、课程号和成绩);C(C#,Cn,P#)(其属性分别为课程号、课程名、先选课)。
关系模式SC的主键是A. S#B. C#C. S#,C#D. Sn,C#2. 数据库管理系统的基本功能不包括A. 数据库访问B. 数据库定义C. 数据库的建立和维护D. 数据库和网络中其他系统的通信3. 由关系R1和R2得到关系R3的操作是A. 等值连接B. 并C. 笛卡尔积D. 交4. 某图书集团数据库中有关系模式R(书店编号,书籍编号,库存数量,部门编号,部门负责人),其中要求①每个书店的每种书籍只在该书店的一个部门销售;②每个书店的每个部门只有一个负责人;③每个书店的每种书籍只有一个库存数量。
则关系模式R最高是A. 2NFB. 1NFC. 3NFD. BCNF5. 下列叙述中正确的是A. 数据库系统减少了数据冗余B. 经规范化后的数据库系统避免了一切冗余C. 数据库系统比文件系统能管理更多的数据D. 数据库系统中数据的一致性是指数据类型一致6. 每个学校有一名校长,且不同学校的校长可以是同一人,则实体学校和实体校长间的联系是A. 多对一B. 多对多C. 一对一D. 一对多7. 定义部门关系模式:部门(部门号,部门名,部门成员,部门总经理),使它不满足第一范式的属性是A. 部门名B. 部门成员C. 部门总经理D. 部门号8. 在关系数据库中,描述全局数据逻辑结构的是。
A. 内模式B. 用户模式C. 概念模式D. 物理模式9. 学校的每个社团都有一名团长,且一个同学可同时担任多个社团的团长,则实体团长和实体社团间的联系是A. 一对多B. 多对多C. 多对一D. 一对一10. 在关系模式A(S,SN,D)和B(D,CN,NM)中,关系A的主键是S,关系B的主键是D,则属性D在关系A中称为A. 外键B. 主键C. 超键D. 候选键11. 将数据库的结构划分成多个层次,是为了提高数据库的逻辑独立性和A. 物理独立性B. 操作独立性C. 安全性D. 管理规范性12. 学院的每个系都有一名系主任,且一个教师可同时担任多个系的系主任,则实体系主任和实体系间的联系是A. 一对多B. 多对多C. 多对一D. 一对一13. 定义学生选修课程的关系模式:SC(S#,Sn,C#,Cn,G)(其属性分别为学号、姓名、课程号、课程名、成绩)。
国家二级C++机试(运算符重载、模板和C++流)模拟试卷8(题后含答案及解析)

国家二级C++机试(运算符重载、模板和C++流)模拟试卷8(题后含答案及解析)题型有:1. 选择题选择题1.有如下程序:#include<iostrearn>using namespace std;int main( ) { cout.fill(‘*’);cout.width(6);cout.fill(‘#’);cout <<123<<endl;return 0;} 执行后的输出结果是( )。
A.###123B.123###C.***123D.123***正确答案:A解析:此题考查的是I/O格式化输出。
函数width(int n)设置输入输出宽度,当实际数据宽度小于制定的宽度时,多余的位置用填充字符填满;当实际数据宽度大于设置的宽度时,仍按实际宽度输出;函数fill(char c)用来设置填充字符。
知识模块:C++流2.下面关于C++流的叙述中,正确的是( )。
A.cin是一个输入流对象B.可以用ifstream定义一个输出流对象C.执行语句序列char*y=“PQMN’’;cout<<,y;将输出字符串”PQMN”的地址D.执行语句序列char x[80];cin.getline(x,80);时,若键入Happy new year 则x中的字符串是”Happy’’正确答案:A解析:此题考查的是C++流的概念和I/O的格式化。
cin是类的对象,亦即输入流对象;ifstream是输入文件流类,不能定义一个输出流对象:C选项中最后输出的是字符串“PQMN”:D选项中x中字符串应该是“Happy new year”。
知识模块:C++流3.有如下程序:#include<iostream>#include<iomanip>using namespace std;int main( ) { cout.fill(‘*’);cout<<left <<setw(4)<<123<<<’’OK’’<<endl;return 0;} 执行这个程序的输出结果是( )。
国家二级C语言机试(选择题)模拟试卷100(题后含答案及解析)

国家二级C语言机试(选择题)模拟试卷100(题后含答案及解析) 题型有:1. 选择题选择题1.数据结构主要研究的是数据的逻辑结构、数据的运算和( )。
A.数据的方法B.数据的存储结构C.数据的对象D.数据的逻辑存储正确答案:B解析:数据结构是研究数据元素及其之间的相互关系和数据运算的一门学科,它包含3个方面的内容,即数据的逻辑结构、存储结构和数据的运算。
2.一棵二叉树的前序遍历结果是ABCEDF,中序遍历结果是CBAEDF,则其后序遍历的结果是( )。
A.DBACEFB.CBEFDlAC.FDAEBCD.DFABEC正确答案:B解析:由于该二叉树的前序遍历结果是ABCEDF,显然A结点为根结点,所以后序遍历时A结点是最后遍历的,其后序遍历的结果为CBEFDA。
3.在数据处理中,其处理的最小单位是( )。
A.数据B.数据项C.数据结构D.数据元素正确答案:B解析:数据元素是由多个数据项组成,数据是能够被计算机识别、存储和加工处理的信息载体,数据处理的最小单位是数据项。
4.在数据库系统的内部结构体系中,索引属于( )。
A.模式B.内模式C.外模式D.概念模式正确答案:B解析:内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法,如数据存储的文件结构、索引、集簇及hash等存取方式与存取路径,内模式的物理性主要体现在操作系统及文件级上,它还未深入到设备级上(如磁盘及磁盘操作)。
5.以下( )不属于对象的基本特征。
A.继承性B.封装性C.分类性D.多态性正确答案:A解析:对象具有特征:标识惟一性,指对象是可区分的:分类性,指可以将具有相同属性和操作的对象抽象成类;多态性,指同一个操作可以是不同对象的行为;封装性,从外面看只能看到对象的外部特征,而不知道也无需知道数据的具体结构以及实现操作的算法:模块独立性好,对象是面向对象的软件的基本模块,对象内部各种元素彼此结合得很紧密,内聚性强。
6.数据库系统的核心是( )。
国家二级C语言机试模拟试卷120_真题-无答案

国家二级(C语言)机试模拟试卷120(总分86,考试时间90分钟)1. 选择题1. 下列关于栈和队列的描述中,正确的是( )。
A. 栈是先进先出B. 队列是先进后出C. 队列允许在队头删除元素D. 栈在栈顶删除元素2. 已知二叉树后序遍历序列是CDABE,中序遍历序列是CADEB,它的前序遍历序列是( )。
A. ABCDEB. ECABDC. EACDBD. CDEAB3. 在数据流图中,带有箭头的线段表示的是( )。
A. 控制流B. 数据流C. 模块调用D. 事件驱动4. 结构化程序设计的3种结构是( )。
A. 顺序结构,分支结构,跳转结构B. 顺序结构,选择结构,循环结构C. 分支结构,选择结构,循环结构D. 分支结构,跳转结构,循环结构5. 下列方法中,不属于软件调试方法的是( )。
A. 回溯法B. 强行排错法C. 集成测试法D. 原因排除法6. 下列选项中,不属于模块间耦合的是( )。
A. 内容耦合B. 异构耦合C. 控制耦合D. 数据耦合7. 下列特征中不是面向对象方法的主要特征的是( )。
A. 多态性B. 标识惟一性C. 封装性D. 耦合性8. 在数据库设计中,将E—R图转换成关系数据模型的过程属于( )。
A. 需求分析阶段B. 概念设计阶段C. 逻辑设计阶段D. 物理设计阶段9. 在一棵二叉树上,第5层的结点数最多是( )。
A. 8B. 9C. 15D. 1610. 下列有关数据库的描述,正确的是( )。
A. 数据库设计是指设计数据库管理系统B. 数据库技术的根本目标是要解决数据共享的问题C. 数据库是一个独立的系统,不需要操作系统的支持D. 数据库系统中,数据的物理结构必须与逻辑结构一致11. 以下关于C语言的叙述中正确的是( )。
A. 预处理命令通常位于函数体外面,但也可以位于函数体中间B. C语言中的变量定义须在其他语句之前C. 在C语言程序的书写中,一个语句必须单占一行D. —个C语言源程序可以由一个或多个源文件组成,每个源文件可由自己的ma1n函数12. 下列叙述中错误的是( )。
2014年9月二级C语言程序设计模拟(8)试题及答案

2014年9月二级C语言程序设计模拟(8)试题及答案单项选择题1.下列关于栈和队列的描述中,正确的是( )。
A:栈是先进先出B:队列是先进后出C:队列允许在队头删除元素D:栈在栈顶删除元素参考答案: D 题目分值: 1.0 分您的答案: 得分: 0.0详细解答: 栈实际也是线性表,只不过是一种特殊的线性表。
栈是只能在表的一端进行插入和删除运算的线性表,通常称插入、删除的这一端为栈顶,另一端为栈底。
队列是只允许在一端删除,在另一端插入的顺序表,允许删除的一端叫做队头,允许插入的一端叫做队尾。
2.已知二叉树后序遍历序列是CDABE,中序遍历序列是CADEB,它的前序遍历序列是( )。
A: ABCDEB: ECABDC: EACDBD: CDEAB参考答案: C 题目分值: 1.0 分您的答案: 得分: 0.0详细解答: 由于后序遍历的最后一个元素为E,所以E为根结点,所以它的前序遍历的首个元素为E,故排除A)和D)选项。
由于中序遍历中,元素B在元素根结点E的后面,所以B为二叉树的右子树,并且该二叉树右子树只有一个元素,所以前序遍历的最后一个元素应为B,故选项C)为正确选项,即该二叉树的前序遍历序列是EACDB。
3.在数据流图中,带有箭头的线段表示的是( )。
A:控制流B:数据流C:模块调用D:事件驱动详细解答: 数据流图中带箭头的线段表示数据流,沿箭头方向传递数据的通道,一般在旁边标注数据流名。
4.结构化程序设计的3种结构是( )。
A:顺序结构,分支结构,跳转结构B:顺序结构,选择结构,循环结构C:分支结构,选择结构,循环结构D:分支结构,跳转结构,循环结构参考答案: B 题目分值: 1.0 分您的答案: 得分: 0.0详细解答: 程序设计语言仅仅使用顺序、选择和重复(循环)三种基本控制结构就足以表达出各种其他形式结构的程序设计方法。
遵循程序结构化的设计原则,按结构化程序设计方法设计出的程序易于理解、使用和维护;可以提高编程工作的效率,降低软件的开发成本。
国家二级(C语言)机试模拟试卷100(题后含答案及解析)_0

国家二级(C语言)机试模拟试卷100(题后含答案及解析)题型有:1. 程序填空题 2. 程序修改题 3. 程序设计题程序填空题(30分)1.请补充main 函数,该函数的功能是:先以只写方式打开文件“out99.dat”,再把字符串str中的字符保存到这个磁盘文件中。
注意:部分源程序给出如下。
请勿改动主函数main 和其他函数中的任何内容,仅在main 函数的横线上填入所编写的若干表达式或语句。
试题程序:#include “stdio. h”#include “conio.h”#define N 80 main ( ) { FILE *fp; int i=0; char ch; char str[N]=“I’m a student!”; clrscr( ); if ( (fp=fopen (【】) ) ==NULL) {printf(“cannot open out99. dat\n”);exit(0); } while (str[i]) {ch=str[i];【】; putchar(ch); i++; }【】; }正确答案:“out99.dat”,“w”fpnte (ch,fp)fclose (fp)解析:第一空:本题考查对文件操作的掌握。
打开一个文件的调用方式是,fp==fopen (文件名,使用文件方式);,题目要求以只写的方式打开文件“out 99.dat”,所以文件使用方式为“w”。
第二空;fputc ( )函数用于将一个字符写到磁盘文件上去,调用形式为:fputc (要输出的字符,文件指针)。
第三空:对一个文件进行操作后,应该关闭它,以防它再被误用。
调用形式为:fclose (文件指针);程序修改题(30分)2.下列给定程序中,函数fun( )的功能是:计算S=f(-n)+f(-n+1)+…+f(0)+f(1)+f(2)+…f(n)的值。
例如,当n为5时,函数值应为10.407143。
全国计算机二级C语言考试模拟题

全国高校计算机等级考试(二级C)模拟一试题一、选择题1、设有语句:int k, *p; 以下能正确执行的赋值语句是(D )。
A、k=pB、k=&pC、P=KD、p=&k2、以下运算符中优先级最高的运算符是(A)。
A、!B、&&C、||D、<3、求字符串长度的函数是( D )。
A、strcatB、strcpyC、strcmpD、strlen4、下面程序段的运行结果是(A)。
char x[5]=“ab\0c\0”;printf("%s",x);说明:“\0”中的“0”是数字零。
A、abB、abcC、ab\0D、ab\0c\05、若有说明语句: int a[2][4]; 则对数组a元素的正确引用是( D )。
A、a[2]B、a[4]C、a[2][4]D、a[1][3]6、C语言允许函数值类型缺省定义,此时该函数值隐含的类型是( B )。
A、float型B、int型C、long型D、double型7、用数组名作为函数调用的实参时,传递给虚参的是(A)。
A、数组的首地址B、数组第一个元素的值C、数组中全部元素的值D、数组元素的个数8、以下程序的输出结果是( D )。
#include<stdio.h>#define F(y) 8-yvoid main(void){int x,y;y=F(2);printf(“y=%d”,y);}A、2B、y=2C、6D、y=69、以下程序的输出结果是(A)。
#include<stdio.h>struct{int x,y;} a;void main(void){int x,y=50,z;a.x=10;a.y=20;z=a.x+y;printf(“%d”,z);}A、60 B 、10 C、0 D、2010、语句fopen(“file.dat”,”r”); 的功能是(A)。
A、按照“读”方式打开文件B、按照“写”方式打开文件C、按照“读写”方式打开文件D、按照“追加”方式打开文件11、关闭文件的语句是( D )。
国家二级C语言机试(操作题)模拟试卷800(题后含答案及解析)

国家二级C语言机试(操作题)模拟试卷800(题后含答案及解析) 全部题型 2. 程序填空题 3. 程序修改题 4. 程序设计题程序填空题1.下列给定程序中,函数fun的功能是:将N×N矩阵主对角线元素的值与反向对角线对应位置上元素的值进行交换。
例如,若N=3,有下列矩阵:1 2 34 5 67 8 9交换后为:3 2 14 5 69 8 7请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意:不得增行或删行,也不得更改程序的结构!试题程序:#include<stdio.h>#define N 4/* * * * * * found * * * * * */void fun(int____1____,int n)int i,s:/* * * * * * found * * * * * */for(____2____;i+ +){s=t[i][i];t[i][i]=t[i][n—i—1];/* * * * * * found * * * * * */t[i][n—1—i]=____3____;}}main( ){int t[][N]={21,12,13,24,25,16,47,38,29,11,32,54,42,21,33,10},i,j;printf(″\nThe origina array:\n″);for(i=0;i<N;i+ +)for(j=0;j<N;j+ +)printf(″%d″,t[i][j]);printf(″\n″);}fun(t,N);printf(″\nThe result is:\n″);for(i=0;i<N;i+ +){for(j=0;j<N;j+ +)printf(″%d″,t[i][j]);printf(″\n″);}正确答案:(1)t[][N] (2)i=0;i<N (3)s解析:本题考查:函数定义;for循环语句;数组元素的引用和赋值;变量值交换算法。
计算机等级考试二级C语言笔试模拟题及答案

计算机等级考试二级C语言笔试模拟题及答案是全国计算机(National Computer Rank Examination,简称NCRE)四个等级中的一个等级,考核计算机根底知识和使用一种高级计算机语言编写程序以及上机调试的根本技能。
那么计算机等级考试二级会怎么考?以下仅供参考!以下各题 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.P 和DISKPC.DEL 和RDD.RENAME 和REN(7) 防止软盘感染病毒的有效方法是()。
A.不要把软盘和有毒软盘放在一起B.在写保护缺口上贴上胶条C.保持机房清洁D.定期对软盘格式化(8) 双面高密度5 英寸软磁盘的容量是()。
A.360KBB.720KBD.1.44MB(9) 在FOXBASE 中,可以使用的两类变量是()。
A.内存变量和字段变量B.全局变量和部分变量C.字段变量和简单变量D.内存变量和自动变量(10) 建立一个新子目录的DOS 命令是()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
国家二级C语言机试(C语言基础知识)模拟试卷8(总分:60.00,做题时间:90分钟)一、选择题(总题数:30,分数:60.00)1.我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。
关于转换以下说法错误的是(分数:2.00)A.一条C语句可能会被转换成多条机器指令B.一条C语句对应转换成一条机器指令√C.一条C语句可能会被转换成零条机器指令D.某种类型和格式的C语句被转换成机器指令的条数是固定的解析:解析:由C语言编写的程序,通过编译、链接转换成可以让机器识别的01二进制指令。
这些二进制指令命令机器计算,这些就是机器指令,而C语言的语句条数和机器指令的条数不是一对一的关系。
2.以下选项中不属于C语言程序运算符的是(分数:2.00)A.sizeofB.()C.<> √D.&&解析:解析:sizeof为测试内存的运算符,()为算术运算符,&&为逻辑运算符。
而<>不是C语言的运算符,C语言中!=表示不等于。
3.若变量已正确定义并赋值,以下不能构成C语句的选项是(分数:2.00)A.A=a+b:B.B++;C.a=a+b √D.A?a:b;解析:解析:C语言语句的表示为分号,不加分号的表达式不能看成C语句。
4.以下叙述中正确的是(分数:2.00)A.程序必须包含所有三种基本结构才能成为一种算法B.如果算法非常复杂,则需要使用三种基本结构之外的语句结构,才能准确表达C.只有简单算法才能在有限的操作步骤之后结束D.我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令√解析:解析:C语句构成了函数,函数构成的程序,经过编译转换成二进制代码后可以运行,算法是指为解决某个特定问题而采取的确定且有限的步骤,可以利用代码来捕述算法,而算法+数据结构才是程序,结构化的程序由顺序结构、循环结构和选择结构三种基本结构组成。
由这三种基本结构组成的算法可以解决任何复杂的问题,反之则不一定,所有算法必须在有限步骤后结束。
5.下列选项中,不能用作标识符的是(分数:2.00)A._1234B._1_2C.int_2_D.2_int_ √解析:解析:C语言中标以符必须以字母或者下划线开始,选项D)中是以数字开始的不能作为标识符。
6.以下选项中作为C语言合法常量的是(分数:2.00)A.-80.√B.-080C.-8e1.0D.-80.0e解析:解析:本题考查C语言中的常量,C语言中字母e或E之前必须有数字,且e或E后面的指数必须为整数。
选项A)表示负数-80;选项B)中以数字0开始表示的是八进制数,八进制数数字范围是从0-7,不包括8;选项C)是一个指数浮点,字母e后面应该是整型指数;选项D)中宁母e后而没有整数,不满足C规范。
7.以下不能定义为用户标识符是(分数:2.00)A.MainB._0C._intD.sizeof √解析:解析:本题考查用户标识符,C语言中用户标识符只能由字母和数字组成,且必须以宁母开头,不能和C语言的关键字相同。
选项A)、B)和C)都符合要求,选项D)中的sizeof是C语言关键。
不能作为用户标识符。
8.以下选项中,不能作为合法常量的是(分数:2.00)A.1.234e04B.1.234e0.4 √C.1.234e+4D.1.234e0解析:解析:本题考查C语言中的常量,C语言中字母e或E之前必须有数字,且e或E后面的指数必颈为整数。
选项B)中字母e后而是浮点数,错误,其他选项都是正确的常量。
9.可在C程序中用作用户标识符的一组标识符是(分数:2.00)A.and _2007 √B.Date y-m-dC.Hi Dr.TomD.case Bigl解析:解析:本题考查用户标识符,C语言中,用户标识符只能由字母、下划线和数组组成,且必须以字母或者下划线开始。
选项A)正确:选项B)中使用了字符“-”:选项C)使用了字符“.”:选项D)中的case是C语言关键字,不能作为用户标识符。
10.以下C语言用户标识符中,不合法的是(分数:2.00)A._1B.AaBcC.a_bD.a--b √解析:解析:本题考查用户标识符,C语言中,用户标识符只能由字母、下划线和数组组成,且必须以字母或者下划线开始。
选项A)、B)和C)都是正确的,选项D)中的case是C语言关键字,不能作为用户标识符,是错误的。
11.以下选项中不能用作C程序合法常量的是(分数:2.00)A.1.234 √B.'\123'C.123D.\x7G解析:解析:本题考查C语言中的常量。
选项A)错误,多了逗号;选项B)是字符常量:选项C)是整型常量;选项D)是字符常量。
12.关于C语言中数的表示,以下叙述正确的是(分数:2.00)A.只要允许范围内整型数和实型数都能精确的表示B.只有整型数在允许范围内能精确无误的表示,实型数会有误差C.只有实型数在允许范围内能精确无误的表示,整型数会有误差√D.只有用八进制表示的数才不会有误差解析:解析:本题考查C语言基本数据类型,整型数是有范围的,只在允许的范围内才能精确无误的表示,实型数由于存储长度限制存在误差。
13.设变量均已正确定义并赋值,以下与其他三组输出结果不同的一组语句是(分数:2.00)A.x++;printf("%d\n",x);B.++x;printf("%d\n",x);C.n=x++;printf("%d\n",n);√D.n=++x;printf("%d\n",n);解析:解析:小题:考查自增运算符。
++在前表示先自增然后使用,++在后而表示先使用然后自增。
选项A)中首先执行x++,执行完后x白增1,然后printf输出的是x自增后的值;选项B)首先执行++x,x的值增加1,接着输出x的值;选项c)中++在x的后面,因此n的值是x自增前的值,printf输出的是x自增前的值;选项D)中++在x的前而,因此x首先自增,然后再赋值给n,n的值是x自增后的值,输出的也是x自增后的值。
14.以下选项中表示一个合法的常量是(说明:符号口表示空格)(分数:2.00)A.123E0.2B.2.D.0Xab √解析:解析:本题考查C语言中的常量。
选项A)字母E后面必须是整型数,浮点数错误;选项B)字母e后而没有整型数;选项C)以0开始表示8进制数,8进制数没有9;选项D)是一个正确的16进制常数。
15.以下选项中不合法的标识符是(分数:2.00)A.FORB.&a √C.printD._00解析:解析:合法的标识符要满足组成字符为a~z以及A~Z,数字字符0到9和下划线,其中数字不开头,不能是关键字。
选项B)中,&不属于组成字符,是错误的。
16.以下选项中,能用作数据常量的是(分数:2.00)A.115L √B.0118C.1.5e1.5D.o115解析:解析:本题考查常量定义。
数据常量可有10进制、8进制、16进制、指数法等,8进制数字为0—7,第一个字符为0,而不是o。
指数法表示时,指数部分须为整型,选项A)中数字后加入L是说明此变量为长整型,是正确的常量表示形式。
17.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是(分数:2.00)A.连接符√B.大写字母C.数字字符D.下划线解析:解析:在C语言中,合法标识符的命令规则是:标识符可以由字母、数字或下划线组成,并且第一个字符必须为字母或卜划线。
在C语言的标识符中,大写字母和小写字母被认为是两个不同的字符。
选项A)是连字符,不在c语言规定的命名变量标识符的范围内。
18.以下选项中,能用作用户标识符的是(分数:2.00)A._0_ √B.8_8C.voidD.unsigned解析:解析:在C语言中,用户的标识符只能由字母或下划线开始。
一般强调文见其义的命名方法。
但是c语言中的保留字不能用作用户的标识符。
而选项C)和D)全部为保留字,选项B)中以数字开头,这些都不正确。
19.下列定义变量的语句中错误的是(分数:2.00)A.float US$;√B.double int_;C.char For;D.int_int;解析:解析:C语言规定,变量的标识符只能由字母、数字或下划线3种字符组成,且首字符必须为字母或下划线。
在C语言中大写字母和小写字母被认为是两个不同的字符。
选项B)定义的变量标识符int和选项D)定义的变量标识符int与C浯占的关键字int是不同的,是正确的变量标识。
选项C)定义的变量标识符For与C语言中的关键字for是两个不同的标识符,而存选项A)包含有特殊字符$,因而其不符合C语言的变量命名规定。
20.以下选项中关于C语言常量的叙述错误的是(分数:2.00)A.常量分为整型常量、实型常量、字符常量和字符串常量B.经常被使用的变量可以定义成常量√C.常量可分为数值型常量和非数值型常量D.所谓常量,是指在程序运行过程中,其值不能被改变的量解析:解析:常量指在程序运行过程中,其值不能被改变的量。
常量分为整型常晕(即整常数)、实型常量、字符型常量和字符串常量。
常量也可以拔数据类型分为为数据常量和非数据常量。
变量是指在程序运行过程中,其值能被改变的量。
21.以下选项中,不合法的C语言用户标识符是(分数:2.00)A.AaBcB.a-b √C.a_bD._1解析:解析:在C语言中的用户标识符只能由字母,数字和下划母组成,并且第一个字符必须是字母或下划线,在选项A)中出现了非法的字符--。
22.以下关于C语言数据类型使用的叙述中错误的是(分数:2.00)A.若要保存带有多位小数的数据,可使用双精度类型B.若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型C.若只处理“真”和“假”两种逻辑值,应使用逻辑类型√D.整数类型表示的自然数是准确无误差的解析:解析:存C语言中没有定义逻辑类型,而是用0代表假,用非零代表真。
23.以下选项中不能用作C程序合法常量的是(分数:2.00)A.'\123'B.1,234 √C.123D.\x7D解析:解析:选项B)中的1,234在两侧加双引号才是C程序的合法字符串常量。
24.阅读以下程序#include<stdio.h>main(){int case;float printf;printf("请输入2个数:");scanf("%d%f",&case,&printF);printf("%d%f\n",case,printF);}该程序在编译时产生错误,其出错原因是(分数:2.00)A.定义语句出错,printF不能用作用户自定义标识符B.定义语句出错,case是关键字,不能用作用户自定义标识符√C.定义语句无错,scanf不能作为输入函数使用D.定义语句无错,printf不能输出case的值解析:解析:case是C语言中的一个关键字,不能用作用户标识符来使用,所以这段程序代码在编译时就会出错。