计算机二级c语言1-3章先择题(带答案)
C语言全国计算机二级等级考试教程第一二章(章节带习题)

2.2 标识符、常量和变量
2.2.3 符号常量
在C语言中,可以用一个符号名来代表一个常量,称为符号常
量。但是这个符号名必须在程序中用(#define)进行特别的“
指定"。 例2.2 计算圆面积和周长,此程序中将如何教大家使用符号常量。
#include “stdio.h” /*包含头文件*/
#define PI 3.14159 /*定义符号常量,符号常量名为PI,用PI来代表3.14159*/
main()
/*主函数,程序的入口*/
{double r,s,l;
/*声明部分,定义了3实型个变量*/
r
r=5.0;
/*给变量r赋值*/
函 s=PI*r*r;
数 体
l=2*PI*r;
/*计算圆的面积*/ /*计算圆的周长*/
s
printf(“s=%f,l=%f\n”,s,l/)*;分别圆的面积和周长*/
/*给变量b赋值*/
数 体
area=a*b;
/*将a*b的结果赋值给变量area*/
printf(“a=%f,b=%f,area=%f\n”,a,b,area/)*;分别输出矩形的两条边长和面积*/
1.2
}
3.6
a=1.200000,b=3.600000,area=4.320000
4.32
注意:
1. C程序由函数组成,一个程序必须有一个且只能有一个主函数(main),C程
a
b
1.5000002.500000 2.5000003.500000
a b
内存空间
2.在程序中,声明变量就是在计算机内存中申请了某个内存单元。对变量 进行赋值,实质上就是把数据存入该变量所代表的存储单元中。
全国计算机等级考试二级C语言公共基础知识(附例题)

第1章数据结构与算法经过对部分考生的调查以及对近年真题的总结分析,笔试部分经常考查的是算法复杂度、数据结构的概念、栈、二叉树的遍历、二分法查找,读者应对此部分进行重点学习。
详细重点学习知识点:1.算法的概念、算法时间复杂度及空间复杂度的概念2.数据结构的定义、数据逻辑结构及物理结构的定义3.栈的定义及其运算、线性链表的存储方式4.树与二叉树的概念、二叉树的基本性质、完全二叉树的概念、二叉树的遍历5.二分查找法6.冒泡排序法1。
1算法考点1 算法的基本概念考试链接:考点1在笔试考试中考核的几率为30%,主要是以填空题的形式出现,分值为2分,此考点为识记内容,读者还应该了解算法中对数据的基本运算。
计算机解题的过程实际上是在实施某种算法,这种算法称为计算机算法。
1.算法的基本特征:可行性、确定性、有穷性、拥有足够的情报。
2.算法的基本要素:(1)算法中对数据的运算和操作一个算法由两种基本要素组成:一是对数据对象的运算和操作;二是算法的控制结构.在一般的计算机系统中,基本的运算和操作有以下4类:算术运算、逻辑运算、关系运算和数据传输。
(2)算法的控制结构:算法中各操作之间的执行顺序称为算法的控制结构。
描述算法的工具通常有传统流程图、N—S结构化流程图、算法描述语言等.一个算法一般都可以用顺序、选择、循环3种基本控制结构组合而成.考点2 算法复杂度考试链接:考点2在笔试考试中,是一个经常考查的内容,在笔试考试中出现的几率为70%,主要是以选择的形式出现,分值为2分,此考点为重点识记内容,读者还应该识记算法时间复杂度及空间复杂度的概念.1。
算法的时间复杂度算法的时间复杂度是指执行算法所需要的计算工作量。
同一个算法用不同的语言实现,或者用不同的编译程序进行编译,或者在不同的计算机上运行,效率均不同。
这表明使用绝对的时间单位衡量算法的效率是不合适的.撇开这些与计算机硬件、软件有关的因素,可以认为一个特定算法"运行工作量”的大小,只依赖于问题的规模(通常用整数n表示),它是问题规模的函数。
全国计算机二级《C语言》临考测试题「带答案」

全国计算机二级《C语言》临考测试题「带答案」全国计算机二级《C语言》临考测试题「带答案」一、选择题1). 函数的值通过return语句返回,下面关于return语句的形式描述错误的是A.return表达式;B.return(表达式);C.一个return语句可以返回多个函数值D.一个return语句只能返回一个函数值正确答案:C2). 不能进行++和--运算的数据类型为A.指针B.整型C.长整型D.常量正确答案:D3). 下列不属于软件调试技术的是A.强行排错法B.集成测试法C.回溯法D.原因排除法正确答案:B4). 已知int x=6,y=2,z;则执行表达式z=x=x>y后,变量z的值为A.0B.1C.4D.5正确答案:B5). 请选出以下语句的输出结果printf("%d\n",strlen("\t\"\065\xff\n"));A.5B.14C.8D.输出项不合法,无正常输出正确答案:A二、程序填空题围绕山顶一圈有N个山洞,编号为0、1…2 3……、N一1,有一只狐狸和一只兔子在洞中居住。
狐狸总想找到兔子并吃掉它,它的寻找方法是先到第一个洞(即编号为0的洞)中找;再隔1个洞.即到编号为2的个洞中找;再隔2个洞,即到编号为5的洞中找;下次再隔3个洞;即到编号为9的洞中找...…·。
若狐狸找一圈,请为兔子指出所有不安全的洞号。
程序中用a数组元素模拟一个洞,数组元素的下标即为洞号,数组元素中的值为0时,表示该洞安全,为l时表示该洞不安全。
若形参n的值为30时,不安全的洞号是0…2 5 9、14、20、27。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANKl.C中。
不得增行或删行,也不得更改程序的结构!试题程序:三、程序修改题给定程序MODl1.C中规定输入的字符串全部为字母,fun函数的功能是:统计a所指字符串中每个字母在字符串中出现的次数(统计时不区分大小写),并将出现次数最高的字母输出(如果有多个相同,输出一个即可)。
计算机二级C语言测试题(含答案)

A. 2 B. 3 C. 4 D. 5
答案:
1. A
2. F
3. C
4. C
5. A
6. B
7. B
C语言测试题(第三章)
1.以下程序的输出结果是________。
main()
{
int k=8765;
printf("*%-06d*\n",k);
}
A.输出格式描述符不合法 B.*008765*
C.*8765 * D.*-08765*
【答案】 C.
2.有程序段如下:
int i;
float f;
scanf("i=%d,f=%f",&i,&f);
若要求把数值100和765.12分别赋给变量i和f,则正确的输入格式为________。
A.100765.12 B.i=100,f=765.12
z=x/y;
}
else
break;
}
printf("%5.2f\n",y);
}
运行该程序,按如下形式从键盘输入数据,程序的数出结果是________。
键盘输入数据:3.6,2.4
A. 1.50 B. 1.60 C. 2.0 D. 2.40
答案:
1. C 2. C 3. C 4. A 5. B
C语言测试题(第六章)
答案:
1. B
2. D
3. k=p
4.①str[i]!= '\0'或简写成str[i]
②str[i]>= 'a'&& str[i]<= 'z'
计算机二级c语言考试试题及答案

计算机二级c语言考试试题及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于声明一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是合法的C语言变量名?A. 2variableB. variable-nameC. variable_nameD. variable$name答案:C3. 在C语言中,哪个函数用于计算并返回字符串的长度?A. strlenB. strcpyC. strcatD. strcmp答案:A4. 若有定义:int a = 5;,则执行以下语句后变量a的值是多少?```ca += (a / 2) + 1;```A. 8C. 6D. 5答案:B5. 在C语言中,以下哪个选项是正确的文件打开模式?A. "r+"B. "w+"C. "a+"D. "b+"答案:B6. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. +=D. !=答案:A7. 在C语言中,以下哪个关键字用于声明一个函数?A. functionB. defC. voidD. return答案:C8. 若有定义:char ch = 'A';,则执行以下语句后变量ch的ASCII 值是多少?```cch = ch - 'a' + 'A';```B. 97C. 66D. 98答案:A9. 在C语言中,哪个函数用于将字符串复制到另一个字符串?A. strcpyB. strncpyC. strcatD. strcmp答案:A10. 下列哪个选项是C语言中的正确注释方式?A. /* This is a comment */B. // This is a commentC. /* This is a comment */D. # This is a comment答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________关键字可以定义一个数组。
全国计算机等级考试二级C语言程序设计真题精选3(含答案)

全国计算机等级考试二级C语言程序设计真题精选3一、单项选择题1.下列关于C语言文件的叙述中正确的是()。
A.文件由一系列数据依次排列组成,只能构成二进制文件B.文件由结构序列组成,可以构成二进制文件或文本文件C.文件由数据序列组成,可以构成二进制文件或文本文件√D.文件由字符序列组成,其类型只能是文本文件解析:C语言将文件看作是一个字符(字节)的序列,即由一个一个字符(字节)数据顺序组成。
根据数据的组成形式,可将文件分为两种:①ASCII文件,又称文本(text)文件,它的每一个字节可放一个ASCII码,代表一个字符;②二进制文件,是把内存中的数据按其在内存中的存储形式原样输出到磁盘上存放。
所以C文件就是一个字节流或一个二进制流。
2.有以下程序:#includ<stdio.h>main()inm=1,n=2,*p=&m,*q=&n,*r; r=p,p=q;q=r; printf("%d,%d,%d,%",m,n,*p,*q);}程序运行后的输出结果是()。
A.1,2,1,2B.1,2.2,1 √C.2,1,2,1D.2,1.1,2解析:本题定义了两个整型变量,然后用两个指针分别指向这两个整型变量,接着对指针进行交换,那么原来指向第一个整数的指针将指向第二个整数,原来指向第二个整数的指针将指向第一个整数。
3.有以下程序:#includ<stdio.h>#include<string.h>strucAina;chab[10];doublc;};strucf (struct);main()struca={1001,"ZhangDa",1098.0}; a=f(a);printf ("%d,%s,%6.1",a.a,a.b,a.c);}strucf(struct)t.a=1002;strcpy(t.b,"ChangRong");t.c=1202.0;returt;}程序运行后的输出结果是()。
校园网.新视野教育全国计算机等级考试二级C语言笔试习题集答案及解析

第一章C语言基础知识一,选择题1 答案是AA正确B {}可以作为复合语句的标志C main 函数不是用户命名的D 分号是语句结束的标志,肯定是语句的一部分做这个题目需要对书上的概念透彻的理解2 答案是AA 错误用户标识符:命名时,标识符的选择由用户自定,但是不能与关键字相同,所以A选项错误。
这个题目考察用户标识符3 答案是B用户标识符是标识符,所以可以是有下划线,但是中划线不属于字母,数字,下划线其中一种。
这个题目考察用户标识符的概念。
4 答案是Bdefine 是预定义标识符,而预定义标识符可以是用户标识符,所以define可以是用户标识,if 是关键字,而关键字不能是用户标识符,所以if不可以是用户标识符5 答案是Dlong 是关键字,参照附录二注:6--13 考察用户标识符概念6 答案是DD答案以数字2开头了,不符合标识符定义7 答案是CC答案以数字开头了8 答案是Dint 是关键字9 答案是B答案A 是关键字,答案C是以数字开头了,不符合概念,答案D出现了小数点10 答案是A答案A出现了小数点11 答案是C答案C 以数字开头了12 答案是AB答案中float 是关键字,C答案中3c以数字3开头了,D答案中-5d 中- 不属于字母,数字,下划线中一种13 答案是AB答案中-max中-错误,C答案中3COM以字母3开头了,D答案中int 是关键字,不是用户标识符14 答案是BA答案中15. 后面不应该有点,C答案中出现了逗号,D中字母B有问题15 答案是DVisual C++6.0中int类型的变量占的字节数为4。
16 答案是BB中出现了8,而八进制只能有0到7组成17 答案是D答案D中开头是0不是o18 答案是C答案A中E后面是整数,0.5是小数答案B 中E后面不能为空答案D中E前面不能为空本题目考察指数的表示形式19 答案是C答案A中2.0有问题,不能为小数形式答案B中E前面不能为空答案D中E后面不能为空本题目考察指数的表示形式20 答案是AB中八进制中不能出现数字8,C中e后面不能是小数,D中e后面不能为空21 答案是BB中0.4是小数,不正确22 答案是CC中0.5是小数,不正确23 答案是D3.6-5/2+1.2+5%2=3.6-2+1.2+1=3.8本题目考察算术运算符,需要注意整数除以整数结果只能是整数24 答案是D%不能用于实型的计算25 答案是DD答案中$不属于字母,数字,下划线26 答案是AA答案是逗号表达式,B答案中x+1=y是赋值表达式,左边只能是变量,而这里是x+1, 同理答案C中x+10也是错误的,在D答案中,考察的是强制类型转换,正确的是(double)x/1027 答案是A本题考察的是注释需要注意的地方,具体解答见课本第2页中间部分28 答案是B答案A中n2没有定义,答案C中在定义f之前不能使用它,答案D 中E后面必须是整数29 答案是C考察的是强制类型转换,正确的是k%(int)f30 答案是D本题目类似与第七课时的例一,解题方法是要抓住++m,--n,--m,表达式的值是变量变化之后的值,而n--表达式的值是变量n变化之前的值31 答案是B本题目考察的是负整数与无符号正整数在计算机中存放的格式的一样的,但表示的不同的两个数32 答案是CA答案中%运算对象不能为实型,26.8错误,B答案中考察的赋值运算符,赋值运算符左边必须是变量,所以赋值运算符左边1+2错误,同理答案D错误33 答案是C本题目考察的是课本第15页的关于自加与自减运算符的第一点说明,即增量运算符的运算对象只能是变量,而在C答案中++(i+1)中,i+1是表达式34 答案是B本题目考察的是整数除以整数结果是整数,在B答案中1/2结果是0,导致整个表达式的值是0,明显是错误的35 答案是D对于++、--单目运算符来说,其运算对象可以是char型、int型和float 型变量36 答案是A本题目主要考察n++表达式的值是n变化之前的值,然后使n的值增加137 答案是Bc=a/b+0.4 c=8/5+0.4 c=1+0.4 c=1.4 因为c 是int 型的,所以c的值是1 ,做此题目需要仔细阅读题目38 答案是D(int)a+b/b=(int)5.5+2.5/2.5=5+1.000000=b=6.000000同样a,b的类型是double型的39 答案是Dlong 和short不能相互修饰40 答案是C标识符中不能有$41答案是CA选项中,在变量赋值时不能赋给表达式,而y*5是表达式;选项B 中进行强制类型转换时,类型标识符要加上括号,所以错误;选项D 中,%(求余运算符)运算对象只能是整形数。
计算机二级证考试c语言试题及答案

计算机二级证考试c语言试题及答案一、单项选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. C语言中,用于定义一个变量为静态局部变量的关键字是?A. staticB. externC. registerD. auto答案:A3. 下列哪个选项不是C语言中合法的整数常量?A. 2023B. 0x1AC. 0123D. 2.0答案:D4. 在C语言中,哪个运算符用于计算两个整数的差值?A. %B. /C. -D. +答案:C5. 下列哪个选项不是C语言中的控制语句?A. ifB. forC. switchD. case答案:D6. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpyB. strcatC. strcmpD. strlen答案:A7. C语言中,以下哪个关键字用于定义一个函数?A. functionB. defC. voidD. int答案:D8. 在C语言中,以下哪个选项不是合法的数组声明?A. int arr[5];B. int arr[] = {1, 2, 3};C. int arr[5] = {1, 2, 3};D. int arr[] = {1, 2, 3, 4, 5, 6};答案:D9. C语言中,以下哪个函数用于计算数组中元素的个数?A. sizeofB. countC. lengthD. size答案:A10. 在C语言中,以下哪个关键字用于定义一个指针?A. pointerB. refC. ptrD. *答案:D二、填空题(每题2分,共20分)1. C语言中,用于定义一个字符型变量的关键字是________。
答案:char2. 在C语言中,用于定义一个浮点型变量的关键字是________。
答案:float3. C语言中,用于定义一个布尔型变量的关键字是________。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.第一章第二章
1.C语言的函数体由()括起来。
A)<> B){} C)[] D)()
2.下面叙述错误的是()
A)一个C源程序可由一个或多个函数组成
B)构成C语言源程序的基本单位是语句
C)C源程序中大、小写字母是有区别的
D)若一条语句较长,可分写在下一行或多行上
3.下面叙述正确的是()
A)每行最多只能写两条语句
B)main()函数必须位于源程序文件的开头C)所有语句都必须以分号;结束
D)程序中必须含有自定义函数
4.C源程序中main()函数的位置()。
A)必须位于程序的最前面
B)必须在自定义函数前面C)必须在系统库函数后面
D)可以在自定义函数后面
5.结构化程序设计不包括()。
A)最优化
B)自顶而下,逐步细化C)模块化设计
D)结构化编码
6.下面叙述中,()不是结构化程序设计中的三种基本结构之一。
A)数据结构B)选择结构C)循环结构D)顺序结构
2.第三章数据类型、运算符和表达式
1.(B )为非法的字符串常量
A)“056”B)‘123’C)““D)“case”
2.( B )为正确的用户标识符。
A)min-5 B)max_at C)3_row D)union
3.以下(D )是正确的变量名。
A) a.bee B) -p11 C) int D) p_11
4.以下(D )是正确的变量名。
A)5f B)if C) f.5 D)_f5
5.以下(D )是正确的常量。
A)E-5 B)1E5.1 C)'a12' D)32766L
6.以下(A )是不正确的字符串常量。
A)'abc' B)"12'12" C)"0" D)" "
7.以下(BC )是正确的字符常量。
A)"c" B)'\\' C)'W' D)"\32a"
8.char型变量存放的是(A)。
A)ASCII代码值
B)字符本身C)十进制代码值
D)内码值
9.( B)为合法的常量。
A)5,236 B) 1.23E+8 C)‘b_k’D) 3.21E-6.5
10.(D)为正确的字符常量
A)‘\084’B)‘bcd’C)‘165’D)‘@’
11.若有定义:int b=-15;则(D)为正确的赋值表达式。
A)*b=6 B)b=*5 C)b+10=-5 D)b+=b*3
12.若有定义:int x=2;则正确的赋值表达式是(A )。
A)a-=(a*3) B)double(-a) C)a*3 D)a*4=3
13.若有定义:float x=2,y;int a=3 ;语句y=1*(x+a)/3;运行后,y的值为(B)。
A)2.0 B)1.666667 C)1.0 D)0
14.若有定义:int a,b=5;语句a=(b/2)+b%2;运行后,a的值为(A )
A) 3 B) 4 C)0 D) 2
15.下面叙述正确的是(B)
A)2/3与2%3等价
B)5/(int)4.0与5/4等价C)++2与--3等价
D)++2与3等价
16.若有定义:int a,b=6;语句a=--b;运行后,a、b的值分别是(C)。
A) 6 6 B) 5 6 C) 5 5 D) 6 5
17.若有定义:int i=3,j=6;则表达式(--i)*(j++)的值为( D)。
A)10 B)18 C)15 D)12
18.语句x=(a=3,b=++a);运行后,x、a、b的值依次为(C )。
A)3,3,4 B)4,4,3 C)4,4,4 D)3,4,3
19.已知int a='R'; 则正确的表达式是(D )。
A)a=int(3e2)
B)2*a=a++ C)a=a+a=a+3
D)a%10
20.已知char a='R'; 则正确的赋值表达式是(A )。
A)a=(a++)%4 B)a+2=3 C)a+=256-- D)a='\078'
21.语句a=(3/4)+3%2;运行后,a的值为(B )。
A)0 B) 1 C) 2 D) 3
22.若有定义:int x,a;则语句x=(a=3,a+1);运行后,x、a的值依次为(C)。
A)3,3 B)4,4 C)4,3 D)3,4
23.设整型变量a为5,使b不为2的表达式是(C )。
A)b=(++a)/3 B)b=6-(--a) C)b=a%2 D)b=a/2
24.设单精度型变量f、g的值均为2.0,使f为4.0的表达式是(A )。
A)f+=g B)f-=g+2 C)f*=g-6 D)f/=g*10
25.若有定义:int k,i=2,j=4;则表达式k=(++i)*(j--)的值是(B )。
A)8 B)12 C) 6 D)9
26.若有定义:int a=3;语句a+=a-=a*a;运行后,a的值为(C)
A)-6 B)0 C)-12 D)-3
27.若有定义:float x=3.5,y=5.5;则表达式(B)的值为2.
A)(int)x+y%7
B)(int)(x+y)%7 C)int(x+y)%7
D)(x+y)%7
28.若有定义:int b=-15; 则(D)为正确的赋值表达式。
A)b=*5 B)*b=6 C)b+10=-5 D)b+=b*3
29.下面叙述正确的是(B )。
A)2/3 与 2.0/3.0 等价
B) (int)2.0/3 与 2/3 等价C)++5 与 6 等价
D)'A'与"A"等价
30.若有定义int x=1,y=2,n=3;则(A)为正确的表达式。
A)x=y*3,y=(x+n)/y
B)(x+y)(y+n) C)float(y/n)
D)x=ny
31.若有定义:int x,y,z;语句x=(y=z=3,++y,z+=y);运行后,x的值为(A)
A)7 B) 3 C)8 D) 6
32.若有定义:float x=3.5;int z=8;则表达式x+z%3/4的值为(B)。
A) 3.75 B) 3.5 C) 3 D) 4
33.若有定义:float x=3.5,y=3.6,则表达式(A)的值为6。
A)(int)x+(int)y
B)(int)(x+y) C)int(x+y)
D)x+y
34.下面叙述正确的是(C)。
A)(3+9)++是正确的表达式
B)“abc”+”xxx”是正确表达式
C)c语言中整型与字符型变量的混合运算表达式的结果是整型
D)模运算符%两边运算数的数据类型是任意的
35.若有定义:int x;char c=’A’;则正确的赋值表达式是(B).说明‘A’的ASCII码的十进制值为65,‘a’
的ASCII码的十进制值为97
A)x=c+’ABC’
B)x=c+32 C)x=c+’CBA’
D)x=’ABC’
36.若有定义:char c1=’A’,c2=’B’;语句printf(“%d+%d=%d”,c1,c2,c1+c2); 运行后的结果为(C)。
说明:
‘A’的ASCII码的十进制值为65
A)65+65=AB B)A+B=131 C)65+66=131 D)A+B=AB
37.下面叙述错误的是(A)。
A)算术运算符中只有“*”、“/”优先级高于关系运算符
B)模运算符“%”是C语言基本的算术运算符
C)算术运算符中不包含“=”运算符
D)自加和自减运算符只能用于变量,而不能用于常量或表达式
38.下面叙述正确的是(A )。
A)强制类型转换运算的优先级高于算术运算
B)若a和b是整型变量,(a+b)++是合法的
C)'A'*'B' 是不合法的
D)"A"+"B"是合法的
39.下面关于算术运算符的叙述,错误的是(D )。
A)%(模运算符)的运算对象只能为整型量
B)算术运算符的结合方向是"自左至右"
C)自加和自减运算符的结合方向是"自右至左" 其运算对象不包
可编辑word,供参考版!。