C语言计算机二级/C语言期末考试 刷题(五)
收集了一些经典C语言计算机二级和C语言期末考试题库
整理不易,大家点赞收藏支持一下
祝大家计算机二级和期末考试都高分过
系列文章:
C语言计算机二级/C语言期末考试 刷题(一)
C语言计算机二级/C语言期末考试 刷题(二)
C语言计算机二级/C语言期末考试 刷题(三)
C语言计算机二级/C语言期末考试 刷题(四)
目录
一、填空 共13题 (共计13分)
二、判断 共10题 (共计10分)
三、单选 共25题 (共计25分)
四、程序填空 共2题 (共计10分)
五、程序改错 共2题 (共计10分)
六、程序设计 共2题 (共计32分)
一、填空 共13题 (共计13分)
第1题
若有定义:char c='\010';则变量c中包含的字符个数为【1】.
=======(答案1)=======
1
第2题
int x=2,y=3,z=4; 则表达式x||y+z的值为【1】.
=======(答案1)=======
1
第3题
C语言中的标识符只能由3种字符组成,它们是【1】、【2】和【3】.
=======(答案1)=======
字母
=========或=========
{{无序}}
=======(答案2)=======
数字
=========或=========
{{无序}}
=======(答案3)=======
下划线
=========或=========
{{无序}}
第4题
以下程序的输出结果是【1】.
#include<stdio.h>
void main()
{int i = 010, j = 10;printf("%d,%d\n", ++i, j--);
}
=======(答案1)=======
9,10
第5题
若s是int型变量,且s=6,则下面表达式的值是【1】.
s%2+(s+1)%2
=======(答案1)=======
1
第6题
若输入字符串:abcde<回车>,则以下while循环体将执行 【1】 次.
while((ch = getchar()) == 'e')
printf("*");
=======(答案1)=======
0
第7题
以下程序运行结果是【1】.
void main()
{int a = 4, b = 3, c = 5, t = 0;if (a < b) t = a; a = b; b = t;if (a < c) t = a; a = c; c = t;printf("%d %d %d\n", a, b, c);
}
=======(答案1)=======
5 0 3
第8题
c语言程序的三种基本结构是:顺序结构,选择结构,【1】结构.
=======(答案1)=======
循环
第9题
下面程序的输出是【1】 .
#include<stdio.h>
fun(int x)
{static int a = 3;a += x;return(a);
}
void main()
{int k = 2, m = 1, n;n = fun(k);n = fun(m);printf("%d", n);
}
=======(答案1)=======
6
第10题
下列程序的输出结果是【1】 .
#define MIN(x,y) (x)<(y)?(x):(y)
void main()
{int i, j, k;i = 10; j = 20;k = 2 * MIN(i, j);printf("%d\n", k);
}
=======(答案1)=======
20
第11题
按内存排列顺序, 数组char a[2]中的所有元素是a[1]和【1】.
=======(答案1)=======
a[0]
第12题
求字符串长度的库函数是【1】,只写函数名即可.
=======(答案1)=======
strlen
第13题
若有以下定义和语句:
int a[4] = { 0,1,2,3 }, * p;
p = &a[2];
则*--p的值是【1】.
=======(答案1)=======
1
二、判断 共10题 (共计10分)
第1题
一个C程序中至少有一对大花括号{}.
答案:Y
第2题
7&&3+12的值是13.
答案:N
第3题
若有 int i=10,j=2;则执行完i*=j+8;后ⅰ的值为28.
答案:N
第4题
for(i=0;i<9;i++)能控制循环10次.
答案:N
第5题
while 和for循环都是先判断表达式的值,后执行循环体语句.
答案:Y
第6题
将函数的返回值类型说明成空值型(void),则调用时不可做表达式用.
答案:Y
第7题
变量根据其作用域的范围可以分作局部变量和全局变量.
答案:Y
第8题
当调用函数时,实参是一个数组名,则向函数传送的是数组的长度.
答案:N
第9题
static char s[]; s="China"; 是正确的.
答案:N
第10题
char *p="girl";的含义是定义字符型指针变量p,p的值是字符串"girl".
答案:N
三、单选 共25题 (共计25分)
第1题
以下叙述中正确的是().
A:构成C程序的基本单位是函数B:可以在一个函数中定义另一个函数C:main()函数必须放在其它函数之前D:所有被调用的函数一定要在调用之前进行定义
答案:A
第2题
C语言程序的基本单位是().
A:函数B:过程C:子程序D:子例程
答案:A
第3题
C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符().
A:必须为字母B:必须为下划线C:必须为字母或下划线D:可以是字母,数字和下划线中任一字符
答案:C
第4题
若int a=3,则执行完表达式a-=a+=a*a后,a的值是().
A:-15B:-9C:-3D:0
答案:D
第5题
判断char型变量cl是否为小写字母的正确表达式是().
A:'a'<=cl<='z'B:(cl>=a)&&(cl<=z)C:('a'>=cl)||('z'<=cl)D:(cl>='a')&&(cl<='z')
答案:D
第6题
若k为int型变量,则以下程序段的执行结果是().k=-8567; printf("|%06D|\n",k);
A:格式描述符不合法,输出无定值B:输出为|%06D|C:输出为|0-8567|D:输出为|-8567|
答案:B
第7题
若x=2,y=3则x&y的结果是().
A、0B、2C、3D、5
答案:B
第8题
若有如下语句,则程序段().
int x = 6;
do
{printf("%d\n", x -= 2);
} while (--x);
A:输出的是1B:输出的是4和1C:输出的是3和0D:是死循环
答案:B
第9题
int a=1,b=2,c=3;
if(a>c)b=a;a=c;c=b;则c的值为().
A:1B:2C:3D:不一定
答案:B
第10题
以下语句中,循环次数不为10次的语句是().
A:for(i=1;i<10;i++);B:i=1;do{i++;}while(i<=10);C:i=10;while(i>0){--i;}D:i=1;m:if(i<=10){i++;goto m;}
答案:A
第11题
以下程序的执行结果是().
main()
{int num = 0;while (num <= 2){num++;printf("%d,", num);}
}
A:0,1,2B:1,2,C:1,2,3,D:1,2,3,4,
答案:C
第12题
C语言中 while 和 do-while 循环的主要区别是().
A:do-while 的循环体至少无条件执行一次B:while的循环控制条件比 do-while的循环控制条件更严格C:do-while 允许从外部转到循环体内D:do-while 的循环体不能是复合语句
答案:A
第13题
凡是函数中未指定存储类别的局部变量,其隐含的存储类别为().
A:自动(auto)B:静态(static)C:外部(extern)D:寄存器(register)
答案:A
第14题
以下正确的函数形式是().
A:
double fun(int x, int y)
{z = x + y; return z;
}B:
fun(int x, y)
{int z; return z;
}C:
fun(x, y)
{int x, y; double z; z = x + y; return z;
}D:
double fun(int x, int y)
{double z; z = x + y; return z;
}
答案:D
第15题
C语言程序中,当调用函数时().
A:实参和虚参各占一个独立的存储单元B:实参和虚参可以共用存储单元C:可以由用户指定是否共用存储单元D:计算机系统自动确定是否共用存储单元
答案:A
第16题
数组名作为实参数传递给函数时,数组名被处理为().
A:该数组的长度B:该数组的元素个数C:该数组的首地址D:该数组中各元素的值
答案:C
第17题
表达式18/4*sqrt(4.0)/8值的数据类型为().
A:intB:floatC:doubleD:不确定
答案:C
第18题
以下能对二维数组a进行正确初始化的语句是().
A:int a[2][] = { {1,0,1},{5,2,3} };B:int a[][3] = { {1,2,3},{4,5,6} };C:int a[2][4] = { {1,2,3},{4,5},{6} };D:int a[][3] = { {1,0,1} {},{1,1} };
答案:B
第19题
若char a[10];已正确定义,以下语句中不能从键盘上给a数组的所有元素输入值的语句是().
A:gets(a);B:scanf("%s", a);C:for (i = 0; i < 10; i++)a[i] = getchar();D:a = getchar();
答案:D
第20题
设有数组定义:char array[ ]="China";,则数组array所占的空间为().
A :4个字节B : 5个字节C : 6个字节D : 7个字节
答案:C
第21题
char a[10];不能将字符串"abc"存储在数组中的是().
A:strcpy(a,"abc");B:a[0]=0;strcat(a,"abc");C:a="abc";D:int i;for(i=0;i<3;i++)a[i]=i+97;a[i]=0;
答案:C
第22题
下列字符数组长度为5的是().
A:char a[] = { 'h', 'a', 'b', 'c', '\0' };B:char b[] = { 'h', 'a', 'b', 'c', 'd', '\0' };C:char c[10] = { 'h', 'a', 'b', 'c', 'd' };D:char d[6] = { 'h', 'a', 'b', 'c', '\0' };
答案:A
第23题
若有说明 int *p,m=5,n;以下正确的程序段是().
A:p=&n;scanf("%d",&p);B:p=&n;scanf("%d",*p)C:scanf("%d",&n);*p=n;D:p=&n;*p=m;
答案:D
第24题
若有说明:int *p1,*p2,m=5,n;以下均是正确赋值语句的选项是().
A:p1=&m;p2=&p1B:p1=&m;p2=&n;*p1=*p2;C:p1=&m;p2=p1;D:p1=&m;*p2=*p1;
答案:C
第25题
若有int *p,a; p=&a,下列说法不正确的是().
A:&*p==&aB:*&a==aC:(*p)++==a++D:*(p++)==a++
答案:D
四、程序填空 共2题 (共计10分)
第1题
功能:输出9*9口诀。
#include<stdio.h>
main()
{int i, j, result;printf("\n");for (i = 1; 【 ? 】; i++){for (j = 1; j < 10; 【 ? 】){result = i * j;printf("%d*%d=%-3d", i, j, 【 ? 】);}printf("\n");}
}
答案:
=======(答案1)=======
i<10
=========或=========
10>i=======(答案2)=======
j++
=========或=========
++j
=========或=========
j=j+1=======(答案3)=======
result
第2题
功能:用等分法在有序的循环数组中,找到最小元素的位置。
#include <stdio.h>
int cyclic_min(int x[], int n)
{int left = 0;int right = n - 1;int mid;while (【 ? 】){mid = (left + right) / 2;if (x[mid] < x[right])【 ? 】;else【 ? 】;}return left;
}void main(void)
{int x[] = { 20, 23, 28, 35, 39, 40, 42, 8, 10, 15, 17, 19 };int n = sizeof(x) / sizeof(int);int loc, i;printf("\nFind Cyclic Minimum");printf("\n===================");printf("\n\nGiven Array Sorted in Cyclic Fashion :\n");for (i = 0; i < n; i++)printf("%3d", x[i]);loc = cyclic_min(x, n);printf("\n\nMinimum is located at x[%d] = %d", loc, x[loc]);
}
答案:
=======(答案1)=======
left < right
=========或=========
right>left=======(答案2)=======
right = mid=======(答案3)=======
left = mid + 1
=========或=========
left = 1+mid
五、程序改错 共2题 (共计10分)
第1题
题目:函数fun的功能是:求1到20的阶乘的和。请改正程序中的错误,使它能得出正确的结果。
fun()
{int n, j;float s = 0.0, t = 1.0;for (n = 1; n <= 20; n++){t = 1;for (j = 1; j <= n; j++)t = t * j;s + t = s;}printf("jiecheng=%d\n", s);
}main()
{fun();
}
答案:
=======(答案1)=======
s=s+t;
=========或=========
s+=t;=======(答案2)=======
printf("jiecheng=%f\n",s);
第2题
功能:求1到10的阶乘的和。
#include <stdio.h>
main()
{int i;float s = 0;float fac(int n);for (i = 1; i < 10; i++)s = fac(i);printf("%f\n", s);
}float fac(int n)
{int y = 1;int i;for (i = 1; i <= n; i++)y = y * i;return;
}
答案:
=======(答案1)=======
for(i=1;i<=10;i++)
=========或=========
for(i=1;10>=i;i++)
=========或=========
for(i=1;i<11;i++)
=========或=========
for(i=1;11>i;i++)=======(答案2)=======
s=s+fac(i);
=========或=========
s+=fac(i);
=========或=========
s=fac(i)+s;=======(答案3)=======
float y=1.0;
=========或=========
float y=1;=======(答案4)=======
return y;
=========或=========
return(y);
=========或=========
return (y);
六、程序设计 共2题 (共计32分)
第1题
题目:编程输出1~200之间所有能被12整除的整数。
要求:循环控制变量用i。
#include <stdio.h>
void main()
{/**********Program**********//********** End **********/
}
答案:
int i;for (i = 1; i <= 200; i++){if (i % 12 == 0)printf("%d ", i);}printf("\n");
第2题
题目:编写程序,从键盘输入2个字符串,分别存入字符数组s和t中(数组大小为40),比较这两个字符串,如果两个字符串相同,直接输出"Two strings are equal.",否则将较大的字符串之后与较小的字符串和字符串"end."连接后存入字符数组r中(数组大小为100),输出连接后的字符串r。
提示:程序应包含头文件 <string.h>
/**********Program**********//********** End **********/
答案:
#include <stdio.h>
#include <string.h> //1分
main()
{char s[40] = "", t[40] = "", r[100] = ""; //1分gets(s); //1分gets(t); //1分if (strcmp(s, t) == 0) //1分(含puts)puts("Two strings are equal.");else if (strcmp(s, t) > 0) //2分(含{ }分数){strcpy(r, s); //1分strcat(r, t); //1分strcat(r, "end."); //1分puts(r); //1分}else{strcpy(r, t); //1分strcat(r, s); //1分strcat(r, "end."); //1分puts(r); //1分}
}
若有错误或疑问,欢迎评论区留言讨论。
相关文章:

C语言计算机二级/C语言期末考试 刷题(五)
收集了一些经典C语言计算机二级和C语言期末考试题库 整理不易,大家点赞收藏支持一下 祝大家计算机二级和期末考试都高分过 系列文章: C语言计算机二级/C语言期末考试 刷题(一) C语言计算机二级/C语言期末考试 刷题(二…...

2023-04-03 grafana-源码编译启动及添加prometheus数据源
摘要: 记录grafana-源码编译启动及添加prometheus数据源 代码仓库: https://github.com/adofsauron/tiflow-dev/tree/main/trunk/grafana-9.4.7 依赖: 必须为go1.19版本,低于此版本则编译报错 go version go1.19.2 linux/amd64 yum install -y yarnpkg 编译: ht…...

微软New Bing(GPT-4)写的Delphi诗歌
你好,这是Bing。我很高兴你对Delphi感兴趣。Delphi是一种编程语言,可以用来开发各种应用程序。我尝试写了一首赞美Delphi的诗歌,希望你喜欢: Delphi,Delphi,你是我的灵感 你让我创造出美妙的程序 你的语法…...

【进程地址空间】
目录:前言一、进程地址空间(一)进程地址空间是什么(二)为什么要有进程地址空间(三)重新理解进程地址空间前言 打怪升级:第52天一、进程地址空间 打怪升级之路开始!&…...

递归dfs入门
做题方法:确定枚举顺序,画出递归树 递归实现指数型枚举 题目编号: acwing.92.递归实现指数型枚举 题目描述: 从 1∼n 这 n 个整数中随机选取任意多个,输出所有可能的选择方案。 输入格式: 输入一个整数 n…...

华为OD机试用java实现 -【吃火锅】
最近更新的博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为od机试,独家整理 已参加机试人员的实战技巧本篇题解:吃火锅 题目 入职后,导师会…...

AI创作优美文章的秘密大揭秘!
随着人工智能技术的快速发展和普及,越来越多的企业和研究机构开始使用AI编程来优化其业务流程和提高效率。AI编程可以被定义为利用人工智能技术来完成特定任务的一种方法。它涵盖了机器学习、深度学习、自然语言处理、计算机视觉等多个领域,可以帮助企业…...

SpringMVC的拦截器
SpringMVC的拦截器 SpringMVC的拦截器SpringMVC的拦截器01-SpringMVC拦截器-拦截器的作用(理解)02-SpringMVC拦截器-interceptor和filter区别(理解,记忆)03-SpringMVC拦截器-快速入门(应用)(1)项目前准备(2)快速入门01…...

dolphinscheduler-3.1.4
1、相关环境 1.1、创建用户,配置免密 useradd hadoop; echo "Hadoop#149" | passwd --stdin hadoop#配置sudo免密 sed -i $ahadoop ALL(ALL) NOPASSWD: NOPASSWD: ALL /etc/sudoers sed -i s/Defaults requirett/#Defaults requirett/g /etc/su…...

大前端05-用vue轻量级第三方组件库快速创建个画板,可以支持画板、直线、圆形等输入,可以撤回,改变颜色
第三方组件介绍: 1. vue-whiteboard vue-whiteboard 是一个基于Vue.js的轻量级画板组件库。 GitHub仓库: https://github.com/craynic/vue-whiteboard 优势: 轻量级支持基本绘图功能,如画线、圆等支持橡皮擦功能支持清空画布 劣势&…...

ChatGPT使用案例之生成PPT
ChatGPT使用案例之生成PPT ChatGPT使用案例系列我们一直在寻找ChatGPT在哪些方面可以可以帮我们节省时间提高效率,越来越多的用户发掘出了ChatGPT更多实用性的功能,其中一项便是协助用户快速生成PPT。 作为一个基于大型语言处理模型的文字聊天工具,ChatGPT能够帮助用户围绕…...

ChatGPT基础知识系列之模型介绍
ChatGPT基础知识系列之模型介绍 前面我们已经介绍很多ChatGPT的使用案例了,更多案例可以参考我们下面的文章 ChatGPT使用案例之写代码 ChatGPT使用案例之画思维导图 ChatGPT使用案例之自然语言处理 ChatGPT使用案例之操作Excel ChatGPT使用案例之图像生成 ChatGPT使用案…...

ChatGPT助力软件开发
抛开Stack Overflow不谈,开发人员有了一个新的好朋友,它就是ChatGPT。ChatGPT是由人工智能驱动的语言模型,可以理解代码,还可以用自然语言回答问题。有了它,程序员再也不用在无尽的Stack Overflow页面和评论中搜索答案…...

这些关于高压放大器的常识,你知道多少?(二)
高压放大器是一种用于放大高压信号的电子测量仪器,具有高压输出,低噪声,高精度,高稳定性,高可靠性,低功耗,低成本等的优点。关于高压放大器的相关常识,相信还有不少新手工程师不太了…...

使用神经网络中的卷积核生成语谱图
主题思想: 正交基函数, sin,cos 是通过网络训练得到的参数。 使用一维卷积核直接对于原始音频,进行卷积生成语谱图; 使用一维卷积核生成语谱图特征, 不同于以往的方式,正是因为这些正交基函数是通过卷积…...

文章五:Python 网络爬虫实战:使用 Beautiful Soup 和 Requests 抓取网页数据
一、简介 本篇文章将介绍如何使用 Python 编写一个简单的网络爬虫,从网页中提取有用的数据。我们将通过以下几个部分展开本文的内容: 网络爬虫的基本概念Beautiful Soup 和 Requests 库简介选择一个目标网站使用 Requests 获取网页内容使用 Beautiful Soup 解析网页内容提取…...

【大数据之Hadoop】八、MapReduce之序列化
1 概述 序列化: 把内存中的对象,转换成字节序列(或其他数据传输协议),以便于存储到磁盘(持久化)和网络传输。 反序列化: 将收到字节序列(或其他数据传输协议)…...

Python网络爬虫之Selenium详解
1、什么是selenium? Selenium是一个用于Web应用程序测试的工具。Selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。支持通过各种driver(FirfoxDriver,IternetExplorerDriver,OperaDriver,ChromeDriver)驱动真实浏览器…...

中睿天下受邀出席电促会第五次会员代表大会
3月21日,中国电力发展促进会(以下简称“电促会”)第五次会员代表大会暨第五届理事会第一次会议在京召开,中睿天下作为网络安全专业委员会会员单位受邀出席。 会议表决通过了第五次会员代表大会工作报告、第四届理事会财务报告、《…...

Chat GPT:软件测试人员的危机?
Chat GPT,作为一个引起科技巨头“红色警报”的人工智能语言模型,短期内便席卷全球,上线仅两个月活跃用户破亿。比尔盖茨更是如此评价“这种AI技术出现的重大历史意义,不亚于互联网和个人电脑的诞生。” 在各个行业备受关注的Chat …...

【Redis】高可用:Redis的主从复制是怎么实现的?
【Redis】高可用:主从复制详解 我们知道要避免单点故障,即保证高可用,便需要冗余(副本)方式提供集群服务。而Redis 提供了主从库模式,以保证数据副本的一致,主从库之间采用的是读写分离的方式。…...

WLAN速度突然变慢
目录 一、问题 二、在设置中重置网络 1. 按下组合键“WinI”打开设置,在设置窗口中点击“网络和Internet”。 2、点击左侧的“状态”,在右侧选择“网络重置”。 3、然后会进入“网络重置”页面,点击“立即重置”后点击“是”等待完成即可…...

GDAL python教程基础篇(12)GDAL和 Pillow 的互操作
GDAL和 Pillow GDAL和PIL处理和操作的对象都是栅格图像。 但它们又不一样。 GDAL主要重点放在地理或遥感数据的读写和数据建模以及地理定位和转换, 但是PIL的重点是放在图像本身处理上的。 至于在底层数据处理上,两者都可以用 numpy 转化的二进制作为数…...

快速学习java路线建议
还有2 ,3个月就要毕业了,啥都不会的你是不是很慌呢,是不是想知道怎么样快速学习java呢。嘿嘿!它来了。 首先是java的学习 ,推荐 【尚硅谷】7天搞定Java基础,Java零…...

【MySQL】深入浅出主从复制数据同步原理
【MySQL】深入浅出主从复制数据同步原理 参考资料: 全解MySQL之主从篇:死磕主从复制中数据同步原理与优化 MySQL 日志:undo log、redo log、binlog 有什么用? 文章目录【MySQL】深入浅出主从复制数据同步原理一、主从复制架构概述…...

Redis持久化和高可用
Redis持久化和高可用一、Redis持久化1、Redis持久化的功能2、Redis提供两种方式进行持久化二、RDB持久化1、触发条件2、bgsave执行流程3、启动时加载三、Redis高可用1、什么是高可用2、Redis高可用技术四、AOF持久化(支持秒级写入)1、开启AOF2、执行流程…...

【数据结构】第六站:栈和队列
目录 一、栈 1.栈的概念和结构 2.栈的实现方案 3.栈的具体实现 4.栈的完整代码 5.有效的括号 二、队列 1.队列的概念及结构 2.队列的实现方案 3.队列的实现 4.队列实现的完整代码 一、栈 1.栈的概念和结构 栈:一种特殊的线性表,其只允许在固定…...

python matplotlib 绘制训练曲线 综合示例——平滑处理、图题设置、图例设置、字体大小、线条样式、颜色设置
文章目录1 导出曲线数据2 python简单的 绘制曲线3 Savitzky-Golay 滤波器--平滑曲线4 对y轴数值缩放处理5 设置图题、图例、字体、网格、保存曲线图6 补充6.1 python 曲线平滑处理——方法总结-详解6.2 Tensorboard可视化训练曲线导出数据用Python绘制6.3 PyTorch可视化工具-Te…...

vue-element-plus-admin整合后端实战——实现系统登录、缓存用户数据、实现动态路由
目标 整合vue-element-plus-admin前端框架,作为开发平台的前端。 准备工作 前端选用vue-element-plus-admin,地址 https://gitee.com/kailong110120130/vue-element-plus-admin。 首先clone项目,然后整合到开发平台中去。这是一个独立的前…...

Shader Graph2-PBR介绍之表面属性(图解)
PBR的实现由光线和表面属性决定,下面我们介绍一下表面属性。这个5个属性在ShaderGraph的根节点是经常的看到,左侧是Unity中的,右侧是UE中的。 在没有Metallic金属的情况下,基础颜色值就决定了颜色的漫反射值,也就是说基…...