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 …...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...

【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)
概述 在 Swift 开发语言中,各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过,在涉及到多个子类派生于基类进行多态模拟的场景下,…...

Psychopy音频的使用
Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...
稳定币的深度剖析与展望
一、引言 在当今数字化浪潮席卷全球的时代,加密货币作为一种新兴的金融现象,正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而,加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下,稳定…...

视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)
前言: 最近在做行为检测相关的模型,用的是时空图卷积网络(STGCN),但原有kinetic-400数据集数据质量较低,需要进行细粒度的标注,同时粗略搜了下已有开源工具基本都集中于图像分割这块,…...

从“安全密码”到测试体系:Gitee Test 赋能关键领域软件质量保障
关键领域软件测试的"安全密码":Gitee Test如何破解行业痛点 在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的"神经中枢"。从国防军工到能源电力,从金融交易到交通管控,这些关乎国计民生的关键领域…...

springboot 日志类切面,接口成功记录日志,失败不记录
springboot 日志类切面,接口成功记录日志,失败不记录 自定义一个注解方法 import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target;/***…...