计算机二级C语言测试题(含答案)

合集下载

c语言二级考试试题及答案

c语言二级考试试题及答案

c语言二级考试试题及答案C语言二级考试试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言中数组的描述,正确的是:A. 数组名是一个变量名B. 数组名是一个常量C. 数组名是一个指针D. 数组名是一个函数答案:B2. 以下哪个是C语言中的合法变量名?A. 2variableB. variable-nameC. variable_nameD. variable name答案:C3. 在C语言中,以下哪个是正确的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello World" + "Hello World"D. "Hello\nWorld"答案:D4. C语言中,以下哪个不是标准输入输出库函数?A. printf()B. scanf()C. getchar()D. puts()答案:C5. 下列哪个是C语言中的条件语句?A. ifB. switchC. forD. while答案:A6. C语言中,以下哪个是正确的函数定义?A. int function_name(int x, int y) { /* ... */ }B. int function_name(int x, int y);C. int function_name(int x, y) { /* ... */ }D. int function_name(int x; int y) { /* ... */ }答案:A7. 在C语言中,以下哪个是正确的递归函数调用?A. function_name(x)B. function_name(x, y)C. function_name(function_name(x))D. function_name(&x)答案:C8. 在C语言中,以下哪个是正确的结构体定义?A. struct person { int age; char name[50]; };B. struct person { int age; char name[50] }C. struct person { int age; char name[50]; }D. struct person { int age; char name[50] } person;答案:A9. 在C语言中,以下哪个是正确的指针声明?A. int *ptr;B. int ptr*;C. *int ptr;D. int * ptr;答案:A10. 下列哪个是C语言中的位运算符?A. &&B. ||C. &D. ++答案:C二、填空题(每题2分,共10分)1. C语言中,使用________运算符可以实现两个整数的按位与操作。

计算机二级c语言试题及答案解析

计算机二级c语言试题及答案解析

计算机二级c语言试题及答案解析一、选择题1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A解析:关键字`struct`用于定义一个结构体,它允许将多个不同类型的数据项组合成一个单一的数据结构。

2. 下列哪个选项不是C语言中的运算符?A. %B. &&C. ::D. ||答案:C解析:`%`是取模运算符,`&&`是逻辑与运算符,`||`是逻辑或运算符,而`::`不是C语言中的运算符。

二、填空题1. 在C语言中,`________`关键字用于声明一个函数。

答案:int解析:在C语言中,`int`是用于声明一个函数的返回类型,表示该函数返回一个整数值。

2. 以下代码片段中,`________`用于定义一个名为`data`的数组,包含10个整数。

```cint data[10];```答案:int data[10];解析:`int data[10];`定义了一个名为`data`的数组,它包含10个整数。

三、编程题1. 编写一个C语言函数,计算并返回两个整数的和。

```cint add(int a, int b) {return a + b;}```答案:```cint add(int a, int b) {return a + b;}```解析:该函数接受两个整数参数`a`和`b`,计算它们的和,并返回结果。

2. 编写一个C语言程序,实现将一个字符串反转。

```c#include <stdio.h>#include <string.h>void reverse(char *str) {int len = strlen(str);for (int i = 0; i < len / 2; i++) { char temp = str[i];str[i] = str[len - i - 1];str[len - i - 1] = temp;}}int main() {char str[] = "Hello, World!";reverse(str);printf("Reversed string: %s\n", str); return 0;}```答案:```c#include <stdio.h>#include <string.h>void reverse(char *str) {int len = strlen(str);for (int i = 0; i < len / 2; i++) { char temp = str[i];str[i] = str[len - i - 1];str[len - i - 1] = temp;}}int main() {char str[] = "Hello, World!";reverse(str);printf("Reversed string: %s\n", str);return 0;}```解析:该程序定义了一个`reverse`函数,它接受一个字符串作为参数,并通过交换字符的方式将字符串反转。

全国计算机二级考试《C语言》真题练习及答案

全国计算机二级考试《C语言》真题练习及答案

全国计算机二级考试《C语言》真题练习及答案全国计算机二级考试《C语言》真题练习及答案一、选择题(1)下列关于栈叙述正确的是A)栈顶元素最先能被删除B)栈顶元素最后才能被删除C)栈底元素永远不能被删除D)以上三种说法都不对(2)下列叙述中正确的是A)有一个以上根结点的数据结构不一定是非线性结构B)只有一个根结点的数据结构不一定是线性结构C)循环链表是非线性结构D)双向链表是非线性结构(3)某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)A)3B)4C)6D)7(4)在软件开发中,需求分析阶段产生的主要文档是A)软件集成测试计划B)软件详细设计说明书C)用户手册D)软件需求规格说明书(5)结构化程序所要求的基本结构不包括A)顺序结构B)GOTO跳转C)选择(分支)结构D)重复(循环)结构(6)下面描述中错误的是A)系统总体结构图支持软件系统的详细设计B)软件设计是将软件需求转换为软件表示的过程C)数据结构与数据库设计是软件设计的任务之一D)PAD图是软件详细设计的表示工具(7)负责数据库中查询操作的数据库语言是A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言(8)一个教师可讲授多门课程,一门课程可由多个教师讲授。

则实体教师和课程间的联系是A)1:1联系B)1:m联系C)m:1联系D)m:n联系(9)有三个关系R、S和T如下:则由关系R和S得到关系T的操作是A)自然连接B)交C)除D)并(10)定义无符号整数类为UInt,下面可以作为类UInt实例化值的是A)-369B)369C)0.369D)整数集合{1,2,3,4,5}(11)计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是A)C语言程序仅可以编译执行B)C语言程序仅可以解释执行C)C语言程序既可以编译执行又可以解释执行D)以上说法都不对(12)以下叙述中错误的是A)C语言的可执行程序是由一系列机器指令构成的B)用C语言编写的源程序不能直接在计算机上运行C)通过编译得到的二进制目标程序需要连接才可以运行D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe文件(13)以下选项中不能用作C程序合法常量的是A)1,234B)'\123'C)123D)"\x7G"(14)以下选项中可用作C程序合法实数的是A).1e0B)3.0e0.2C)E9D)9.12E(15)若有定义语句: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);(16)有以下程序段char name[20];int num;scanf("name=%snum=%d",name;&num);当执行上述程序段,并从键盘输入:name=Lili num=1001<回车>后,name的值为A)LiliB)name=LiliC)Lilinum=D)name=Lili num=1001(17)if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是A)必须是逻辑值B)必须是整数值C)必须是正数D)可以是任意合法的数值(18)有以下程序#includemain(){ int x=011;printf("%d\n",++x);}程序运行后的输出结果是A)12B)11C)10D)9(19)有以下程序#includemain(){ int s;scanf("%d",&s);while(s>0){ switch(s){ case 1:printf("%d",s+5);case 2:printf("%d",s+4);break;case 3:printf("%d",s+3);default:printf("%d",s+1);break;}scanf("%d",&s);}}运行时,若输入1 2 34 5 0<回车>,则输出结果是A)6566456B)66656C)66666D)6666656(20)有以下程序段int i,n;for(i=0;i<8;i++){n=rand()%5;switch (n){ case 1:case 3:printf("%d\n",n); break;case 2:case 4:printf("%d\n",n);continue;case 0:exit(0);}printf("%d\n",n);}以下关于程序段执行情况的叙述,正确的是A)for循环语句固定执行8次B)当产生的随机数n为4时结束循环操作C)当产生的随机数n为1和2时不做任何操作D)当产生的随机数n为0时结束程序运行。

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

全国计算机等级考试二级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语言试题及答案

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

一、选择题在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)程序流程图中带有箭头的线段表示的是 CA)图元关系 B)数据流 C)控制流 D)调用关系(2)下面不属于软件设计原则的是 CA)抽象 B)模块化 C)自底向上 D)信息隐蔽(3)下列选项中,不属于模块间耦合的是 CA)数据耦合 B)标记耦合 C)异构耦合 D)公共耦合(4)下列叙述中,不属于软件需求规格说明书的作用的是 DA)便于用户、开发人员进行理解和交流 B)反映出用户问题的结构,可以作为软件开发工作的基础和依据C)作为确认测试和验收的依据 D)便于开发人员进行需求分析(5)算法的时间复杂度是指CA)执行算法程序所需要的时间 B)算法程序的长度 C)算法执行过程中所需要的基本运算次数D)算法程序中的指令条数(6)已知数据表A中每个元素距其最终位置不远,为节省时间,应采用的算法是BA)堆排序 B)直接插入排序 C)快速排序 D)B)和C)(7)栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是BA)ABCED B)DCBEA C)DBCEA D)CDABE(8)数据库设计包括两个方面的设计内容,它们是AA)概念设计和逻辑设计 B)模式设计和内模式设计 C)内模式设计和物理设计D)结构特性设计和行为特性设计(9)关系表中的每一横行称为一个AA)元组 B)字段 C)属性 D)码(10)设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字 (键或码)为 CA)课号,成绩 B)学号,成绩 C)学号,课号 D)学号,姓名,成绩(11)以下不正确的叙述是 DA)在C程序中,逗号运算符的优先级最低 B)在C程序中,APH和aph是两个不同的变量C)若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值(12)请选出可用作C语言用户标识符的是BA)void,define,WORD B)a3_b3,_123,IF C)FOR,--abc,CaseD)2a,Do,Sizeof(13)以下选项中,不能作为合法常量的是BA)1.234e04 B)1.234e0.4 C)1.234e+4 D)1.234e0(14)在C语言中,运算对象必须是整型数的运算符是AA)% B)\ C)%和\ D)**(15)若变量均已正确定义并赋值,以下合法的C语言赋值语句是AA)x=y==5; B)x=n%2.5; C)x+n=i; D)x=5=4+1;(16)有以下程序段char ch; int k;ch=′a′; k=12;printf("%c,%d,",ch,ch,k); printf("k=%d \n",k);已知字符a的ASCII码值为97,则执行上述程序段后输出结果是 DA)因变量类型与格式描述符的类型不匹配输出无定值 B)输出项与格式描述符个数不符,输出为零值或不定值C)a,97,12k=12 D)a,97,k=12(17)已知字母A的ASCII代码值为65,若变量kk为char型,以下不能正确判断出kk中的值为大写字母的表达式是 BA)kk>=′A′&&kk<=′Z′ B)!(kk>=′A′||kk<=′Z′) C)(kk+32)>=′a′&&(kk+32)<=′Z′ D)isalpha(kk)&&(kk<91)(18)当变量c的值不为2、4、6时,值也为"真"的表达式是 BA)(c==2)||(c==4)||(c==6) B)(c>=2&& c<=6)||(c!=3)||(c!=5) C)(c>=2&&c<=6)&&!(c%2) D)(c>=2&& c<=6)&&(c%2!=1)(19)若有条件表达式 (exp)?a++:b--,则以下表达式中能完全等价于表达式(exp)的是 B A)(exp==0) B)(exp!=0) C)(exp==1) D)(exp!=1)(20)以下不正确的定义语句是 BA)double x[5]={2.0,4.0,6.0,8.0,10.0}; B)int y[5]={0,1,3,5,7,9}; C)char c1[]={′1′,′2′,′3′,′4′,′5′}; D)char c2[]={′\x10′, ′xa′, ′\x8′};(21)下列程序执行后的输出结果是 Bmain(){ int a[3][3], *p,i;p=&a[0][0];for(i=1; i<9; i++)p[i]=i+1;printf("%d\n",a[1][2];)A)3 B)6 C)9 D)随机数(22)设有以下程序段 Bint x=0,s=0;while(!x!=0)s+=++x;printf("%d",s);则A)运行程序段后输出0 B)运行程序段后输出1 C)程序段中的控制表达式是非法的 D)程序段执行无限次(23)下面程序段的运行结果是 Cchar *s="abcde";s+=2;printf("%d",s);A)cde B)字符′c′ C)字符′c′的地址 D)无确定的输出结果(24)阅读下列程序,则执行后的结果为 A#include "stdio.h"main(){ int c[][4]={1,2,3,4,5,6,7,34,213,56,62,3,23,12,34,56};printf("%x,%x\n",c[2][2],*(*(c+1)+1));}A)3e,6 B)62,5 C)56,5 D)3E,6(25)下面判断正确的是 CA)char *a="china";等价于 char *a;*a="china"; B)char str[5]={"china"};等价于char str[]={"china"};C)char *s="china";等价于 char *s;s="china"; D)char c[4]="abc",d[4]="abc";等价于char c[4]=d[4]="abc";精品文档。

计算机二级考试c语言试题及答案

计算机二级考试c语言试题及答案

计算机二级考试c语言试题及答案一、选择题(每题2分,共20分)1. C语言中,下面哪个选项是合法的标识符?A. 2abcB. abc123C. _abcD. abc$答案:C2. 在C语言中,下面哪个运算符具有左结合性?A. 赋值运算符B. 逻辑运算符C. 位运算符D. 关系运算符答案:A3. 下面哪个函数用于实现字符串的复制?A. strcpyB. strcatC. strlenD. strcmp答案:A4. 下面哪个选项是正确的整型常量的表示方法?A. 1234BB. 0x1234C. 1234DD. 01234答案:D5. 下面哪个选项是合法的实型常量的表示方法?A. 123.B. 123.C. 123.D. 123.答案:C6. 在C语言中,下面哪个函数用于实现字符串的连接?A. strcpyB. strcatC. strlenD. strcmp答案:B7. 下面哪个选项是正确的关于一维数组的描述?A. 数组名是一个指向数组首元素的指针B. 数组名是一个指向数组首元素的指针C. 数组名是一个指向数组首元素的指针D. 数组名是一个指向数组首元素的指针答案:A8. 下面哪个选项是正确的关于二维数组的描述?A. 二维数组可以看作是多个一维数组的组合B. 二维数组可以看作是多个一维数组的组合C. 二维数组可以看作是多个一维数组的组合D. 二维数组可以看作是多个一维数组的组合答案:A9. 在C语言中,下面哪个函数用于实现字符串的比较?A. strcpyB. strcatC. strlenD. strcmp答案:D10. 下面哪个选项是合法的C语言语句?A. if(条件) {B. while(条件)C. do {D. }答案:D二、填空题(每题2分,共20分)1. 在C语言中,一个整型变量占用的存储空间为_____个字节。

答案:42. C语言中,定义一个整型变量的一般形式为_____。

答案:int 变量名;3. C语言中,定义一个实型变量的一般形式为_____。

计算机二级证考试c语言试题及答案

计算机二级证考试c语言试题及答案

计算机二级证考试c语言试题及答案一、选择题1. 下列关于C语言的说法中,正确的是:A. C语言是面向对象编程语言B. C语言是一种解释性语言C. C语言是一种编译性语言D. C语言主要用于网页开发2. C语言中的数组下标是从几开始计数的?A. 0B. 1C. -1D. 由用户指定3. 下列代码中,输出的结果是什么?```cint a = 10;int b = 5;printf("%d", a % b);```B. 5C. 2D. 04. 下列关于函数的说法中,正确的是:A. 函数只能在主函数中调用B. 函数可以在任何地方调用C. 函数只能接收一个参数D. 函数不能返回值5. 下列代码中,循环体会执行几次? ```cint i;for(i = 0; i < 5; i++) {printf("%d ", i);}```A. 0次B. 4次D. 6次二、填空题1. C语言中,用于定义常量的关键字是 __________。

2. 下列代码中,空格处应该填入什么值才能使程序输出结果为20?```cint a = 10;int b = __________;printf("%d", a * b);```3. 下列代码中,空格处应该填入什么运算符才能使程序输出结果为1?```cint a = 5;int b = 4;printf("%d", a ________ b);```三、编程题1. 编写一个程序,要求用户输入一个整数n,然后输出1到n之间所有偶数的和。

2. 编写一个函数,实现计算两个整数之间的最大公约数(GCD)的功能,并在主函数中调用该函数。

3. 编写一个程序,定义一个字符串数组,其中有5个元素,每个元素是一个字符串。

然后使用循环输出该数组中所有的字符串内容。

四、综合题1. 下面是一个简化的学生成绩管理程序的代码,有一些错误,请帮助找出并修复错误。

全国计算机二级《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语言试题及答案一、选择题1. 在C语言中,以下哪个选项是正确的整型常量?A. 0x123B. 123.0C. 123e2D. 123.0L答案:A2. 以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A3. 在C语言中,以下哪个选项是正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!", 'Hello, World!'D. "Hello, World!'"答案:A4. 在C语言中,以下哪个选项是正确的函数定义?A. int add(int a, int b) { return a + b; }B. int add(int a; int b) { return a + b; }C. int add(int a, int b) { return a - b; }D. int add(a, b) { return a + b; }答案:A5. 在C语言中,以下哪个选项是正确的数组声明?A. int array[10];B. int array[];C. int array[10] = {0};D. int array = 10;答案:A二、填空题1. 在C语言中,用于输入的函数是___________。

答案:scanf2. 在C语言中,用于输出的函数是___________。

答案:printf3. 在C语言中,用于计算两个整数的差的运算符是___________。

答案:-4. 在C语言中,用于定义一个整型变量的关键字是___________。

答案:int5. 在C语言中,用于定义一个字符型变量的关键字是___________。

计算机等级考试二级c语言习题答案

计算机等级考试二级c语言习题答案

计算机等级考试二级c语言习题答案一、选择题1. 在C语言中,以下哪个选项是合法的标识符?A. 2variableB. variable2C. _variableD. variable-2答案:B、C2. 以下哪个选项是C语言中整型常量的正确表示?A. 0x1AB. 1.5e2C. 0755D. 1.23f答案:A、C3. 若有以下定义:```cint a = 10, b = 20, c = 30;```则表达式 `a > b ? a : c` 的值是多少?A. 10B. 20C. 30D. 编译错误答案:C4. 在C语言中,以下哪个选项是正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!"\n"D. "Hello, World!"\"答案:A5. 以下哪个选项是C语言中正确的函数声明?A. int myFunction();B. void myFunction(int a);C. int myFunction(int);D. int myFunction();答案:C二、填空题1. 在C语言中,`sizeof(char)` 的值是 ________。

答案:12. 若有以下代码:```cint a = 10;printf("%d", a++);```输出的结果是 ________。

答案:103. 在C语言中,以下代码段的输出结果是什么?```cint x = 5;printf("%d", x++);```输出的结果是 ________。

4. 在C语言中,以下代码段的输出结果是什么?```cint x = 5;printf("%d", ++x);```输出的结果是 ________。

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

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

全国计算机等级考试二级C语言笔试试题及答案解析试题一:选择题1. 下列关于C语言的说法,错误的是()A. C语言是一种高级语言B. C语言具有跨平台性C. C语言编译器可以直接生成机器码D. C语言是一种解释型语言答案:D解析:C语言是一种高级语言,具有跨平台性。

编译器将C语言源程序编译成目标代码,然后通过链接器生成可执行文件,这个过程生成的机器码可以被计算机直接执行,因此C语言不是解释型语言。

2. 以下哪个选项不是C语言的基本数据类型?()A. intB. charC. floatD. string答案:D解析:C语言的基本数据类型包括整型(int)、字符型(char)、浮点型(float)和双精度浮点型(double)。

string不是C语言的基本数据类型,而是由字符数组构成的一种自定义类型。

试题二:填空题1. 在C语言中,每个语句的结尾必须使用()符号。

答案:分号(;)解析:在C语言中,每个语句的结尾必须使用分号(;)作为结束符,表示一个语句的结束。

2. 以下程序的输出结果是()。

```c#include <stdio.h>int main() {int a = 5;int b = 3;printf("%d\n", a % b);return 0;}```答案:2解析:在C语言中,取模运算符(%)用于计算两个整数相除的余数。

在本题中,5除以3的余数为2,因此输出结果为2。

试题三:编程题1. 编写一个C程序,实现以下功能:从键盘输入10个整数,计算并输出这些整数的平均值。

```c#include <stdio.h>int main() {int i, num;float sum = 0.0, average;for (i = 0; i < 10; i++) {printf("请输入第%d个整数:", i + 1);scanf("%d", &num);sum += num;}average = sum / 10;printf("这10个整数的平均值为:%.2f\n", average);return 0;}```解析:本题考查了循环语句、输入输出函数等基本知识。

全国等级考试二级c试题答案

全国等级考试二级c试题答案

全国等级考试二级c试题答案一、选择题(每题2分,共40分)1. 下列哪个选项是C语言中定义一个整型变量的正确方式?A. int number;B. integer number;C. var number;D. number int;答案:A2. 在C语言中,哪个关键字用于声明一个函数?A. defineB. functionC. voidD. int答案:C3. 若有以下代码段:```cint a = 5, b = 10;a = b;```执行后,变量a的值是多少?A. 5B. 10C. 15D. 0答案:B4. C语言中,用于计算两个数的乘积的运算符是什么?A. +B. -C. *D. /答案:C5. 在C语言中,哪个函数用于输入一个字符?A. scanf()B. printf()C. getchar()D. getc()答案:C6. 若有以下代码段:```cint x = 3;printf("%d", x++);```执行后,输出的结果是多少?A. 2B. 3C. 4D. 5答案:B7. 在C语言中,哪个关键字用于声明一个指针?A. pointerB. ptrC. *D. ref答案:C8. 下列哪个选项是C语言中声明一个浮点型变量的正确方式?A. float number;B. floating number;C. real number;D. decimal number;答案:A9. C语言中,用于计算两个数的和的运算符是什么?A. +B. -C. *D. /答案:A10. 若有以下代码段:```cint a = 5, b = 10;b = a + b;```执行后,变量b的值是多少?A. 5B. 10C. 15D. 20答案:C11. 在C语言中,哪个函数用于输出一个整数?A. scanf()B. printf()C. getchar()D. getc()答案:B12. C语言中,用于计算两个数的差的运算符是什么?A. +B. -C. *D. /答案:B13. 若有以下代码段:```cint x = 3;printf("%d", ++x);```执行后,输出的结果是多少?A. 3B. 4C. 5D. 6答案:B14. 在C语言中,哪个关键字用于声明一个数组?A. arrayB. listC. sequenceD. []答案:D15. C语言中,用于计算两个数的商的运算符是什么?A. +B. -C. *D. /答案:D16. 若有以下代码段:```cint a = 5, b = 10;a = a * b;```执行后,变量a的值是多少?A. 25B. 50C. 100D. 500答案:B17. 在C语言中,哪个函数用于输入一个字符串?A. scanf()B. printf()C. gets()D. fgets()答案:D18. C语言中,用于计算两个数的余数的运算符是什么?A. +B. -C. %D. /答案:C19. 若有以下代码段:```cint x = 3;printf("%d", x--);```执行后,输出的结果是多少?A. 2B. 3C. 4D. 5答案:B20. 在C语言中,哪个关键字用于声明一个结构体?A. structB. typeC. classD. record答案:A二、填空题(每题2分,共20分)1. 在C语言中,用于声明一个字符型变量的关键字是________。

国家二级计算机考试c语言试题及答案

国家二级计算机考试c语言试题及答案

国家二级计算机考试c语言试题及答案国家二级计算机考试C语言试题及答案一、选择题(本大题共10小题,每小题2分,共20分。

每小题只有一个正确答案。

)1. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. returnD. function答案:A2. 下列哪个选项是合法的C语言变量名?A. 2variableB. variable2C. variable2!D. _variable2答案:D3. C语言中,用于表示逻辑“与”的运算符是?A. &&B. ||C. !D. =答案:A4. 在C语言中,哪个函数用于将字符串复制到另一个字符串?A. strcpyB. strcatC. strcmpD. strlen答案:A5. 下列哪个选项是正确的C语言注释?A. // This is a single line commentB. /* This is a single line comment */C. // This is a multi-line commentD. /* This is a multi-line comment */答案:A6. 在C语言中,以下哪个选项是正确的数组声明?A. int arr[5] = {1, 2, 3};B. int arr[] = {1, 2, 3};C. int arr[5] = {1, 2};D. int arr = {1, 2, 3};答案:A7. C语言中,用于计算两个整数相加的函数是?A. strcatB. strcmpC. strcpyD. sum答案:D(注:sum不是C语言标准库函数,此处假设为自定义函数)8. 下列哪个选项是C语言中的合法常量?A. 0x1AB. 1.23e5C. 123.45D. All of the above答案:D9. C语言中,用于定义一个结构体的关键字是?A. structB. unionC. enumD. typedef答案:A10. 在C语言中,哪个关键字用于声明一个指针?A. intB. charC. floatD. *答案:D二、填空题(本大题共5小题,每小题2分,共10分。

计算机二级c语言笔试题库及答案

计算机二级c语言笔试题库及答案

计算机二级c语言笔试题库及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 以下哪个函数用于将字符串s2连接到字符串s1的末尾?A. strcat(s1, s2)B. strcpy(s1, s2)C. strncpy(s1, s2, n)D. strcmp(s1, s2)答案:A3. 在C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B4. 若有以下定义:int a[5] = {1, 2, 3, 4, 5}; 则表达式a[0] +a[2] + a[4]的值是多少?A. 8B. 10C. 12D. 15答案:C5. 在C语言中,以下哪个函数用于将一个字符串复制到另一个字符串?A. strcat()B. strcpy()C. strncpy()D. strcmp()答案:B6. 在C语言中,以下哪个关键字用于声明一个函数?A. intB. voidC. returnD. function答案:A7. 在C语言中,以下哪个关键字用于声明一个变量?A. varB. letC. intD. var答案:C8. 在C语言中,以下哪个函数用于将一个整数转换为字符串?A. atoi()B. itoa()C. sprintf()D. strcpy()答案:B9. 在C语言中,以下哪个函数用于打开一个文件?A. fopen()B. fclose()C. fread()D. fwrite()答案:A10. 在C语言中,以下哪个关键字用于定义一个指针?A. pointerB. ptrC. *D. ref答案:C二、填空题(每题2分,共20分)1. 在C语言中,________关键字用于定义一个宏。

答案:#define2. 在C语言中,________关键字用于定义一个枚举类型。

计算机二级c语言往年试题及答案

计算机二级c语言往年试题及答案

计算机二级c语言往年试题及答案一、选择题1. 下列不属于C语言关键字的是:A) if B) else C) switch D) case答案: D2. 在C语言中,下列关于数组说法正确的是:A) 数组的下标可以为负数B) 数组的大小可以在运行时动态改变C) 数组下标的类型可以是浮点数D) 数组元素的类型可以不相同答案: D3. 下面哪个运算符的优先级最高?A) ! B) ++ C) + D) &&答案: B4. 以下哪个循环语句无法在其内部控制循环的流程?A) while B) do-while C) for D) if-else答案: D5. 下列C代码,输出结果为何?```c#include <stdio.h>int main(){int a = 5, b = 2;printf("%d", a++ - b);printf("%d", a);}```A) 2, 6 B) 3, 6 C) 3, 7 D) 2, 7答案: A二、填空题1. 下列C代码,输出结果为何?```c#include <stdio.h>int main(){int x = 3;while (x++ < 6)printf("%d ", x);return 0;}```答案: 4 5 62. 下列C代码,输出结果为何?```c#include <stdio.h>int main(){int i = 0;while (i < 3){printf("%d ", ++i);i++;}return 0;}```答案: 1 3三、编程题1. 编写一个C程序,实现输入一个正整数n,计算并输出n的阶乘。

```c#include <stdio.h>unsigned long long factorial(unsigned int n);int main(){unsigned int n;printf("请输入一个正整数:");scanf("%u", &n);printf("%d的阶乘为:%llu", n, factorial(n));return 0;}unsigned long long factorial(unsigned int n){if (n == 0 || n == 1)return 1;elsereturn n * factorial(n - 1);}```以上为编写的一个简单的阶乘计算程序。

全国计算机二级c考试真题及答案

全国计算机二级c考试真题及答案

全国计算机二级c考试真题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,错误的是:A. C语言是一种高级编程语言B. C语言具有丰富的数据类型C. C语言可以直接操作硬件D. C语言不支持面向对象编程答案:D2. 在C语言中,用于定义一个整型变量的关键字是:A. intB. floatC. doubleD. char答案:A3. 若有以下代码片段:```cint a = 10;int b = 20;int c;c = a + b;```则变量c的值是:A. 10B. 20C. 30D. 40答案:C4. 在C语言中,以下哪个运算符用于计算两个数的乘积:A. +B. -C. *D. /答案:C5. 在C语言中,以下哪个函数用于计算一个数的平方根:A. sqrt()B. pow()C. log()D. abs()答案:A6. 在C语言中,以下哪个关键字用于声明一个函数:A. intB. voidC. returnD. function答案:B7. 在C语言中,以下哪个关键字用于定义一个循环结构:A. ifB. whileC. forD. switch答案:C8. 在C语言中,以下哪个关键字用于定义一个条件判断结构:A. ifB. elseC. switchD. case答案:A9. 在C语言中,以下哪个函数用于将字符串转换为整数:A. atoi()B. atof()C. strcpy()D. strcat()答案:A10. 在C语言中,以下哪个函数用于输出格式化的字符串:A. printf()B. scanf()C. gets()D. puts()答案:A二、填空题(每题2分,共20分)1. C语言中,用于声明一个字符型变量的关键字是________。

答案:char2. C语言中,用于声明一个浮点型变量的关键字是________。

答案:float3. 在C语言中,________运算符用于比较两个数是否相等。

全国计算机二级《C语言》测试题及答案

全国计算机二级《C语言》测试题及答案

全国计算机二级《C语言》测试题及答案全国计算机二级《C语言》测试题及答案1.(A )是构成C语言程序的基本单位。

A、函数B、过程C、子程序D、子例程2.C语言程序从 C 开始执行。

A、程序中第一条可执行语句B、程序中第一个函数C、程序中的main函数D、包含文件中的第一个函数3、以下说法中正确的是( C )。

A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main( )函数中定义C、C语言程序总是从main( )函数开始执行D、C语言程序中的main( )函数必须放在程序的开始部分4.下列关于C语言的说法错误的是( B ) 。

A、 C程序的工作过程是编辑、编译、连接、运行B、 C语言不区分大小写。

C、 C程序的三种基本结构是顺序、选择、循环D、C程序从main函数开始执行5.下列正确的标识符是(C )。

A、-a1B、a[i]C、a2_iD、int t5~8题为相同类型题考点:标识符的命名规则只能由字母、数字、下划线构成数字不能作为标识符的开头关键字不能作为标识符选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是(B )。

A、3axB、xC、caseD、-e2 E)union选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);7.下列四组选项中,正确的C语言标识符是( C )。

A、 %xB、a+bC、a123D、123选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是( A)。

A、print _3d db8 aBcB、I\am one_half start$it 3paiC、str_1 Cpp pow whileD、Pxq My->book line# His.age选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3)9.C语言中的简单数据类型包括(D )。

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

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

全国计算机等级考试二级C语言笔试试题及答案解析一、选择题1. 以下哪个选项不是C语言的关键字?A. autoB. includeC. ifD. static答案:B解析:C语言中,auto、if和static都是关键字,而include不是关键字,它是预处理命令的一部分。

2. 在C语言中,下列哪个选项是非法的整型常量?A. 012B. 0x123C. 0X123D. 0123答案:D解析:C语言中,以0开头的数字表示八进制常量,以0x 或0X开头的数字表示十六进制常量。

选项A表示八进制常量,选项B和C表示十六进制常量,而选项D表示非法的常量。

3. 有以下程序段:```cint a = 5, b = 4;printf("%d\n", a/b);```输出结果是:A. 1B. 1.25C. 5D. 4答案:A解析:在C语言中,整数除法的结果仍然是整数。

因此,5除以4的结果为1。

4. 以下哪个函数用于动态分配内存?A. malloc()B. alloc()C. new()D. calloc()答案:A解析:在C语言中,malloc()函数用于动态分配内存。

calloc()函数也用于动态分配内存,但会初始化分配的内存空间。

alloc()和new()不是C语言中的标准函数。

二、填空题1. 在C语言中,若要定义一个指向整型的指针变量,应使用______。

答案:int解析:在C语言中,使用int 来定义一个指向整型的指针变量。

2. 有以下程序段:```cint a = 5, b = 3;printf("%d\n", a % b);```输出结果是______。

答案:2解析:在C语言中,%运算符表示求余运算。

因此,5除以3的余数为2。

3. 有以下程序段:```cint a = 5;printf("%d\n", sizeof(a));```输出结果是______。

计算机二级考试c语言试题及答案

计算机二级考试c语言试题及答案

计算机二级考试c语言试题及答案# 计算机二级考试C语言试题及答案## 一、选择题1. 以下哪个是C语言的关键字?- A. `int`- B. `integer`- C. `char`- D. `character`答案:A2. C语言中,哪个函数用于计算并返回两个数的和?- A. `add(int a, int b)`- B. `sum(int a, int b)`- C. `calculate(int a, int b)`- D. `plus(int a, int b)`答案:B3. 在C语言中,以下哪个语句是正确的?- A. `int a = 5;`- B. `int a = 5.5;`- C. `int a = "5";`- D. `int a = '5';`答案:A## 二、填空题1. 在C语言中,用于定义一个整型变量的关键字是______。

答案:int2. 如果要计算两个数的平均值,可以使用C语言中的______运算符。

答案:/(除法)3. 在C语言中,用于定义一个字符变量的关键字是______。

答案:char## 三、简答题1. 请简述C语言中数组的定义和初始化方式。

答案:在C语言中,数组是一种基本的数据结构,用于存储相同类型的元素集合。

数组定义的一般形式为:`typearrayName[arraySize];`。

初始化可以使用花括号包围初始化值列表,如:`int arr[5] = {1, 2, 3, 4, 5};`。

如果数组初始化时未指定大小,数组的大小将由初始化值的数量决定。

2. 描述C语言中函数的定义和调用过程。

答案:C语言中的函数是一段具有特定功能的代码块,可以被重复调用。

函数定义包括返回类型、函数名、参数列表和函数体。

例如:`int add(int a, int b) { return a + b; }`。

调用函数时,需要使用函数名和相应的参数,如:`int result = add(5, 10);`。

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

(第一章)1. 以下关于算法的描述不正确的是__________。

A. 任何一个问题,它的实现算法是唯一的B. 描述算法常用的表达工具有流程图、N-S图、PAD图、伪码等C. 算法的最终实现是计算机程序D. 正确性和清晰易懂性是一个好算法的基本条件2.下面是一个加法程序,指出存在的逻辑错误和语法错误。

/* 求整数a和b的和*/main( ){int a,b;a=8;b=2000;print("%d\n",a-b);}3.在每个C程序中都必须包含有这样一个函数,该函数的函数名为__________。

A.main B. MAIN C. name D. function4.以下叙述不正确的是__________。

A.C程序书写格式规定,一行内只能写一个语句B.main()函数后面有一对花括号,花括号内的部分称为函数体C.一个C程序必须有main()函数D.C规定函数内的每个语句以分号结束5.以下各标识符中,合法的用户标识符为_________。

A.A#C B.mystery C.main D.ab*6.已知求解某问题的算法如下:⑴输入a、b、c三个数。

⑵将a和b比较,较大者放在a中,小者放在b中。

⑶将a和c比较,较大者放在a中,小者放在c中。

⑷将b和c比较,较大者放在b中,小者放在c中。

⑸依次输出a、b、c。

请根据上述算法描述,把算法的功能表达出来。

【答案】把任意输入的三个数a、b、c按降序排列的顺序输出。

7.一个C语言程序可以包括多个函数,程序总是按照如下_________所描述的方式执行当前的程序。

A.从本程序的main()函数开始,到本程序文件的最后一个函数结束。

B.从本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。

C.从main()函数开始,到main()函数结束。

D.从本程序文件的第一个函数开始,到本程序main()函数结束。

8.以下叙述正确的是_________。

A.在C程序中,main()函数必须位于程序的最前面。

B.C程序的每行中只能写一条语句。

C.在对一个C程序进行编译的过程中,可发现注释中的拼写错误。

D.C语言本身没有输入输出语句。

答案:1. A2.语法错误是print, 应该为printf;逻辑错误是a-b,应该为a+b。

3.A 4.A 5.B6.把任意输入的三个数a、b、c按降序排列的顺序输出。

7.C 8.D1.C语言中的实数可以写成不同表示形式,下列表示形式中正确的是_________。

A.B.C.D.e62.下列程序执行后的结果是_________。

main(){int x='f';printf("%c\n", 'A'-'a'+x));}3.能正确表示数学描述中0≤a≤10的C语言表达式是________。

A.a>=0&a<=10 B.a>=0||a<=10C.a>=0&&a<=10 D.0≤a&&a≤104.若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是________。

A.-3 B.9 C.-12 D.65.假设所有变量均为int型,则表达式(a=2,b=5,b+1,a+b)的值是________。

A.7 B.8 C.6 D.26.执行下面程序段后,y的结果是________。

int x,y;x=y=2;x=x-2&&(y=y+1);printf("%d",y);A. 3B. 2C. 1D. 07.表达式(int)*2+8/3-3%2的值是_________。

A. 2B. 3C. 4D. 5答案:1.A2.F3.C4.C5.A6.B7.B1.以下程序的输出结果是________。

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和分别赋给变量i和f,则正确的输入格式为________。

A.B.i=100,f=C.100,D.i=100f=【答案】B3.有程序如下:main(){int i;float x,y;scanf("%2d%f%*d%f",&i,&x,&y);printf("%d,%f,%f\n",i,x,y);}执行该程序时,若按如下形式输入数据,则输出结果是________。

输入数据:3445A.56,, B.56789,,C.56,, D.56,,【答案】A4.输入字母a时,下列程序的执行结果是________。

#include ""main(){char ch;ch=getchar();(ch>='a'&&ch<='z')putchar(ch+'A'-'a'):putchar(ch);}【答案】输出大写字母A1.下面是由if 构成的一个程序段:if(a<b){if(d==c)x=1;}elsex=2;该程序段所表示的逻辑关系对应的表达式是________。

A.⎩⎨⎧≠≥=<=)d c b (a 2d)c b (a 1x 且且 B. ⎩⎨⎧≠<=<=)d c b (a 2d)c b (a 1x 且且 C. ⎩⎨⎧≠=<=)d (c 2d)c b (a 1x 且 D. ⎩⎨⎧≥=<=)b (a 2d)c b (a 1x 且2.以下程序的运行结果为________。

main(){int x=2,y=-1,z=2;if(x<y) /* 第一个if */if(y<0) z=0; /* 第二个if */else z+=1;printf("%d\n",z);}A .3B .2C .1D .03.有程序段如下:int a=1,b=2,c=3;if(a>b)c=a; a=b; b=c;执行该程序段后,变量a 、b 、c 的值是__________。

A .a=1,b=2,c=3B .a=2,b=3,c=3C .a=2,b=3,c=1D .a=2,b=3,c=24.有程序如下:#include ""main( ){int c;while((c=getchar())!='\n')switch(c-'2'){case 0:case 1:putchar(c+4);case 2:putchar(c+4);break;case 3:putchar(c+3);default:putchar(c+2);break;}printf("\n");}若运行该程序时,按如下形式从键盘输入数据,则程序的运行结果为________。

输入数据:2473A.668977 B.668966C.D.66887665.执行下面的程序段后,a和b的值分别为________。

int a=3,b=5,c;c=(a>--b)a++:b--;A.3,2 B.3,3 C.4,4 D.4,5答案:1.D2.B3.B4.A5.BC语言测试题(第五章)1.有程序段如下:int k=10;while(k=0)k=k-1;则下面描述中正确的是________。

A.语句“k=k-1;”被执行10次B.语句“k=k-1;”被执行无限多次C.语句“k=k-1;”一次也不执行D.语句“k=k-1;”只执行一次2.有程序段如下:int k=10;do{k=k-1;}while(k>=0);则下面描述中正确的是________。

A.语句“k=k-1;”执行1次B.语句“k=k-1;”执行10次C.语句“k=k-1;”执行11次D.语句“k=k-1;”执行12次3.下面是一个程序段:int x,y;for(y=1,x=2;y<=50;y++){if(x>=10)break;x+=5;}执行该程序段后,x值为________。

A.2 B.7 C.12 D.15 4.有程序段如下:int i,j;for(i=5;i;i--)for(j=1;j<5;j++){......}假若内循环体内不存在中止循环的控制语句,则内循环体执行的总次数为________。

A. 20B. 24C. 25D. 305.下面是一个循环控制程序:#include ""#include ""main(){float x,y,z;scanf("%f,%f",&x,&y);z=x/y;while(1){if(fabs(z)>{x=y;y=z;z=x/y;}elsebreak;}printf("%\n",y);}运行该程序,按如下形式从键盘输入数据,程序的数出结果是________。

键盘输入数据:,A. B. C. D.答案:1.C 2.C 3.C 4.A 5.BC语言测试题(第六章)1.若有数组定义int m[][2]={1,3,5,7,9},则以下叙述正确的是________。

A.该定义存在语法错误B.该定义等价于int m[3][2]={1,3,5,7,9}C.该定义等价于int m[][2]={{1,3,5},{7,9}}D.该定义等价于int m[2][2]={1,3,5,7,9}2.对两个数组a和b进行如下的初始化:char a[]={'a','b','c','d','e','f'};char b[]="abcdef";则以下叙述正确的是________。

A.a数组与b数组完全相同B.a数组与b数组具有相同的长度C.a数组和b数组的最后一个字符都是字符串结束标志符'\0'D.a数组的长度比b数组的长度小3.下面程序的功能是输出数组s中最大元素的下标。

请在横线上填上适当的内容,使它能得出正确的结果。

main(){int k,p,s[]={1,-9,7,2,-10,3};for(p=0,k=p;p<6;p++)if(s[p]>s[k])____________;printf("%d\n", k);}4.下面程序的功能是将一字符串中的小写英文字母全部改成大写形式,然后输出。

相关文档
最新文档