百度
360搜索
搜狗搜索

计算机二级c语言编程题,计算机二级c语言题型详细介绍

本文目录一览: 计算机等级二级C语言模拟试题1(八)

一、选择题(1)~(10)每小题2分,(11)-(50)每小题1分,共60分)
   下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
   (1)数据结构中,与所使用的计算机无关的是数据的________。
   A)存储结构   B)物理结构      C)逻辑结构     D)物理和存储结构
   答案:C
   评析:数据结构概念一般包括3个方面的内容,数据的逻辑结构、存储结构及数据上的运算集合。数据的逻辑结构只抽象的反映数据元素之间的逻辑关系,而不管它在计算机中的存储表示形式。
   (2)栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,
   则出栈序列可能是________。
   A)ABCED     B)DBCEA       C)CDABE       D)DCBEA
   答案:D
   评析:栈操作原则上"后进先出",栈底至栈顶依次存放元素A、B、c、D,则表明这4个元素中D是最后进栈,B、c处于中间,A最早进栈。所以出栈时一定是先出D,再出c,最后出A。
   (3)线性表的顺序存储结构和线性表的链式存储结构分别是________。
   A)顺序存取的存储结构、随机存取的存储结构
   B)随机存取的存储结构、顺序存取的存储结构
   C)随机存取的存储结构、随机存取的存储结构
   D)任意存取的存储结构、任意存取的存储结构
   答案:B
   评析:顺序存储结构中,数据元素存放在一组地址连续的存储单元中,每个数据元素地址可通过公式LOC(ai)。LOC(a1) (i-1)L计算得到,从而实现了随机存取。对于链式存储结构,要对某结点进行存取,都得从链的头指针指向的结点开始,这是一种顺序存取的存储结构。
   (4)在单链表中,增加头结点的目的是________。
   A)方便运算的实现          B)使单链表至少有一个结点
   C)标识表结点中首结点的位置     D)说明单链表是线性表的链式存储实现
   答案:A
   评析:头结点不仅标识了表中首结点的位置,而且根据单链表(包含头结点)的结构,只要掌握了表头,就能够访问整个链表,因此增加头结点目的是为了便于运算的实现。
   (5)软件 设计 包括软件的结构、数据接口和过程设计,其中软件的过程设计是指________。
   A)模块间的关系            B)系统结构部件转换成软件的过程描述
   C)软件层次结构            D)软件开发过程
   答案:B
   评析:软件设计包括软件结构设计、数据设计、接口设计和过程设计。其中结构设计是定义软件系统各主要部件之间的关系;数据设计是将分析时创建的模型转化为数据结构的定义;接口设计是描述软件内部、软件和 操作系统 之间及软件与人之间如何 通信 ;过程设计则是把系统结构部件转换成软件的过程性描述。
   (6)为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程  图,通常也把这种图称为________。
   A)PAD图    B)N-S图       C)结构图       D)数据流图
   答案:B
   评析:常见的过程设计工具有:程序流程图、N-S图、PAD图和HIPO图。其中,为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为N-S图。
   (7)数据处理的最小单位是________。
   A)数据     B)数据元素      C)数据项      D)数据结构
   答案:C
   评析:数据处理的最小单位是数据项;由若干数据项组成数据元素;而数据是指能够被计算机识别、存储和加工处理的信息载体;数据结构是指数据之间的相互关系和数据运算。
   (8)下列有关数据库的描述,正确的是________。
   A)数据库是一个DBF文件       B)数据库是一个关系
   C)数据库是一个结构化的数据集合   D)数据库是一组文件
   答案:C
   评析:数据库(Database,简称DB)是数据的集合,它具有统一的结构形式并存放于统一的存储介质内,是多种应用数据的集成,并可被各个应用程序所共享。数据库中的数据具有"集成"、"共享"之特点。
   (9)单个用户使用的数据视图的描述称为 ______ 。
   A)外模式    B)概念模式     C)内模式      D)逻辑模式
   答案:A
   评析:外模式是用户的数据视图,也就是用户所见到的数据模式;全局数据视图的描述称为概念模式,即数据库中全部数据的整体逻辑结构的描述;物理存储数据视图的描述称为内模式,即数据库在物理存储方面的描述;存储模式即为内模式。
   (10)需求分析阶段的任务是确定______。
   A)软件开发方法  B)软件开发工具  C)软件开发费用    D)软件系统功能
   答案:D
   评析:需求分析是软件定义时期的最后一个阶段,它的基本任务就是详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统的工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。
   (11)若变量a是int类型,并执行了语句:a='A' 1.6;,则正确叙述是______。
   A)a的值是字符C           B)a的值是浮点型
   C)不允许字符型和浮点型相加     D)a的值是字符'A'的ASCII值加上l
   答案:D
   评析:在赋值表达式中,赋值符右边的值的类型会自动转换成赋值符左边的变量的类型。在本题中,先用"A"的ASCII码值加上1.46得到66.46,然后将它强制转换成int型,转换后,实数的小数部分全部
   (12)若以下选项中变量已正确定义,则正确的赋值语句是______。
   A)x1=26.8%3;  B)1 2=x2;   C)x3=0x12;     D)x4=1 2=3;
   答案:C
   评析:赋值符号"="就是赋值运算符,它的作用是将一个数据赋给一个变量。如果赋值运算符两侧的类型不一致,但都是数值型或字符型时,在赋值时要进行类型转换,所以选项A错误。在赋值表达式中,赋值运算符的左侧必须是一个变量,所以选项B、D错误。选项C是将一个十六进制数赋值给变量x3。
   (13)以下程序段的输出结果是______。
   int a=1234;
   printf("%2d\n",a);
   A)12       B)34        C)1234       D)提示出错、无结果
   答案:C
   评析:本题主要考查对primf函数域宽描述符的理解,在这里我们要特别注意:输出数据的实际精度并不主要决定于格式项中的域宽与精度,也不决定于输入的数据精度,而主要决定于数据在机器内的存储精度。
   (14)以下选项中不属于C语言的类型的是______。
   A)signed short int         B)unsigned char
   C)signed long            D)long short
   答案:D
   评析:c语言中归纳起来,基本类型数据有以下几种:
   [signed]char;unsigned char;[signed]short[int];unsigned short[int];[signed]long[int];unsigned long[int];float;double.
   (15)设有定义:int a,*pa=&a;以下scanf语句能正确为变量a读入数据的是______。
   A)scanf("%d",B);         B)scanf("%d",a);
   C)scanf("%d",&pa);        D)scanf("%d",*pa);
   答案:C
   评析:scanf函数要求其中的输入项必须是地址形式,比如:普通变量的地址、数组名、指针变量等。对于普通变量,地址形式为:&变量名;当一个普通变量的地址赋予了一个指针变量名,scanf函数的输入项处就可以直接写这个指针变量名。
   (16)以下程序的输出结果是______。
   main()
   {int a=5,b=4,c=6,d;
   printf("%d\n",d=a>c?(a>c?a:C):(b));
   }
   A)5       B)4         C)6        D)不确定
   答案:B
   评析:本题最重要的分析d=a>c?(a>c?a:C):(b)),首先运算括号内的式子a>c?a:c,它的值是c的值6,即式子化成d=a>c?6:4。显然a=c,所以将4赋给d。
   (17)以下程序中,while循环的循环次数是______ 。
   main()
   { int i=0:
   while(i<10)
   {if(i<1)continue;
   if(i==5)break;
   i :
   }
   ……
   }
   A)1       B)10        C)6        D)死循环,不能确定次数
   答案:D
   评析:进入循环后,先执行一个条件语句,如果i的值小于l,那么直接进入下一轮循环,因为i的初始值是0,小于l,故直接进入下一轮循环,又因为i的值始终没有改变,所以这个循环成了死循环。
   (18)有以下程序:
   main()
   {
   char k;int i;
   for(i=1;i<3;i )
   {
   scanf("%c",&k);
   switch(k)
   {
   case'0':printf["another\n"];
   case'1':printf["number\n");
   }
   }
   }
   程序运行时,从键盘输入:0l回车>,程序执行后输出结果是______。
   A)another   B)another      C)another      D)number
   number      number        number       number
   another       number
   答案:C
   评析:switch语句是多分支选择语句,执行完一个case后面的语句后,流程控制转移到下一个case继续执行。"case常量表达式"只是起语句标号作用,并不是在该处进行条件判断。在执行switch语句时,根据switch后面表达式的值找到匹配的入口标号,就从此标号开始执行下去,不再进行判断
   (19)以下程序的输出结果是______。
   main()
   {Int a=O,i;
   for(i=1;i<5;i )
   {switch(i)
   { case 0:
   case 3:a =2:
   case l:
   case 2:a =3:
   default:a =5;
   }
   }
   printf("%d\n",a)
   }
   A)3l       B)13        C)10         D)20
   答案:A
   评析:switch结构的执行过程同上题。
   (20)己定义c为字符型常量,则下列语句中正确的是______。
   A)C='97'    B)c="97"     C)c=97        D)c="a"
   答案:C
   评析:字符变量占内存一个字节,只能放一个字符;字符常量为单引号括起的单个字符;字符串常量为双引号括起的一串字符(可以0个字符,即"",称为空串)。选项c为字符ASCII码的整数形式。
   (21)以下程序的输出结果是_________。
   main()
   f int a=4,b=5,c=0,d;
   d=!a&&!b||!c;
   printf("%d\n",d);
   }
   A)l       B)0         C)非0的数     D)-1
   答案:A
   评析:!a值为0,故!a&&!b的值为0,!c的值为l,而0IIl的值应该是l。所以答案是A。
   (22)以下程序的输出结果是_________。
   #include
   main()
   {int i=0,a=0;
   while(i<20)
   {for(;;)
   {if((i%10)==0)break;
   else  I--:
   }
   i =ll;a =i;
   }
   printf("%d\n",a);
   }
   A)21      B)32        C)33        D)11
   答案:B
   评析:本题中,有两个循环语句。首先,i=0,进入while循环,for语句中对循环没有任何条件,故直接进入for循环,因为0%10结果还是O,所以跳出for循环,执行i :11,i的值变为11,执行a =i,a的值变为11:接着进入下一轮while循环,在for循环中,因为i的值是11,对10取余结果为l,所以执行i自减,i的值变成10,进入又一轮for循环,因为10%10==0,所以跳出for循环,执行i =1l,i的值变成21,执行a =i,也就是将21 1 1的和赋给a,a=32,因为此时i的值不再小于20,所以结束循环,
   故输出结果是32。
   (23)有以下程序:
   int n(int x,int y)
   {retum x>y?x:y;}
   Int f2(int x,int y)
   {return x>y?y:x;)
   main()
   { int a=4,b=3,c=5,d,e,f;
   d=f1(a,b);d=fl(d,C);
   e=f2(a,b);e=f2(e,C);
   f=a b C-d-e;
   printf("%d,%d,%d\n",d,e,f);
   }
   程序运行后的输出结果是_________ 。
   A)3,4,5    B)5,3,4      C)5,4,3       D)3,5,4
   答案:B
   评析:函数n是一个求两个整数中值的函数,函数f2是一个求两个整数中最小值的函数。在main函数中两次调用函数n,求得变量a、b、、c中的值赋值给d;两次调用函数f2,求得变量a、b、c中的最小值赋值给e;表达式a b c-d-e得到中间值,输出5,3,4。
   (24)以下程序的输出结果是_________。
   int f()
   {static int i=0;
   int s=1:
   s =i;i ;
   return s;
   }
   main()
   {inti,a=0;
   for(i=0;i<5;j )a =f();
   printf("%d\n",a);
   }
   A)20      B)24        C)25         D)15
   答案:D
   评析:静态变量,在编译时就为其分配了存储空间,程序一开始执行便被建立,直到该程序执行结束都存在,而不像动态变量只存在于函数或分程序被调用期间。在函数多次被调用的过程中静态局部变量的值具有可继承性。
   (25)已定义以下函数:
   fun(int *p)
   {retum *p;}
   该函数的返回值是______ 。
   A)不确定的值 B)形参p中存放的值 C)形参p所指存储单元中的值 D)形参p的地址值
   答案:C.
   评析:函数首部fun(int*p)中 p表示这是一个指针变量,指向整型数据,用来从主调函数接收地址;而语句return *p;中的*p代表p所指向存储单元中的值。
   (26)若有以下程序
   #include
   Void f(int n);
   main()
   {void f(int n);
   f(5);
   }
   Void f(int n)
   {print("%d\n",n);}
   则以下叙述中不正确的是______ 。
   A)若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数f
   B)若在主函数前对函数f进行说明,则在主函数和其后的其它函数中都可以正确调用函数f
   C)对于以上函数程序,编译时系统会提示出错信息;提示对f函数重复说明
   D)函数f无返回值,所以可用void将其类型定义为无值型
   答案:C
   评析:一个函数在一个文件中的定义只能有一次,但对它的声明却可以有很多个。一个函数可以正确调用在当前函数之前声明的函数。

计算机等级二级C语言模拟试题1(十)

一、选择题(1)~(10)每小题2分,(11)-(50)每小题1分,共60分)
   下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
   (1)算法能正确地实现预定功能的特性称为算法的__________。
   A)确定性  B)易读性  C)健壮性  D)高效性
   答案:A
   评析:算法的确定性是指算法中的每一个步骤都必须是有明确定义的,不允许有摸棱两可的解释,也不允许有多义性,即每个步骤都是预先定义好的。
   (2)数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称之为__________。
   A)存储结构    B)逻辑结构
   C)顺序存储结构  D)链式存储结构
   答案:C
   评析:如果数据之间在逻辑上有相邻关系时,能够在物理位置上体现出来,则这种存储结构称为顺序存储结构。如果数据之间的逻辑相邻关系在存储时是靠存储地址的指针来体现的,则称为链式存储结构。
   (3)从未排序序列中依次取出一个元素与已排序序列中的元素依次进行比较,然后将其放  在已排序序列的合适位置,该排序方法称为__________。
   A)希尔排序  B)冒泡排序  C)插入排序  D)选择排序
   答案:C
   评析:最基本的排序方法有三大类,即选择排序、交换排序和插入排序。
   (4)对线性表进行折半查找时,要求线性表必须__________。
   A)以顺序方式存储
   B)以链接方式存储
   C)以顺序方式存储,且结点按关键字有序排列
   D)以链接方式存储,且结点按关键字有序排列
   答案:C
   评析:折半查找算法要求被查找的对象必须采用顺序的存储结构,并且关键字有序排列。
   (5)链表不具备的特点是__________。
   A)可随机访问任意一个结点
   B)插入和删除不需要移动任何元素
   C)不必事先估计存储空间
   D)所需空间与其长度成正比
   答案:A
   评析:顺序表可以随机访问任意一个结点,而链表必须从第一个数据结点出发,逐一查找每个结点。
   (6)下列描述中正确的是__________。
   A)软件是物理产品
   B)程序就是软件
   C)软件工程由方法、工具和过程三部分组成
   D)软件工程是一个机械工程
   答案:B
   评析:软件是与计算机系统操作有关的程序、规程、规则及任何与之有关的文档和数据。计算机软件是一种逻辑产品,而不是物理产品。软件工程是用工程、科学和数学的原则与方法研制、维护计算机软件的有关技术及管理方法。软件工具可以自动或半自动的生成软件文档。软件工程过程是管理者控制软件开发各环节的基本方法。
   (7)软件测试是保证软件质量最关键的步骤,下列关于白盒测试技术描述中不正确的是_______。
   A)保证模块中每一独立的路径至少执行一次
   B)保证所有判断的每一分支至少执行一次
   C)保证每一循环都在边界条件和一般条件下最多执行一次
   D)验证所有内部数据结构的有效性
   答案:C
   评析:软件测试技术中,白盒测试技术和黑盒测试技术是两种基本的软件测试手段。白盒测试技术有四个原则:保证模块中每一个独立的路径至少执行一次;保证所有判断的每一分支至少执行一次;保证每一循环都在边界条件和一般条件下至少执行一次;验证所有内部数据结构的有效性。
   (8)客观世界中任何一个事物都可以看成一个对象。但是从计算机的角度看,一个对象应  该包含两个要素:一个是_______,另一个是需要进行的操作。
   A)语句  B)命令  C)算法  D)数据
   答案:D
   评析:在面向对象的程序 设计 中,从计算机的角度看,一个对象应该包含两个元素:数据,相当于家庭中的成员;操作,相当于家庭成员的活动。对象就是一个包含数据与这些数据有关的操作的集合。
   (9)下列概念中,不是数据库管理系统必须提供的数据控制功能的是_______。
   A)安全性  B)完整性  C)移植性  D)一致性
   答案:C
   评析:数据库管理系统提供的数据控制功能是指在数据库建立、运行和维护时,由DBMS统一管理、统一控制,以保证数据的安全性、完整性和一致性。
   (10)设关系R和关系S的元数分别是3和4,关系T是R和S的笛卡儿积,即T=R×S,则关系T的元数是_______。
   A)7  B)9  C)12  D)16
   答案:A
   评析:笛卡儿积的定义是设关系R和s的元数分别是r和s,R和s的笛卡儿积是一个(r十s)元属性的集合,每一个元组的mr个分量来自R的一个元组,、后s爪分量来自s的一个元组。所以关系T的属性元数是3 4=7。
   (11)以下叙述中正确的是_______。
   A)C语言中的全部数据类型都是基本类型
   B)C语言中的全部数据类型都是构造类型
   C)C语言中的数据类型只有两种,即基本类型和构造类型
   D)以上都不对
   答案:D
   评析:c语言中的数据类型有四种,即基本类型、构造类型、指针类型和空类型。
   (12)下列可作为C语言赋值语句的是_______。
   A)x=3,y=5  B)a=b=6  C)i--;  D)y=6
   答案:C
   评析:此题实际上是考查对c语言中"语句"概念的理解。表达式后面只有加上分号才能成为语句,因此,A),B),D)均是表达式,只有C)为语句。且利用自减运算符使i值减l。
   (13)以下可以定义为用户标识符的是_______。
   A)printf  B)net  C)3com D)int
   答案:B
   评析:c语言中的标识符分为两类。一类是系统标识符,即系统定义使用的关键字标识符等。另一类是用户自定义标识符。两类标识符都只能用字母、数字和下划线三种字符组成。且第一个字母必须为字母或下划线。并且用户自定义标识符不能使用系统关键字相同的标识符。
   (14)以下选项中,不能作为合法常量的是_______。
   A)0X2A  B)015  C).2.8e9  D)123.6e0.4
   答案:D
   评析:c程序中的基本数据类型有整型、实型和字符型。其中整型常量三种形式,即八进制、十进制和十六进制。而实型常量有十进制小数和指数形式两种。
   (15)有以下程序
   main()
   {
   int a;  char c=10:
   float f=-100.0;double x;
   clrscrO;
   a=f/=c*=(x=6.5);
   printf("%d,%c,%3.1C%3.1f\n",a,c,Cx);
   }
   程序运行后的输出结果是_______。
   A)1,65,1,6.5  B)1,A,1.5,6.5  C)1,65,1.5,6.5  D)2,65,1.5,6.5
   答案:B
   评析:在赋值语句a=f/=c*=(x=6.5);中,可得x=6.5,将x的值乘以10赋予c,为65,再将f=100的值除以65,并按照四舍五入的原则,重新赋给f'得到f=-I.5。最后将f的值赋给a,由于a是整型,所以得到a=l。
   (16)以下语句序列中错误的是_______。
   A)int x=l;  B)int x=0;  C)int x=2.3;  D)int x=l,y=l;
   x ;     (x 1) ;   (x ) 1;    (x ) (y一);
   答案:B
   评析:c语言中的自加、自减运算只能用于变量,而不能用于常量或表达式。  (17)有定义语句:im.a;char b[10],c;则错误的输入语句是__________。
   A)scanf("%d%s%c",&a,D,&C);   B)scanf("%d%s%c",&a,&b,&C);
   C)scanf("%d%s%d",&a;b,&C);   D)scanf("%d%s"&c,a,%,&C);
   答案:D
   评析:在scanf()语句中,在给整型变量和字符型赋值时,必须要在变量名前加取地址符号(&),而对字符型数组赋值时,可以不在变量名前不加取地址符号,也可以加取地址符号。而且对于字符型变量既可以赋给整型值,也可以赋给字符型值。
   (18)有定义语句:int x,y;,若要通过scan即x=%d,y=%n&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,正确的是________。
   A)1l  12回车>    B)ll,12回车>
   C)x=l l,y=12回车>  D)x=ll,回车>12,回车>
   答案:C
   评析:在scanf()语句中,对于变量的赋值必须与数据的输入格式相一致。特别是一些字符说明。
   (19)设有如下程序段:
   int x=6, y=4;
   printf("%d\n",(x%y,x&&y));
   则以下叙述中正确的是__________。
   A)输出语句中格式说明符的个数少于输出项的个数,不能正确输出
   B)运行时产生出错信息
   C)输出值为2
   D)输出值为l
   答案:D
   评析:在逗号表达式(表达式1,表达式2)中,其运算方法是先求表达式1的值,然后求表达2的值,整个逗号表达式的值是表达式2的值。
   (20)有以下程序
   main()
   {
   int i=1.j=2,k=3;
   clrscr();
   if(i ==j&&k--==j)
   printf("%d,%d,%d",i 'j,k);
   else
   printf("%d,%d,%d", i, j,k--);
   }
   程序运行后的输出结果是_________。
   A)l,2,3  B)2,2,3  C)2,3,2  D)3,3,3
   答案:D
   评析:按照运算符的优先级,最先计算的是关系运算i ==j,由于此关系式不成立,,它的结果是为"假"值,由此可以确定逻辑与运算的结果必然是"假"值,因此参加逻辑与运算的另一个关系表达式"k--==j"的值,系统不再对它进行运算。此时变量i的值自加1变成2,然后执行else语句后的printf语句。
   (21)有定义语句:int a=l,b=l,c=3,x;,则以下选项中各程序段执行后,x的值不等于3是__________。
   A)if(c
<a)x=l;       <br="" b)if(a<3&&b    else if(b<a‖b
a) x=3;    D)if(a
<b c)x:b;    if(a<2)x="2;       " if(b&&a<c)x="c=" if(a<1)z="l;        if(c<a)x=a;" 答案:c
   评析:在各种运算符中,运算级别的是算术运算,如果有括号,当然先算括号内的表达式的值。    (22)有以下程序,其输出结果是____________。
   main()
   {  float x=l; int y;
   X :
   y=x l;
   printf("x=%d,y=%f",x, y);
   }
   A)x=2,y=3    B)x=2,y=3.0
   C)x=2.0,y=3  D)x=0.y=O.000000
   答案:D
   评析:一般在对变量定义为何种类型的数据时,对输出应有完全一致的数据类型格式。但整型与实型数据在进行混合运算时,一般其数据类型可以自动转换。如本题的y=x l;语句中,系统自动将实型表达式x l的结果转换为整数赋给整型变量y,但整型变量y只能得到实型数的整数部分。
   (23)有以下程序
   main()
   {
   int a[6]={5,6,7,8,9,10},s=0,I=0;
   clrserO;
   do
   {
   if(a[i]%2 I-0)
   s =a[I];
   }while( i<5);
   primf("%d\n",s);
   }
   程序运行后的输出结果是_________。
   A)21  B)22  C)23  D)24
   答案:A
   评析:引用数组中的某个元素时,可以直接使用数组名加下标的形式。如p[1],就是数组中下标为1的元素,按顺序数,是第2个元素,因为数组的下标是从0开始的。本题实际上是求数组中所有奇数元素的和。
   (24)若有如下程序段,
   main()
   {
   char a[7]="123\010\032";
   int i,j=0;
   clrscr0;
   for (I=0;i
<strlen(a);i )    j="sizeof(a);"
   printf("%d,%d\n",I,J);

   }

   程序运行后的输出结果是_________。

   A)5,30  B)5,35  C)5,25    D)5,20

   答案:B

   评析:数组的存储空间是在其定义后就分配的。字符数组a[7]="123\010\032"的存储空间是7个单元。即sizeof(a)=7。而函数strlen()是求字符串的长度的。a[7]="123\010\032"中,有两个转义字符,因此字符串的长度实际上是5个字符。所以strlen(a)=5。在程序的for循环中,其循环的次数是5次,j每次加7,所以最后的结果是35。i的值就是循环的次数。

   (25)如果在c程序中要用到库函数中的字符串比较函数strcmp(),那么在程序前面应该  添加的头文件是__________。

   A)stdio.h  B)string.h  C)alloc.h  D)math.H

   答案:B

   评析:库函数并不是c语言的一部分,它是由人们根据需要编制并提供用户使用的。在调用不同类别的库函数时,必须在程序前添加相应的头文件。

   (26)若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是_________。

   A)函数调用可以嵌套和递归

   B)函数调用可以作为一个函数的实参

   C)函数调用可以出现在表达式中

   D)函数调用可以作为一个函数的形参

   答案:D

   评析:函数的调用有三种方式。一是将函数调用作为一个语句。二是函数出现在_个表达式中。三是作为一个函数的实参。但是没有函数调用作为形参。而且函数在调用时还有嵌套和递归两种特殊的情形。

   (27)下列关于c语言中字符常量与字符串常量的叙述中,错误的是_________。

   A)字符常量是用单撇号括起来的一个字符

   B)空格字符也可用作字符常量

   C)字符串常量是用单撇号括起来的一个字符序列

   D)字符串常量是用双撇号括起来的一个字符序列

   答案:C

   评析:c语言中的字符型数据常量有两类,一类是用单撇号括起来的字符常量。字符常量除了常用的字符外,还包括特殊的空格符和以"\"开头的转义字符。字符串常量则是用双撇号括起来的一个字符序列。

<b c)x:b;    if(a<2)x="2;       " if(b&&a<c)x="c=" if(a<1)z="l;        if(c<a)x=a;" 答案:c
下半年计算机二级c语言基础试题
<b c)x:b;    if(a<2)x="2;       " if(b&&a<c)x="c=" if(a<1)z="l;        if(c<a)x=a;" 答案:c

下半年计算机二级c语言基础试题
  任何设计活动都是在各种约束条件和相互矛盾的需求之间寻求一种平衡,程序设计也不例外。下面是我收集的关于计算机二级c语言基础试题,希望大家认真阅读!

  下半年计算机二级c语言基础试题1   一、选择:
  1.给出以下定义:
  char acX[ ]= "abcdefg";
  char acY[ ]= {'a','b','c','d','e','f','g'};
  则正确的叙述为( )
  A) 数组acX和数组acY等价 B) 数组acX和数组acY的长度相同
  C) 数组acX的长度大于数组acY的长度 D) 数组acX的长度小于数组acY的长度
  答案:C
  2.
  void example(char acHello[])
  {
  printf("%d", sizeof(acHello));
  return;
  }
  void main()
  {
  char acHello[] = "hello";
  example(acHello);//数组名称作参数,传的是地址,一个地址占四个字节
  return;
  }
  的输出是
  A 4 B 5 C 6 D不确定
  答案:A
  3. 有以下程序段
  char acArr[]= "ABCDE";
  char *pcPtr;
  for(pcPtr = acArr; pcPtr < acArr 5; pcPtr )
  {
  printf("%s/n", pcPtr);
  }
  return;
  输出结果是( )
  A) ABCD B) A C) E D) ABCDE
  B D BCDE
  C C CDE
  D B DE
  E A E
  答案:D
  4.在中断中,不能同步获取信号量,但是可以释放信号量。
  A.正确 B.错误
  答案:A
  5.以下叙述中不正确的是( )
  A) 在不同的函数中可以使用相同名字的变量
  B) 函数中的形式参数是局部变量
  C) 在一个函数内定义的变量只在本函数范围内有效
  D) 在一个函数内的复合语句中定义的变量在本函数范围内有效(复合语句指函数中的成对括号构成的代码)
  答案:D
  6.设有如下定义:
  unsigned long pulArray[] = {6, 7, 8, 9, 10};
  unsigned long *pulPtr;
  则下列程序段的输出结果为( )
  pulPtr = pulArray;
  *(pulPtr 2) = 2;
  printf ("%d,%d/n", *pulPtr, *(pulPtr 2));
  A)8,10 B)6,8 C)7,9 D)6,10
  答案:D
  7. 定义结构体时有下面几种说法,请指出正确的(多选):______
  A、结构体中的每个部分,最好进行四字节对齐;
  B、结构体的总长度最好是四字节对齐;
  C、结构中成员的存放不用考虑字节对齐情况;
  答案:A、B
  8.void example()
  {
  int i;
  char acNew[20];
  for(i = 0; i < 10; i )
  {
  acNew[i] = '0';
  }
  printf("%d/n", strlen(acNew));
  return;
  }
  的输出为( )
  A 0 B 10 C 11 D不确定
  答案:D
  9.switch(c)中的c的数据类型可以是char、long、float、unsigned、bool. ( )
  A. 正确 B. 错误
  答案:B
  10. 网络上传输的字节序默认是大字节的,如果主机是小字节序,在网络通信时则须进行字节序转换;如果主机是
  大字节序,为了程序的一致性及可移植性,最好也在程序中加上字节序转换的操作(空操作)。
  A. 正确 B.错误
  答案:A
  二、 填空题
  1、 C语言函数返回类型的默认定义类型是
  2、 函数的实参传递到形参有两种方式: 和
  3、在一个函数内部调用另一个函数的调用方式称为 。在一个函数内部直接或间接调用该函数成为函数 的调用方式
  4、C语言变量按其作用域分为 和
  5、凡在函数中未指定存储类别的局部变量,其默认的存储类别为
  三、 看程序写结果
  1、#include
  Int abc(int u,int v);
  Void main()
  {int a=24,b=16,c;
  c=abc(a,b);
  printf(“value=%d”,c);
  }
  Int abc(int u, int v)
  {int w;
  While(v)
  {w=u%v;
  u=v;
  v=w;
  }
  Return u;
  }
  2、#include
  int x1=30,x2=40;
  main()
  {int x3=10,x4=20;
  sub(x3,x4);
  sub(x2,x1);
  printf(“%d,%d,%d,%d ”,x3,x4,x1,x2);
  }
  sub(int x,int y)
  {x1=x;x=y;y=x1;}
  3、#include
  Main()
  {int i=5;
  Printf(“%d ”,sub(i));
  }
  sub(int n)
  {int a;
  If(n==1) return 1;
  a=n sub(n-1);
  return (a);
  }
  4、#include
  Void fun()
  {static int m;
  m =2;
  printf(“%d ”,m);
  }
  Main()
  {int a;
  For(a=1;a<=4;a ) fun();
  Printf(“ ”);
  }
  四、 编程题
  1、 编写一个函数,判断任一整数是否为素数,用main()函数调用并测试之。
  2、 用递归方法求n!
  3、 有一个一维数组,内放10个学生成绩,写一个函数,求出平均分,最高分和最低分
  下半年计算机二级c语言基础试题2   1.下列叙述中正确的是( )。
  A. 所有数据结构必须有根结点
  B. 所有数据结构必须有终端结点(即叶子结点)
  C. 只有一个根结点,且只有一个叶子结点的数据结构一定是线性结构
  D. 没有根结点或没有叶子结点的数据结构一定是非线性结构
  【答案】D
  【解析】D项正确,线性结构的特点是:
  ①集合中必存在“第一个元素"且惟一;
  ②集合中必存在“最后一个元素”且惟一;
  ③除最后一个元素外,其他数据元素均有惟一的“后继;
  ④除第一个元素外,其他数据元素均有惟一的“前驱”。所以没有根结点或没有叶子结点的数据结构一定是非线性结构。AB两项错误,不是所有数据结构都必须有根结点和叶子结点;C项错误,数据结构中若有中间结点不满足只有一个前件或者后件的条件,就不是线性结构。答案选择D选项。
  2. 以下叙述中错误的是( )。
  A. C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令
  B. C程序经过编译、链接步骤之后才能形成一个真正可执行的二进制机器指令文件
  C. 用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中
  D. C语言源程序经编译后生成后缀为.obj的目标程序
  【答案】A
  【解析】A项错误,注释语句不会被翻译成二进制的'机器指令。C源程序经过C编译程序编译之后生成后缀为.obj的二进制文件(称为目标文件),然后由“链接程序”(Link)的软件把.obj文件与各种库函数连接起来生成一个后缀为.exe的可执行文件。答案选择A选项。
  3. C语言主要是借助以下( )功能来实现程序模块化的。
  A. 定义函数
  B. 定义常量和外部变量
  C. 三种基本结构语句
  D. 丰富的数据类型
  【答案】A
  【解析】C程序的模块化主要通过函数来实现。C语言允许对函数单独进行编译,从而可以实现模块化。答案选择A选项。
  4. 有以下程序段:
  char ch;
  int k;
  ch='a';
  k=12;
  print("%c,%d,",h,ch,k);
  printf("k=%d ",k);
  已知字符a的ASCII码十进制值为97,则执行上述程序段后输出的结果是( )。
  A. 因变量类型与格式描述符的类型不匹配输出无定值
  B. 输出项与格式描述符个数不符,输出为零值或不定值
  C.a,97,12k=12
  D. a,97,k=12
  【答案】D
  【解析】字符变量的值是该字符的ASCII码值,可以参与整型变量所允许的任何运算。"ch='a",%c表示以字符格式输出ch的值,所以输出为a;%d表示以十进制代码的形式输出ch的值,为97;k没有对应的输出格式,不输出。在第二个语句中,首先输出"k=",然后以十进制代码输出k的值,为12。答案选择D选项。
  5. 下列叙述中正确的是( )。
  A. 栈是“先进先出”的线性表
  B. 队列是“先进后出"的线性表
  C. 循环队列是非线性结构
  D. 有序线性表既可以采用顺序存储结构,也可以采用链式存储结构
  【答案】D
  【解析】有序的线性表既可采用顺序存储结构,也可以采用链式存储结构。A项错误,栈是“先进后出"的线性表B项错误,队列是“先进先出"的线性表;C项错误,循环队列是线性结构的,有序的线性表既可采用顺序存储结构,也可采用链式存储结构。
  答案选择D选项。
  6. 某二叉树的中序序列为DCBAEFG,后序序列为DCBGFEA,则该二叉树的深度(根结点在第1层)为( )。
  A. 5
  B. 40
  C.3
  D. 2
  【答案】B
  【解析】二叉树的后序序列为DCBGFEA,则A为根结点。中序序列为DCBAEFG,则DCB为左子树结点,EFG为右子树结点。同理B为C父结点,C为D父结点。根据分析,可画出左子树,同理E为F父结点,F为G父结点。根据分析,可画出右子树,故二叉树深度为4层。答案选择B选项。
  7. 设有定义:struct{intn;floatx;}s[2],m[2]={{10,2.8},{0,0.0}};,则以下赋值语句中正确的是( )。
  A. s[0]=m[1];
  B. s=m;
  C.s.n=m.n;
  D. s[2].x=m[2].x;
  【答案】A
  【解析】定义了结构体类型数组s,长度为2,结构体类型数组m,长度为2,并对数组m进行了初始化。同类型的结构体可以直接用变量名实现赋值,A项正确;数组名为数组首地址,地址常量之间不可以相互赋值,B项错误;数组名为地址常量不是结构体变量,不能引用成员,C项错误;s[2]与m[2]数组越界,D项错误。答案选择A选项。
  8. 关于C语言标识符,以下叙述错误的是( )。
  A. 标识符可全部由数字组成
  B. 标识符可全部由下划线组成
  C. 标识符可全部由小写字母组成
  D. 标识符可全部由大写字母组成
  【答案】A
  【解析】C语言标识符只能由字母、数字、下划线构成,且只能以字母、下划线开头,故答案选择A选项。
  9. 以下程序段中的变量已定义为int类型,则
  sum=pAd=5;
  pAd=sum , pAd,pAd ;
  printf("%d ",pAd);
  程序段的输出结果是( )。
  A. 6
  B. 4
  C. 5
  D. 7
  【答案】D
  【解析】自增和自减运算符的两种用法:前置运算,运算符放在变量之前,规则是先使变量的值增(或减)1,然后以变化后表达式的值参与其他运算;后置运算,运算符放在变量之后,规则是变量先参与其他运算,然后再使变量的值增(或减)1。执行pAd=sum ,sum 是后置自增,执行完后,pAd=5,sum=6。 pAd和pAd 语句中没有其他运算,即效果相同,pAd分别加1,两句执行完后,pAd7。答案选择D选项。
;

计算机二级C语言操作题积累

2017年计算机二级C语言操作题积累
  多媒体计算机是当前计算机领域中最引人注目的高新技术之一。多媒体计算机就是利用计算机技术、通信技术和大众传播技术,来综合处理多种媒体信息的计算机。下面是我整理的关于计算机二级C语言操作题积累,欢迎大家参考!
  一、单选题(每小题1分,共40分)
  1[单选题] 下列关于综合布线系统的描述中,错误的是(  )。
  A.双绞线扭绞可以减少电磁干扰
  B.管理子系统设置在楼层配线间内
  C.多介质插座是用来连接铜缆和光纤的
  D.对于建筑群子系统直埋布线是最理想的方式
  2[单选题] IP地址块59.67.79.128/28、59.67.79.144/28和59.67.79.160/27经聚合后可用地址数为(  )。
  A.62
  B.64
  C.126
  D.128
  3[单选题] IP地址块202.111.15.128/28、202.111.15.144/28和202.111.15.160/28经过聚合后可用的地址数为(  )。
  A.40
  B.42
  C.44
  D.46
  4[单选题] 下列攻击手段中,基于网络的入侵防护系统无法阻断的是(  )。
  A.SYNFlooding
  B.SQL注入
  C.DDOS
  D.PingofDeath
  5[单选题] 差异备份、增量备份、完全备份三种备份策略的备份速度由快到慢依次为(  )。
  A.增量备份、差异备份、完全备份
  B.差异备份、增量备份、完全备份
  C.完全备份、差异备份、增量备份
  D.完全备份、增量备份、差异备份
  6[单选题] CiscoPIX525防火墙用来允许数据流从具有较低安全级接口流向较高安全级接口的配置命令是(  )。
  A.fixup
  B.conduit
  C.global
  D.nameif
  7[单选题] 在Windows2003系统下DHCP服务器中添加排除时,应输入的信息是(  )。
  A.起始IP地址和结束IP地址
  B.起始IP地址和网关地址
  C.起始IP地址和MAC地址
  D.起始IP地址和掩码
  8[单选题] 下列关于服务器技术的描述中,错误的是(  )。
  A.集群系统中一台主机出现故障时不会影响系统的性能
  B.采用RISC结构处理器的服务器通常使用UNIX系统
  C.热插拔功能允许用户在不切断电源的情况下更换硬盘、电源等
  D.分布式内存访问(NUMA.技术将对称多处理器(SMP)和集群(Cluster)技术结合起来
  9[单选题] 下列对交换机中交换表的描述中,错误的是(  )。
  A.在一些高端交换机中,交换表通常被保存在CAM存储器中
  B.交换表中没有接收帧的目的MAC地址时,交换机用Flood技术转发该帧
  C.使用“showmac-addres-table”命令可显示小型交换机的交换表内容
  D.交换表的内容包括目的IP地址及其所对应的交换机端口号
  10[单选题] 下列关于无线网络HipeR1AN/2协议的描述中,错误的.是(  )。
  A.采用5GHz工作频段
  B.上行速率最多可达54Mbps
  C.室外最大覆盖范围为30米
  D.可支持面向连接的传输服务
  二、综合题(每空2分,共40分)
  (1)打开工作簿文件EXCEL.xlsx,将工作表sheetl的Al:El单元格合并为一个单元格,内容水平居中,计算“合计”列的内容,将工作表命名为“科研经费使用情况表”.
  (2)选取“科研经费使用情况表”的“项目编号”列和“合计”列的单元格内容,建立“簇状棱锥图”,x轴上的项为项目编号,图表标题为“科研经费使用情况图”,插入到表的A7:El8单元格区域内.
  三、演示文稿题
  打开考生文件夹下的演示文稿yswg.pptx,按照下列要求完成对此文稿的修饰并保存.

  (1)整个演示文稿设置成“时装设计”模板;将全部幻灯片切换效果设置成“分割”.
  (2)将第二张幻灯片对象部分的动画效果设置为“向内溶解”;在演示文稿的开始处插入一张“标题幻灯片”,作为文稿的第一张幻灯片,主标题键人“讽刺与幽默”,并设置为60磅、加粗、红色(请用自定义标签中的红色250,绿色1,蓝色1).
  二、电子表格题
  (1)【解题步骤】
  步骤1:通过“答题”菜单打开EXCEL.xlsx文件,选中A1:E1单元格,在【开始】功能区的【对齐方式】分组中,单击“合并后居中”按钮,合并单元格并使内容居中。
  步骤2:计算“合计”列内容。在E3单元格中插入公式“=SUM(B3:D3)”,并按回车键,将鼠标移动到E3单元格的右下角,按住鼠标左键不放向下拖动即可计算出其他行的值。
  注:当鼠标指针放在已插入公式的单元格的右下角时,它会变为小十字“ ”,按住鼠标左键拖动其到相应的单元格即可进行数据的自动填充。
  步骤3:双击现有名称,输入新名称“科研经费使用情况表”。
  步骤4:保存文件。
  (2)【解题步骤】
  步骤1:按照要求建立“簇状棱锥图”。选中“项目编号”列和“合计”列,在【插入】功能区的【图表】分组中,单击“创建图表”按钮,弹出“插入图表”对话框,在“柱形图”中选择“簇状棱锥图”,单击“确定”按钮,即可插入图表。
  步骤2:按照题目要求设置图表标题。在插入的图表中,选中图表标题,改为“科研经费使用情况图”。
  步骤3:调整图的大小并移动到指定位置。选中图表,按住鼠标左键单击图表不放并拖动,将其拖动到A7:El8单元格区域内。
  注:不要超过这个区域。如果图表过大,无法放下,可以将鼠标放在图表的右下角,当鼠标指针变为“、”时。按住左键拖动可以将图表缩小到指定区域内。
  步骤4:保存文件。
  三、演示文稿题
  (1)【解题步骤】
  步骤1:通过“答题”菜单打开ysw9.pptx文件,按照题目要求设置幻灯片模板。选中幻灯片,在【设计】功能区的【主题】分组中,单击“其他”下拉三角按钮,选择“时装设计”模板。
  步骤2:按照题目要求设置幻灯片的切换效果。选中幻灯片,在【切换】功能区的【切换到此幻灯片】分组中,单击“其他”下拉三角按钮,在“细微型”选项组中选择“分割”效果。
  (2)【解题步骤】
  步骤1:按照题目要求设置剪贴画的动画效果。选中第二张幻灯片的图片,在【动画】功能区的【动画】分组中,单击“其他”下拉三角按钮,选择“更多进入效果”选项,弹出“更改进入效果”对话框。在“基本型”选项组中选择“向内溶解”效果,单击“确定”按钮。
  步骤2:按照要求插入新幻灯片。用鼠标右键单击第一张幻灯片前面的位置,在【开始】功能区的【幻灯片】分组中,单击“新建幻灯片”下拉三角按钮,选择“标题幻灯片”选项。新插入的幻灯片作为第一张幻灯片。
  步骤3:在第一张幻灯片的“单击此处添加标题”处输入“讽刺与幽默”。
  步骤4:按题目要求设置字体。选中“讽刺与幽默”,在【开始】功能区的【字体】分组中,单击“字体”按钮,弹出“字体”对话框。在“字体”选项卡中,设置“大小”为“60磅”,设置“字体样式”为“加粗”。单击“字体颜色”下拉三角按钮,选择“其他颜色”选项,弹出“颜色”对话框。单击“自定义”选项卡,设置“红色”为“250”,设置“绿色”为…l’,设置“蓝色”为…l’,单击“确定”按钮,再单击“确定”按钮。
  步骤5:保存文件。
  三、应用题(共20分)
;

计算机二级c语言考试的题型有哪些?

计算机二级c语言考试题型有单项选择题、程序填空题、程序改错题、程序设计题四大类题型。
各题型分值如下:
一、单项选择题
单项选择题共四十题,四十分,每一个选择分值为1分,其中单项选择中含公共基础知识,该部分十道题,占10分。
二、程序填空题
程序填空题有2-3个空,占比分值18分,该题型为上机题,其三个空占比18分,可想而知其重要性。
三、程序改错题
程序改错题有2-3处错误,该题型分值占比也是18分,难度比程序填空题略难。该题型也为上机题,也许重视该类题型。
四、程序设计题
程序设计题是计算机二级C语言考试重点,该题为一大题,占比分值24分,该题型也为上机题,为考试重点,需多加练习。
注:二级公共基础知识在各科考试选择题中体现。程序设计部分,主要考查考生对程序设计语言使用和编程调试等基本能力,在选择题和操作题中加以体现。
计算机二级c语言考试考试要求:
一、熟悉Visual C 2010 Express集成开发环境。
二、掌握结构化程序设计的方法,具有良好的程序设计风格。
三、掌握程序设计中简单的数据结构和算法并能阅读简单的程序。
四、在Visual C 2010 Express集成环境下,能够编写简单的C程序,并具有基本的纠错和调试程序的能力。
以上便是计算机二级c语言考试题型及分值说明。

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

2017年计算机二级C语言测试题及答案解析
  全国计算机等级考试(National Computer Rank Examination,以下简称 NCRE),是经原国家教育委员会(现教育部)批准,由教育部考试中心主办,面向社会,用于考查非计算机专业应试人员计算机应用知识与技能的全国性计算机水平考试体系。下面是2017年计算机二级C语言测试题及答案解析。欢迎阅读。

  2017年计算机二级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、-a1
  B、a[i]
  C、a2_i
  D、int t
  5~8题为相同类型题
  考点:标识符的命名规则
  只能由字母、数字、下划线构成
  数字不能作为标识符的开头
  关键字不能作为标识符
  选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)
  6.下列C语言用户标识符中合法的是(B )。
  A、3ax
  B、x
  C、case
  D、-e2 E)union
  选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);
  7.下列四组选项中,正确的C语言标识符是( C )。
  A、 %x
  B、a b
  C、a123
  D、123
  选项A中的“%” ,选项B中“ ”不满足(1);选项D中的标识符以数字开头不满足(2)
  8、下列四组字符串中都可以用作C语言程序中的标识符的是( A)。
  A、print _3d db8 aBc
  B、I\am one_half start$it 3pai
  C、str_1 Cpp pow while
  D、Pxq My->book line# His.age
  选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3)
  9.C语言中的简单数据类型包括(D )。
  A、整型、实型、逻辑型
  B、整型、实型、逻辑型、字符型
  C、整型、字符型、逻辑型
  D、整型、实型、字符型
  10.在C语言程序中,表达式5%2的结果是 C 。
  A、2.5
  B、2
  C、1
  D、3
  %为求余运算符,该运算符只能对整型数据进行运算。且符号与被模数相同。5%2=1; 5%(-2)=1;(-5)%2=-1;(-5)%(-2)=-1;
  /为求商运算符,该运算符能够对整型、字符、浮点等类型的数据进行运算,5/2=2
  11.如果int a=3,b=4;则条件表达式"aA、 3
  B、 4
  C、 0
  D、1
  详见教材P97.
  表达式1?表达式2:表达式3
  先计算表达式1,
  若表达式1成立, 则选择计算表达式2,并表达式2的值作为整个大表达式的值;
  若表达式1不成立,则选择计算表达式3,并将表达式3的值作为整个大表达式的值
  此题中的aa为3,b为4。a12.若int x=2,y=3,z=4 则表达式x
  A、4
  B、3
  C、2
  D、0
  E)1
  13.C语言中,关系表达式和逻辑表达式的值是( B ) 。
  A、0
  B、 0或1
  C、 1
  D、‘T’或’F’
  14. 下面( D )表达式的值为4.
  A、 11/3
  B、 11.0/3
  C、 (float)11/3
  D、 (int)(11.0/3 0.5)
  14~16题为同一类型
  详见教材P54~56.
  (1)相同数据类型的元素进行数学运算( 、-、*、/)得到结果还保持原数据类型。
  (2)不同数据类型的元素进行数学运算,先要统一数据类型,统一的标准是低精度类型转换为高精度的数据类型。
  选项A,11与3为两个整数,11/3结果的数据类型也应为整数,因此将3.666666的小数部分全部舍掉,仅保留整数,因此11/3=3.
  选项B,11.0为实数,3为整数,因此首先要统一数据类型,将整型数据3转换为3.0,转换后数据类型统一为实型数据,选项B变为11.0/3.0,结果的数据类型也应为实型数据,因此选项B 11.0/3=3.666666
  选项C,先将整数11强制类型转换,转换为实型11.0,因此选项C变为11.0/3,其后计算过程、结果与选项B同
  选项D,首先计算11.0/3,其计算过程、结果与选项B同,得到3.666666;再计算3.666666 0.5=4.166666,最后将4.166666强制类型转换为整型,即将其小数部分全部舍掉,结果为4
  15.设整型变量 a=2,则执行下列语句后,浮点型变量b的值不为0.5的是( B )
  A、b=1.0/a
  B、b=(float)(1/A、
  C、b=1/(float)a
  D、b=1/(a*1.0)
  16. 若“int n; float f=13.8;”,则执行“n=(int)f%3”后,n的值是(A)
  A、1
  B、4
  C、4.333333
  D、4.6
  “(int)f“表示将f中的值强制类型转换为整型,即将13.8的小数部分舍掉,转换为13;然后计算13%3,结果为1,再将结果赋给变量n,因此n的值为1
  17. 以下对一维数组a的正确说明是: D
  A、char a(10);
  B、 int a[];
  C、int k=5,a[k];
  D、char a[3]={‘a’,’b’,’c’};
  详见教材P143~144,一维数组的定义、初始化
  类型符 数组名 [常量表达式]
  类型符是指数组中数组元素的类型;数组名要符合标识符命名规则;常量表达式是指数组的长度(数组中包含元素的个数),其值只能是整数,不可以是变量,而且从1开始计数。
  选项A,常量表达式只能放在中括号 [ ]中
  选项B,只有在对数组初始化(即赋值)的时候才可以省略数组的长度,B中并未对a进行初始化。
  选项C,常量表达式不能为变量。
  18.以下能对一维数组a进行初始化的.语句是:( C )
  A、int a[5]=(0,1,2,3,4,)
  B、 inta(5)={}
  C、 int a[3]={0,1,2}
  D、 int a{5}={10*1}
  详见教材P145,一维数组的定义、初始化
  选项B,D,常量表达式只能放在中括号 [ ]中
  选项A,数组可以看做是若干个相同数据类型元素的有序集合,因此以集合的形式对其初始化,使用{ }对其初始化,选项A用了().
  19.在C语言中对一维整型数组的正确定义为 D 。
  A、int a(10);
  B、int n=10,a[n];
  C、int n;a[n];
  D、#define N 10
  int a[N];
  20、已知:int a[10]; 则对a数组元素的正确引用是( D )。
  A、a[10]
  B、a[3.5]
  C、a(5)
  D、a[0]
  详见教材P144,数组元素的引用
  数组名[下标]
  引用数组元素时,[ ]中的下标为逻辑地址下标,只能为整数,可以为变量,且从0开始计数
  int a[10]表示定义了一个包含10个整型数据的数组a,数组元素的逻辑地址下标范围为0~9,即a[0] 表示组中第1个元素; a[1] 表示组中第2个元素; a[2] 表示组中第3个元素; ......;a[9] 表示组中第10个元素.
  选项A,超过了数组a的逻辑地址下标范围;
  选项B,逻辑地址下标只能为整数
  选项C,逻辑地址下标只能放在[ ]中
  21.若有以下数组说明,则i=10;a[a[i]]元素数值是(C )。
  int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};
  A、10
  B、9
  C、6
  D、5
  先算a[a[i]]内层的a[i],由于i=10,因此a[i]即a[10].
  a[10]对应下面数组中的元素为9. 因此a[a[i]]即为a[9]
  a[9]对应下面数组中的元素为6. 因此a[9]即为6
  22.若有说明:int a[][3]={{1,2,3},{4,5},{6,7}}; 则数组a的第一维的大小为: ( B )
  A、2
  B、3
  C、4
  D、无确定值
  5 7
  D、3 6 9
  二维数组的一维大小,即指二维数组的行数,在本题中,按行对二维数组赋值,因此内层有几个大括号,数组就有几行
  23.对二维数组的正确定义是(C )
  详见教材P149~152,二维数组的定义、初始化
  类型符 数组名 [常量表达式][常量表达式]
  二维数组可以看做是矩阵
  类型符是指数组中数组元素的类型;数组名要符合标识符命名规则;第一个常量表达式是指数组的行数;第二个常量表达式是指数组的列数;常量表达式的值只能是整数,不可以是变量,而且从1开始计数。
  一维数组初始化时可以省略数组长度
  二维数组初始化时可以省略行数,但不能省略列数
  选项A,B,都省略了列数
  选项D,不符合二维数组定义的一般形式,行、列常量表达式应该放在不同的[]中
  A、int a[ ][ ]={1,2,3,4,5,6};
  B、int a[2] []={1,2,3,4,5,6};
  C、int a[ ] [3]={1,2,3,4,5,6};
  D、int a[2,3]={1,2,3,4,5,6};
  24.已知int a[3][4];则对数组元素引用正确的是__C___
  A、a[2][4]
  B、a[1,3]
  C、a[2][0]
  D、a(2)(1)
  详见教材P150,数组元素的引用
  数组名[下标] [下标]
  引用数组元素时,[ ]中的下标为逻辑地址下标,只能为整数,可以为变量,且从0开始计数
  第一个[下标]表示行逻辑地址下标,第二个[下标]表示列逻辑地址下标。
  本题图示详见P149图6.7
  因此a的行逻辑地址范围0~2;a的列逻辑地址范围0~3;
  选项A,列逻辑地址下标超过范围
  选项B,D,的引用形式不正确。
  25.C语言中函数返回值的类型是由 A 决定的.
  A、函数定义时指定的类型
  B、 return语句中的表达式类型
  C、 调用该函数时的实参的数据类型
  D、形参的数据类型
  26. 在C语言中,函数的数据类型是指(A )
  A、 函数返回值的数据类型
  B、 函数形参的数据类型
  C、 调用该函数时的实参的数据类型
  D、任意指定的数据类型
  27.在函数调用时,以下说法正确的是( B )
  A、函数调用后必须带回返回值
  B、实际参数和形式参数可以同名
  C、函数间的数据传递不可以使用全局变量
  D、主调函数和被调函数总是在同一个文件里
  28. 在C语言中,表示静态存储类别的关键字是: ( C )
  A、 auto
  B、 register
  C、static
  D、extern
  29.未指定存储类别的变量,其隐含的存储类别为(A )。
  A、auto
  B、static
  C、extern
  D、register
  30. 若有以下说明语句:
  struct student
  { int num;
  char name[ ];
  float score;
  }stu;
  则下面的叙述不正确的是: (D )
  A、 struct是结构体类型的关键字
  B、 struct student 是用户定义的结构体类型
  C、 num, score都是结构体成员名
  D、 stu是用户定义的结构体类型名
  31.若有以下说明语句:
  struct date
  { int year;
  int month;
  int day;
  }brithday;
  则下面的叙述不正确的是__C___.
  A、 struct是声明结构体类型时用的关键字
  B、 struct date 是用户定义的结构体类型名
  C、 brithday是用户定义的结构体类型名
  D、year,day 都是结构体成员名
  32. 以下对结构变量stul中成员age的非法引用是 B
  struct student
  { int age;
  int num;
  }stu1,*p;
  p=&stu1;
  A、 stu1.age
  B、 student.age
  C、 p->age
  D、(*p).age
  33.设有如下定义:
  struck sk
  { int a;
  float b;
  }data;
  int *p;
  若要使P指向data中的a域,正确的赋值语句是 C
  A、 p=&a;
  B、 p=datA、a;
  C、p=&datA、a;
  D、*p=datA、a;
  34.设有以下说明语句:
  typedef struct stu
  { int a;
  float b;
  } stutype;
  则下面叙述中错误的是( D )。
  A、struct是结构类型的关键字
  B、struct stu是用户定义的结构类型
  C、a和b都是结构成员名
  D、stutype是用户定义的结构体变量名
  35.语句int *p;说明了 C 。
  A、p是指向一维数组的指针
  B、p是指向函数的指针,该函数返回一int型数据
  C、p是指向int型数据的指针 // 指针的定义教材P223
  D、p是函数名,该函数返回一指向int型数据的指针
  36.下列不正确的定义是( A )。
  A、int *p=&i,i;
  B、int *p,i;
  C.int i,*p=&i;
  D、int i,*p;
  选项A先定义一个整型指针变量p,然后将变量i的地址赋给p。然而此时还未定义变量i因此编译器无法获得变量i的地址。(A与C对比,选项C先定义变量i,则在内存中为i分配空间,因此i在内存空间的地址就可以确定了;然后再定义p,此时可以为p赋i的地址,C正确)
  37. 若有说明:int n=2,*p=&n,*q=p,则以下非法的赋值语句是: ( D )
  A、p=q
  B、*p=*q
  C、n=*q
  D、p=n
  p,q同为整型指针变量,二者里面仅能存放整型变量的地址。
  选项A,q中为地址,因此可将此地址赋给p
  选项B,*p表示p所指向对象n的内容,即一个整数;*q表示q所指向对象的内容,由于在定义q时为其初始化,将p中n的地址给q,因此p中存放n的地址,*q表示q所指向对象n的内容.因此*p=*q 相当于 n=n;
  选项C,n=*q 等价于n=n;
  选项D,p中只能存放地址,不能将n中的整数值赋给p
  38.有语句:int a[10],;则 B 是对指针变量p的正确定义和初始化。
  A、int p=*a;
  B、int *p=a;
  C、int p=&a;
  D、int *p=&a;
  选项A,a是数组名,不是指针变量名,因此不可用*标注数组名a
  选项C,a是数组名,数组名就是地址,无需再用地址符号。而且在定义指针变量p时,应在变量名前加*,标明p是指针变量
  选项D,a是数组名,数组名就是地址,无需再用地址符号。
  39.若有说明语句“int a[5],*p=a;”,则对数组元素的正确引用是( C )。
  A、a[p]
  B、p[a]
  C、*(p 2)
  D、p 2
  首先定义一个整型数组a,a的长度为5,然后定义一个指针变量p,并同时对p进行初始化,将数组a的地址赋给p。因此此时p中存放的数组a的首地址,即数组中第一个元素a[0]的地址。
  对于数组元素下标的引用(详见p144), 一般形式 数组名[下标] 其中下标为逻辑地址下标,从0开始计数,方括号中的下标可以是变量,可以是表达式,但结果一定要是整数。
  选项A,p中存放的是地址,不是整数,不能做数组元素的下标
  选项B,a是数组名,数组名就是地址,不是整数,不能做数组元素的下标
  选项C,(重点!!!详见p231~234) p 2表示指向同一数组中的下两个元素的地址,当前p指向a[0],则p 2表示a[2]的地址,因此*(p 2)表示a[2]的内容
  40. 有如下程序
  int a[10]={1,2,3,4,5,6,7,8,9,10},*P=a;
  则数值为9的表达式是 B
  A、 *P 9
  B、 *(P 8)
  C、 *P =9
  D、P 8
  (重点!!!详见p231~234)
  首先定义一个整型数组a,a的长度为5,然后定义一个指针变量P,并同时对P进行初始化,将数组a的地址赋给P。因此此时P中存放的数组a的首地址,即数组中第一个元素a[0]的地址。
  数组中9对应的是a[8], 选项B,P 8表示数组中后8个元素的地址,即a[8]的地址。*(P 8)则表示该地址内所存放的内容,即a[8]的值。
  选项A,*P表示P所指向对象的内容,此时P指向a[0], *P即a[0]的值1. *P 9=1 9=10
  选项C,*P表示P所指向对象的内容,此时P指向a[0], *P即a[0]的值。因此*P =9 即*P =*P 9, 等价于a[0]=a[0] 9.
  选项D,P 8表示数组中后8个元素的地址,即a[8]的地址,而非a[8]中的值。
  41. 在C语言中,以 D 作为字符串结束标志
  A、’\n’
  B、’ ’
  C、 ’0’
  D、’\0’
  42.下列数据中属于“字符串常量”的是( A )。
  A、“a”
  B、{ABC}
  C、‘abc\0’
  D、‘a’
  若干个字符构成字符串
  在C语言中,用单引号标识字符;用双引号标识字符串
  选项B,C,分别用{}和’’标识字符串
  选项D,标识字符。
  43.已知char x[]="hello", y[]={'h','e','a','b','e'};, 则关于两个数组长度的正确描述是 B .
  A、相同
  B、x大于y
  C、x小于y
  D、以上答案都不对
  C语言中,字符串后面需要一个结束标志位'\0',通常系统会自动添加。
  对一维数组初始化时可采用字符串的形式(例如本题数组x),也可采用字符集合的形式(例如本题数组y)。在以字符串形式初始化时,数组x不尽要存储字符串中的字符,还要存储字符串后的结束标志位,因此数组x的长度为6;在以字符集合形式初始化时,数组y,仅存储集合中的元素,因此数组y长度为5
;

计算机二级C语言程序设计的问题?

A52是以下面的数(5)开始乘4乘3……所乘数的个数为上面的数(2)。
如A73=7×6×5=210 2、C52=A52÷2!,即这个组合数(C52)的排列数(A52)除以上面那个数(2)的阶乘(2×1).如C73=A73÷3!=(7×6×5)÷(3×2×1)=35 另外,C52=C53,即若两数之和为下面那个数(m n=5),则C5m=C5n。
计算的定义有许多种使用方式,有相当精确的定义,例如使用各种算法进行的“算术”,也有较为抽象的定义,例如在一场竞争中“策略的计算”或是“计算”两人之间关系的成功机率。
将7乘以8(7x8)就是一种简单的算术。数学中的计算有加,减,乘,除,乘方,开方等。其中加减乘除被称为四则运算。
利用布莱克-舒尔斯定价模型(Black-Scholes Model)来算出财务评估中的公平价格(fair price)就是一种复杂的算术。
从投票意向计算评估出的选举结果(民意调查)也包含了某种算术,但是提供的结果是“各种可能性的范围”而不是单一的正确答案。
决定如何在人与人之间建立关系的方式也是一种计算的结果,但是这种计算难以精确、不可预测,甚至无法清楚定义。这种可能性无限的计算定义,和以上提到的数学算术大不相同。
英文中的计算为“Calculation”,来自拉丁文中的“Calculus”,指的是算盘上用来计算的小石头。

计算机二级c语言题型

答:二级C语言程序设计题型主要包括单项选择题、程序填空题、程序改错题和程序设计题。具体如下:
1.单项选择题,40题,共40分(含公共基础知识部分10分);
2.程序填空题,3空,共18分;
3.程序改错题:2各错误,共18分;
4.程序设计题:共24分。
拓展:
计算机二级c语言程序设计并不难,主要考察的是基本语法,还有顺序,选择,循环这三大结构,数组及其对应的算法,函数的定义与调用,还有结构体和指针。
考试内容
一、c语言程序的结构
二、数据类型及其运算
三、基本语句
四、选择结构程序设计
五、循环结构程序设计
六、数组的定义和引用
七、函数
八、编译原理
九、指针
十、结构体
十一、位运算
十二、文件操作只要求缓冲文件系统(即高级磁盘I/ O系统),对非标准缓冲文件系统(即低级磁盘I/O系统)不要求。

计算机二级考试C语言选择题(2)

  { char x=0xFFFF;printf("%d\n",x--);}

  A.-32767

  B.FFFE

  C.1

  D.32768

  22.下面的函数调用语句中func函数的实参个数是( )。

  func((f2v1,v2),(v3,v4,v5),(v6,max(v7,v8)))

  A.3

  B.4

  C.5

  D.8

  23.语句“printf("akbre"\’hi\’y\\\bou\n")”;的输出结果是( )。

  A.akbre\’hi\’y ’\\\bou

  B.a\bre\’hi\\y\bou

  C.re ’hi’you

  D.abre’hi’y\bou

  24.下面程序输出的是( )。

  main()

  { int t=l;fun(fun(t));}

  fun(int h)

  { static int a[3]={1.2.3};

  int k;

  for(k=0;k<3;k )a[k] =a[k]-h;

  for(k=0;k<3;k )printf("%d",a[k]);

  printf("\n");

  return(a[h]);}

  A.1,2,3,

  1,5,9,

  B.1,3,5,

  1,3,j,

  C.1,3,5,

  0,4,8,

  D.1,3。5,

  -1,3,7,

  25.以下叙述中正确的是( )。

  A.预处理命令行必须位于C源程序的起始位置

  B.在C语言中,预处理命令行都以“#”开头

  c.每个C程序必须在开头包含预处理命令行:#include

  D.C语言的预处理不能实现宏定义和条件编译的功能

  26.为了避免在嵌套的条件语句if else中产生二义性,C语言规定,else子句总是与( )配对。

  A.缩排位置相同if

  B.其前面最近的if

  C.其后面最近的if

  D.同一行上的if

  27.设有下列程序段:

  char str[]="HelloWorld":

  char* plr;

  ptr=str:

  执行上面的程序段后,*(ptr 10)的'值为( )。

  A.’\0 ’

  B.’0’

  C.不确定的值

  D.’0’的地址

  28.有以下程序:

  void swap(char*x,char*y)

  { char t;

  t=*x;*x=*y;*y=t;

  }

  main()

  { char*s1="abe",*s2="123":

  swap(s1,s2);

  printf("%s,%s\n",s1,s2);

  }

  程序执行后的输出结果是( )。

  A.123,abe

  B.abc.123

  C.1bc,a23

  D.321,cba

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

  #include

  main()

  { static char a[]="Languagef",b[]="programe":

  char*p1,*p2;int k;

  p1=a;p2=b;

  for(k=0;k<=8;k )

  if(*(p1 k)==*(p2 k))

  printf("%c",*(p1 k)):

  }

  A.gae

  B.ang

  C.program

  D.有语法错

  30.下列程序的运行结果为( )。

  #define MAX(x,y)(x)>(y)?(x):(y)

  main()

  { int a=2,b=3,C=1,d=3,t:

  printf("%d\n",(MAX(a h,c d))*100):

  }

  A.500

  B.5

  C.4

  D.400

  31.设int x=7,则~x的值是(  )。

  A.-8

  B.7

  C.-1

  D.1

  32.有以下程序:

  void fun(char*a,char*b)

  {a=b; (*a) ; }

  main(  )

  {char c1=’A ’,c2=’a’,*p1,*p2;

  p1=&c1;p2=*c2;fun(p1,p2);

  printf("%C%c\n",c1,c2);

  }

  程序运行后的输出结果是(  )。

  A.Ab

  B.aa

  C.Aa

  D.Bb

  33.有以下程序:

  int fun(int n)

  {if(n==l)return l;

  else return(n fun(n一1)):

  }

  main(  )

  {int x;

  scanf("%d",&x);x=fun(x);printf("%d\n",

  x):

  }

  执行程序时,给变量X输入10,程序的输出结果是(  )。

  A.55

  B.54

  C.65

  D.45

  34.有以下程序:

  void f(int x,int y)

  {int t;

  if(x  }

  main(  )

  {int a=4,b=3,c=5;

  f(a,b);f(a,c);f(b,c);

  printf("%d,%d,%d\n",a,b,c);

  }

  执行后输出结果是(  )。

  A.3,4,5

  B.5,3,4

  C.5,4,3

  D.4,3,5

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

  main(  )

  {char*s="12134211";

  int v[4]=(0,0,0,0),k,i;

  for(k=0;s[k];k )

  {switch(s[k])

  {case’1’:i=0;

  case’2’:i=1;

  case’3’:i=2;

全国计算机二级考试(c语言)的题型及各题分值是怎样的?(笔试和上机)

全国计算机二级考试(c语言)的题型及各题分值是怎样的题型分值分布:
1、单项选择题,40题,40分(含公共基础知识部分10分)。
2、程序填空题,2~3个空,18分;上机题。
3、程序改错题,2~3处错误,18分;上机题。
4、程序设计题,1题,24分;上机题。
二级公共基础知识在各科考试选择题中体现。程序设计部分,主要考查考生对程序设计语言使用和编程调试等基本能力,在选择题和操作题中加以体现。
扩展资料:
二级c语言考试要求:
1、熟悉Visual C 2010 Express集成开发环境。
2、掌握结构化程序设计的方法,具有良好的程序设计风格。
3、掌握程序设计中简单的数据结构和算法并能阅读简单的程序。
4、在Visual C 2010 Express集成环境下,能够编写简单的C程序,并具有基本的纠错和调试程序的能力。
参考资料:百度百科-二级c语言

网站数据信息

"计算机二级c语言编程题,计算机二级c语言题型"浏览人数已经达到23次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:计算机二级c语言编程题,计算机二级c语言题型的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!