APP下载
首页
>
财会金融
>
3190全国计算机等级考试《二级C语言》题库【历年真题+章节题库+模拟试题】
搜索
3190全国计算机等级考试《二级C语言》题库【历年真题+章节题库+模拟试题】
题目内容
(
单选题
)
30.设变量均已正确定义,若要通过“scanf("%d%c%d%c",&a1,&c1,&a2,&c2);”语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式中正确的是(注:u代表空格字符,代表回车)( )。

A、 10X20Y

B、 10uX20uY

C、 10uX20uY

D、 10uXu20uY

答案:A

解析:【解析】因为空格和回车也是字符变量,所以在输入X和Y时,它们的前面不能有空格和回车,否则将取到空格或者回车,而非X和Y;int类型不会取到空格和回车,所以10和20前面可以有空格和回车。答案选择A选项。

3190全国计算机等级考试《二级C语言》题库【历年真题+章节题库+模拟试题】
27.下列叙述正确的是( )。
https://www.shititong.cn/cha-kan/shiti/00022cbc-26fc-1804-c0cb-74c63d66eb00.html
点击查看题目
63.设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=30,rear=10。现要在该循环队列中作顺序查找,最坏情况下需要比较的次数为( )。
https://www.shititong.cn/cha-kan/shiti/00022cbc-26fd-a9b9-c0cb-74c63d66eb00.html
点击查看题目
91是最大的值,而C选项是“左根右”的排序,那么91的左边只有47,其他都在右边,而右边无法按照此顺序排列,答案选择C选项
https://www.shititong.cn/cha-kan/shiti/00022cbc-26fe-4690-c0cb-74c63d66eb00.html
点击查看题目
27.有以下程序:#include #include main(){int i,j,x = 0;for(i = 0;i < 2;i++){x++;for(j = 0;j <= 3;j++){if(j%2==0)continue;x++;}x++;}printf("x = %d\n",x);}程序的运行结果是( )。
https://www.shititong.cn/cha-kan/shiti/00022cbc-26fc-d729-c0cb-74c63d66eb00.html
点击查看题目
18.有以下程序:#include main(){int a=1,b=0;if(--a) b++;else if(a==0) b+=2;else b+=3;printf("%d\n",b);}程序运行后的输出结果是( )。
https://www.shititong.cn/cha-kan/shiti/00022cbc-26fa-f8f5-c0cb-74c63d66eb00.html
点击查看题目
1.下列叙述中正确的是( )。
https://www.shititong.cn/cha-kan/shiti/00022cbc-26fd-2aed-c0cb-74c63d66eb00.html
点击查看题目
5.软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件),下面属于应用软件的是( )。
https://www.shititong.cn/cha-kan/shiti/00022cbc-26fe-85d2-c0cb-74c63d66eb00.html
点击查看题目
1.N个有序整数数列已放在一维数组中,给定下列程序中,函数fun()的功能是:利用折半查找法查找整数m在数组中的位置。若找到,则返回其下标值;反之,则返回“Not be found!”。折半查找法的基本算法是:每次查找前先确定数组中待确定的范围:low和high(low<high),然后把m与中间位置(mid)中元素的值进行比较。如果m的值大于中间位置元素中的值,则下一次的查找范围放在中间位置之后的元素中;反之,下次查找范围落在中间位置之前的元素中。直到low>high,查找结束。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。/**********code.c**********/#include#define N 10int fun(int a[],int m){int low=0,high=N-1,mid;while(low<=high){/**********found**********/mid= ①();if(m<a[mid])/**********found**********/high= ②();else if(m>a[mid])low=mid+1;elsereturn(mid);}/**********found**********/③()( );}main(){int i,a[N]={-3,4,7,9,13,24,67,89,100,180},k,m;printf("a数组中的数据如下:");for(i=0;i<N;i++)printf("%d",a[i]);printf("Enter m:");scanf("%d",&m);k=fun(a,m);if(k>=0)printf("m=%d,index=%d\n",m,k);elseprintf("Not be found\n");}/**********-code.c**********/
https://www.shititong.cn/cha-kan/shiti/00022cbc-26fb-d9aa-c0cb-74c63d66eb00.html
点击查看题目
14.以下叙述中正确的是( )。
https://www.shititong.cn/cha-kan/shiti/00022cbc-2700-748a-c0cb-74c63d66eb00.html
点击查看题目
70.以下可以将任意一个两位整数n的个位数与十位数对换的表达式为( )。
https://www.shititong.cn/cha-kan/shiti/00022cbc-2700-f557-c0cb-74c63d66eb00.html
点击查看题目
首页
>
财会金融
>
3190全国计算机等级考试《二级C语言》题库【历年真题+章节题库+模拟试题】
题目内容
(
单选题
)
手机预览
3190全国计算机等级考试《二级C语言》题库【历年真题+章节题库+模拟试题】

30.设变量均已正确定义,若要通过“scanf("%d%c%d%c",&a1,&c1,&a2,&c2);”语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式中正确的是(注:u代表空格字符,代表回车)( )。

A、 10X20Y

B、 10uX20uY

C、 10uX20uY

D、 10uXu20uY

答案:A

解析:【解析】因为空格和回车也是字符变量,所以在输入X和Y时,它们的前面不能有空格和回车,否则将取到空格或者回车,而非X和Y;int类型不会取到空格和回车,所以10和20前面可以有空格和回车。答案选择A选项。

3190全国计算机等级考试《二级C语言》题库【历年真题+章节题库+模拟试题】
相关题目
27.下列叙述正确的是( )。

A.  栈是“先进先出”的线性表

B.  队列是“先进后出”的线性表

C.  循环队列是非线性结构

D.  有序线性表既可以采用顺序存储结构,也可以采用链式存储结构

解析:【解析】有序的线性表既可采用顺序存储结构,也可以采用链式存储结构。A项错误,栈是“先进后出”的线性表;B项错误,队列是“先进先出”的线性表;C项错误,循环队列是线性结构的,有序的线性表既可采用顺序存储结构,也可采用链式存储结构。答案选择D选项。

https://www.shititong.cn/cha-kan/shiti/00022cbc-26fc-1804-c0cb-74c63d66eb00.html
点击查看答案
63.设循环队列为Q(1:m),其初始状态为front=rear=m。经过一系列入队与退队运算后,front=30,rear=10。现要在该循环队列中作顺序查找,最坏情况下需要比较的次数为( )。

A.  19

B.  20

C.  m-19

D.  m-20

解析:【解析】循环队列是队列的一种顺序存储结构,用队尾指针rear指向队列中的队尾元素,用队首指针指向队首元素的前一个位置,因此,从队首指针front指向的后一个位置直到队尾指针rear指向的位置之间所有的元素均为队列中的元素,队列初始状态为front=rear=m,当front=30,rear=10时,队列中有m-30+10=m-20个元素,最坏情况下需要比较次数为m-19次。答案选择D选项。

https://www.shititong.cn/cha-kan/shiti/00022cbc-26fd-a9b9-c0cb-74c63d66eb00.html
点击查看答案
91是最大的值,而C选项是“左根右”的排序,那么91的左边只有47,其他都在右边,而右边无法按照此顺序排列,答案选择C选项
https://www.shititong.cn/cha-kan/shiti/00022cbc-26fe-4690-c0cb-74c63d66eb00.html
点击查看答案
27.有以下程序:#include #include main(){int i,j,x = 0;for(i = 0;i < 2;i++){x++;for(j = 0;j <= 3;j++){if(j%2==0)continue;x++;}x++;}printf("x = %d\n",x);}程序的运行结果是( )。

A.  x=4

B.  x=6

C.  x=8

D.  x=12

解析:【解析】第一次循环:i=0,执行x++后x=1,执行内层循环j=0,由于j%2!=0时才执行x++,即只有j取1和3时,执行x++,此时x=1+1+1=3,跳出内层循环,执行下一条x++,x=4,第二次循环:x=1时,重复上述循环,共执行两次循环,故x 终结果是4*2=8。答案选择C选项。注意,在循环体中遇到continue,则跳过continue后的语句直接进入下一次循环的判断。

https://www.shititong.cn/cha-kan/shiti/00022cbc-26fc-d729-c0cb-74c63d66eb00.html
点击查看答案
18.有以下程序:#include main(){int a=1,b=0;if(--a) b++;else if(a==0) b+=2;else b+=3;printf("%d\n",b);}程序运行后的输出结果是( )。

A.  0

B.  1

C.  2

D.  3

解析:【解析】“++”和“--”运算,当以前缀形式出现时,则先进行加一或减一操作,再进行其他运算,当以后缀形式出现时,则先进行其他运算,再进行加一或减一操作。a初始定义为1,b为0,执行--a,a的值变为0,--a的值也为0,即if判断为假,执行b+=2,输出b的值为2。答案选择C选项。

https://www.shititong.cn/cha-kan/shiti/00022cbc-26fa-f8f5-c0cb-74c63d66eb00.html
点击查看答案
1.下列叙述中正确的是( )。

A.  所谓算法就是计算方法

B.  程序可以作为算法的一种描述方法

C.  算法设计只需考虑得到计算结果

D.  算法设计可以忽略算法的运算时间

解析:【解析】A项错误,算法并不等同于计算方法,是指对解题方案的准确而完整的描述;C项错误,算法设计需要考虑可行性、确定性、有穷性与足够的情报;D项错误,算法设计有穷性要求操作步骤有限且必须在有限时间内完成,耗费太长时间得到的正确结果是没有意义的。B项正确,程序可以作为算法的一种描述方法,算法在实现时需要用具体的程序设计语言描述。答案选择B选项。

https://www.shititong.cn/cha-kan/shiti/00022cbc-26fd-2aed-c0cb-74c63d66eb00.html
点击查看答案
5.软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件),下面属于应用软件的是( )。

A.  学生成绩管理系统

B.  C语言编译程序

C.  UNIX操作系统

D.  数据库管理系统

解析:【解析】应用软件是为解决特定领域的应用而开发的软件,如事务处理软件,工程与科学计算软件,学生成绩管理系统、教务管理系统、浏览器、编辑软件等应用性质不同的各种软件。系统软件是计算机管理自身资源,提高计算机使用效率并服务于其他程序的软件,如操作系统,编译程序,汇编程序,数据库管理系统等。支撑软件是介于系统软件和应用软件之间,协助用户开发软件的工具性软件,包括辅助和支持开发和维护应用软件的工具软件,如需求分析工具软件,设计工具软件,编码工具软件,测试工具软件,维护工具软件等。答案选择A选项。

https://www.shititong.cn/cha-kan/shiti/00022cbc-26fe-85d2-c0cb-74c63d66eb00.html
点击查看答案
1.N个有序整数数列已放在一维数组中,给定下列程序中,函数fun()的功能是:利用折半查找法查找整数m在数组中的位置。若找到,则返回其下标值;反之,则返回“Not be found!”。折半查找法的基本算法是:每次查找前先确定数组中待确定的范围:low和high(low<high),然后把m与中间位置(mid)中元素的值进行比较。如果m的值大于中间位置元素中的值,则下一次的查找范围放在中间位置之后的元素中;反之,下次查找范围落在中间位置之前的元素中。直到low>high,查找结束。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。/**********code.c**********/#include#define N 10int fun(int a[],int m){int low=0,high=N-1,mid;while(low<=high){/**********found**********/mid= ①();if(m<a[mid])/**********found**********/high= ②();else if(m>a[mid])low=mid+1;elsereturn(mid);}/**********found**********/③()( );}main(){int i,a[N]={-3,4,7,9,13,24,67,89,100,180},k,m;printf("a数组中的数据如下:");for(i=0;i<N;i++)printf("%d",a[i]);printf("Enter m:");scanf("%d",&m);k=fun(a,m);if(k>=0)printf("m=%d,index=%d\n",m,k);elseprintf("Not be found\n");}/**********-code.c**********/

解析:【解析】填空1:根据题目的意思,此处是要确定折半查找的中间位置,所以应该填(low+high)/2,这个式子的运算结果为整型数据。填空2:由折半查找的算法可得,中间的元素值大,则应该选择前半段进行查找,所以此处应该把mid前一位的下标赋值给high。填空3:由算法可以看出,此处应该是所有执行完毕,仍然没有找到满足条件的元素,此时应当返回-1,所以使用关键字“return”。

https://www.shititong.cn/cha-kan/shiti/00022cbc-26fb-d9aa-c0cb-74c63d66eb00.html
点击查看答案
14.以下叙述中正确的是( )。

A.  C程序中的注释只能出现在程序的开始位置和语句的后面

B.  C程序书写格式严格,要求一行内只能写一个语句

C.  C程序书写格式自由,一个语句可以写在多行上

D.  用C语言编写的程序只能放在一个程序文件中

解析:【解析】

https://www.shititong.cn/cha-kan/shiti/00022cbc-2700-748a-c0cb-74c63d66eb00.html
点击查看答案
70.以下可以将任意一个两位整数n的个位数与十位数对换的表达式为( )。

A.  选项。

B.  项n-n/10×10得到个位数字,n/10为十位数字,n-n/10×10+n/10实现两位整数个位数与十位数之和,B项错误。

C.  项n/10+(n-n/10)=n,不能实现题目中要求,C项错误。

D.  项n/10是十位数字,n-n/10为原两位整数减去十位数字,不是个位数字,D项错误。答案选择

解析:【解析】

https://www.shititong.cn/cha-kan/shiti/00022cbc-2700-f557-c0cb-74c63d66eb00.html
点击查看答案
试题通小程序
试题通app下载