二级 C 语言笔试-16

一、选择题
1. 程序流程图中带有箭头的线段表示的是( )。 A) 图元关系 B) 数据流 C) 控制流 D) 调用关系
2. 下列描述中正确的是( )。 A) 程序就是软件 B) 软件开发不受计算机系统的限制 C) 软件既是逻辑实体,又是物理实体 D) 软件是程序、数据与相关文档的集合
3. 以下数据结构中,属于非线性数据结构的是( )。 A) 栈 B) 线性表 C) 队列 D) 二叉树
4. 在单链表中,增加头结点的目的是( )。 A) 方便运算的实现 B) 使单链表至少有一个结点 C) 标识表结点中首结点的位置 D) 说明单键表是线性表的链式存储实现
5. 在面向对象方法中,一个对象请求另一个对象为其服务的方式是通过发送( )。 A)调用语句 B)命令 C)N 令 D)消息
6. 有下列二叉树,对此二叉树前序遍历的结果为( )。
A) ACFXDBEYZ B) ABEFXYZCD C) ABCDEFXYZ D) ABDYECFXZ

7. 下列工具中为需求分析常用工具的是( )。 A) PAD B) PFD C) N-S D) DFD
8. 下列说法不正确的是( )。 A) C 程序是以函数为基本单位的,整个程序由函数组成 C) C 语言程序的一条语句可以写在不同的行上 B) C 程序的注释行对程序的运行功能不起任何作用,所以注释应该尽可能少写 D) C 程序的每个语句都以分号结束
9. 计算机能直接执行的程序是______。 A) 源程序 B) 目标程序 C) 汇编程序 D) 可执行程序
10. 若函数中有定义语句:int k;,则______。 A) 系统将自动绐 K 赋初值 0 B) 这时 K 中的值无定义 C) 系统将自动绐 K 赋初值-1 D) 这时 K 中无任何值
11. 以下不正确的转义字符是( )。 A) '\\' B) '\d' C) '\s' D) '088'
12. 若 w、x、y、z、m 均为 int 型变量,则执行下列的语句后 m 的值是( )。 w=2,x=3,y=4,z=5; m=(w<x)?w:x; m=(m<z)?m:z; m=(m<y)?m:y;
A) 2 B) 3 C) 5 D) 4
13. 有以下程序: #include<stdio.h> main() char a,b,c,d; scanf("%c%c",&a,&b); c=getchar();d=getchar();

printf"%c%c%c%c\n",a,b,c,d;
当执行程序时,按下列方式输入数据(从第 1 列开始,<CR>代表回车,注意:回车也 是一个字符)
12<CR> 34<CR> 则输出结果是( )。 A.1234 B.12 C.12 3 D.12 34
14. 设变量均已正确定义,若要通过 scanf("%d%c%d%c",&a1,&c1,&a2,&c2);语句为变量 a1 和 a2 赋数值 10 和 20,为变量 c1 和 c2 赋字符 X 和 Y。以下所示的输入形式中正确的是(注: □代表空格字符)
A) 10□X□20□Y B) 10□X20□Y C) 10□X
20□Y D) 10X
20Y
15. 设有定义 int a; float b;执行 scanf("%2d%f",&a,&b);语句时,若从键盘输入 876 543.0<回 车>,a 和 b 的值分别是______。 (A) 876 和 543.000000 (B) 87 和 6.000000 (C) 87 和 543.000000 (D) 76 和 543.000000
16. 若变量已正确定义,下列正确的程序段是( )。 A) while(ch=getchar()=='\N')putchar(ch); B) while((ch=getchar())=='\n')putchar(ch); C) while((ch=getchar())!='\N')putchar(ch); D) while((ch=getchar())!='\n')putchar(ch);
17. 有下列函数定义:

int fun(double a,double b) return a*b; 若下列选项中所用变量都已正确定义并赋值,错误的函数调用是( )。 A) if(fun(x,y))…… B) z=fun(fun(x,y),fun(x,y)); C) z=fun(fun(x,y)x,y); D) fun(x,y);

18. 有下列程序: fun(int x,int y) static int m=0,i=2; i+=m+1;m=i+x+y;return m;

main() int j=1,m=1,k;
k=fun(j,m);printf("%d,",k); k=fun(j,m);printf("%d\n".k);

执行后的输出结果是( )。 A) 5,5 B) 5,11 C) 11,11

D) 11,5

19. 表达式'8'-'2'的值是( )。 A) 整数 6 B) 字符 6 C) 表达式不合法 D) 字符 8

20. 下列选项中不是字符常量的是( )。

A) '\v'

B) '\x2a'

C) 'a'

D) "\0\

21. 已有定义:char a[]="xyz", b[]='x', 'y', 'z';,下列叙述中正确的是( )。 A) 数组 a 和 b 的长度相同 B) a 数组长度小于 b 数组长度 C) a 数组长度大于 b 数组长度 D) 上述说法都不对

22. 设有定义:char s[10];int i=0;,以下不能将一行(不超过 100 个字符)带有空格的字符串 正确读入的语句或语句组是( )。
A) gets(s); B) scanf("%s",s); C) while((s[i++]=getchar())!='\n');s[i]='\0'; D) doscanf("%c",&s[i]);while(s[i++]!='\n');s[i]='\0';

23. 下列合法的字符型常量是( )。

A) '\x13' B) '\081' C) '65' D) "\n\
24. 对两个数组 a 和 b 进行下列初始化: char m[]="1234567"; char n[]='1','2','3','4','5','6','7'; 则下列叙述正确的是( )。 A) 数组 m 与数组 n 完全相同 B) 数组 m 与数组 n 长度相同 C) 数组 m 比数组 n 长 1 D) 数组 m 与数组 n 中都存放字符串
25. 下列结构体类型说明和变量定义中正确的是( )。 A) typedef struct int n; char c;REC; REC t1,t2; B) struct REC; int n; char c;; REC t1,t2; C) typedef struct REC; int n=0; char c='A'; t1,t2; D) stmct int n; char c; REC; REC t1,t2;
26. 以下程序运行后的输出结果是 #include<stdio.h> main( ) int i=5; do if(i%3==1 if(i%5==2) printf("*%d",i);break; i++: while(i!=0); printf("\n");
A) %7 B) *3*5 C) *5 D) *2*6
27. 以下程序运行后的输出结果是 int f(int n) if(n==1)return 1; else return f(n-1)+1;

main( ) int i,j=0; for(i=1;i<3;i++) j+=f(i); printf("%d\n",j);
A) 4 B) 3 C) 2 D) 1
28. 设变量已正确定义,则下列能正确计算 f=n!的程序段是( )。 A) f=0; for(i=1 ;i<=n;i+ +) f*=i;
B) f=1; for(i=1;i<n;i+ +) f*=i;
C) f=1; for(i=n;i>1;i+ +)f*=i;
D) f=1; for(i=n;i>=2;i--)f*=i;
29. 若有说明语句:double*p,a;则能通过 scanf 语句正确给输入项读入数据的程序段是( )。 A) *p=&a;scanf("%1f",p); B) *p=&a;scanf("%f",p); C) p=&a;scanf("%1f",*p); D) p=&a;scanf("%1f",p);
30. 有以下程序,其中函数 f 的功能是将多个字符串按字典顺序排序: #include<string.h> voidf(char*p[],intn) char*t;int i,j; for(i=0;i<n-1;i++) for (j=i+1;j<n;j++) if(strcmp(p[i],p[j])>0)
t=p[i]; p[i]=p[j]; p[j]=t;
main() char*p[5]="abc","aabdfg","abbd","dcdbe","cd";
f(p,5); printf("%d\n",strlen(p[1]));
程序运行后的输出结果是______。

A) 2 B) 3 C) 6 D) 4
31. 对于下列字符串,说明表达式 strlen(s) 值的是( )
char s[10]=('a','\n','a','b','\t','c'; A) 10 B) 1 C) 6 D) 7
32. 有以下程序: #define f(x)(x*x) main() int i1,i2; i1=f(8)/f(4);i2=f(4+4)/f(2+2); printf("%d,%d\n",i1,i2);
程序运行后的输出结果是______。 A) 64,28 B) 4,4 C) 4,3 D) 64,64
33. 以下程序的输出结果是 char cchar(char ch) if(ch>='A' &&ch<='Z') ch=ch-'A'+'a'; return ch;
main( ) char s[]="ABC+abc=defDEF",*p=s; while(*p) *p=cehar(*p);p++; printf("%s\n",s);
A) abc+ABC=DEFdef B) abe+abe=defdef C) abcABCDEFdef D) abcabcdefdef
34. C 语言结构体类型变量在程序执行期间( )。 A) 所有成员一直驻留在内存中 B) 没有成员驻留在内存中 C) 部分成员驻留在内存中 D) 只有一个成员驻留在内存中
35. 以下程序段的输出结果是 int r=8; printf("%d\n", r >>1); A) 16 B) 8 C) 4 D) 2

36. 有以下程序 #include<stdio.h> main() short c=124; c=c______; printf("%d\n",c);
若要使程序的运行结果为 248,应在下划线处填入的是( )。 A) >>2 B) |248 C) &0248 D) <<1
37. 设 fp 已定义,执行语句 fp=fopen("file", "w");后,以下针对文本文件 file 操作叙述的选项 中正确的是______。
A) 写操作结束后可以从头开始读 B) 只能写不能读 C) 可以在原有内容后追加写 D) 可以随意读和写
38. 读取二进制文件的函数调用形式为:fread(buffer,size,count,pf);,其中 buffer 代表的 是______。
A) 一个文件指针,指向待读取的文件 B) 一个整型变量,代表待读取的数据的字节数 C) 一个内存块的首地址,代表读入数据存放的地址 D) 一个内存块的字节数
39. 标准库函数 fgets(s,n,file)的功能是( )。 A) 从文件 file 中读取长度为 n 的字符串存入字符数组 s 中 B) 从文件 file 中读取长度不超过 n-1 个字符的字符串放到字符数组 s 中 C) 从文件 file 中读取 n 个字符串存入字符数组 s 中 D) 从文件 file 中读取长度为 n-1 个字符的字符串存入字符数组 s 中
40. 下面判断正确的是( )。 A) char *a="china";等价于 char *a;*a="ghina"; B) char str[5]="china";等价于 char str[]="china"; C) char*s="china";等价于 char*s;s="china"; D) charc[4]="abc",d[4]="abc";等价于 char c[4]=d[4]="abc";

二、填空题

41. 某二叉树中度为 2 的结点有 18 个,则该二叉树中有

个叶子结点。

42. 在关系数据库中,把数据表示成二维表,每一个二维表称为

43. 数据库系统的三级模式分别为

模式、内部级模式与外部级模式。

44. 某二叉树中度为 2 的结点有 18 个,则该二叉树中有______个叶子结点。

45. 一个关系表的行称为______。

46. 以下程序用于判断 a、b、c 能否构成三角形,若能,输出 YES,否则输出 NO。当给 a、 b、c 输入三角形三条边长时,确定 a、b、c 能构成三角形的条件是需同时满足三个条件:a+b >c,a+c>b,b+c>a。请填空。
main() float a,b,c; scanf("%f%f%f",&a,&b,&c); if(_______)printf("YES\n"); /*a、b、c 能构成三角形*/ else printf("NO\n"); /*a、b、c 不能构成三角形*/

47. 与表达式 a+=b 等价的另一书写形式是______。

以下 isprime 函数的功能是:判断形参 a 是否为素数,是素数,函数返回 1,否则返回 0。请 填空。

int isprime(int a)

int i;

for(i=2;i<=a/2;i++)

if(a%i==0)

48. 49.

以下 isprime 函数的功能是:判断形参 a 是否为素数,是素数,函数返回 1,否则返回 0。请 填空。

int isprime(int a)

int i;

for(i=2;i<=a/2;i++)

if(a%i=0)

50.
51. 下面程序的功能是:将 N 行 N 列二维数组中每一行的元素进行排序,第 0 行从小到大排序, 第 1 行从大到小排序,第 2 行从小到大排序,第 3 行从大到小排序,例如:

请填空。

#define N 4

void sort(int a[][N])

int i,j,k,t;

for(i=0;i<N;i++)

for(j=0;j<N-1;j++)

for(k=

;k<N;k++)

/*判断行下标是否为偶数来确定按升序或降序来排序*/

if(

?a[i][j]<a[i][k]:a[i][j]>a[i][k])

t=a[i][j];

a[i][j]=a[i][k];

a[i][k]=t;

void outarr(int a[N][N]) …
main() int a[N][N]=2,3,4,1),8,6,5,7,11,12,10,9,15,14,16,13; outarr(aa);/*以矩阵的形式输出二维数组*/ sour(aa); outarr(aa);

52. 53. 54. 设有以下结构体类型:
Struct st char name[8]; int num;

float s[4]; student[50]; 并且结构体数组 student 中的元素都已有值,若要将这些元素写到硬盘文件 fp 中。请将 以下 fwrite 语句补充完整: fwrite(student,______,1,fp);

55. 以下 sstrcpy()函数实现字符串复制,即将 t 所指字符串复制到 s 所指内存空间中,形成 一个新字符串 s。请填空。

void sstrcpy(char *s,char *t)

while( *s++=

);

main()

char strl[100],str2[]="abcdefgh";

sstrcpy(str1,str2);

printf("%s\\n",str1);

56. 设有定义:FILE*fw;,请将以下打开文件的语句补充完整,以便可以向文本文件 read me.txt 的最后续写内容。
fw=fopen("readme.txt","______")
57. 下面程序的运行结果是______。 #define P(a)printf("%d",a) main() int j,a[]=1,2,3,4,5,6,7,i=5; for(j=3;j>1;j--) switch(j) case 1: case 2:P(a[i++]);break; case 3:P(a[--i]);

58. 以下程序运行后的输出结果是______。 main() char c1,c2; for(c1='0',c2='9';c1<c2;c1++,c2--) printf("%c%c",c1,c2); printf("\n");

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/690807.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Nginx https反向代理

接前一篇文章,今天看看https的反向代理怎么配置。 生成自签名证书和私钥 要使用https,首先需要有证书和私钥,这里创建一个测试用的自签名证书和私钥。 使用 openssl 命令生成服务器私钥文件 openssl genrsa -out server.key 2048生成证书…

Golang - 使用CentOS 7 安装Golang环境

文章目录 操作步骤 操作步骤 为在CentOS 7上安装Go语言环境,可以按照以下步骤进行操作: 下载Go语言包: 从官方网站 https://golang.org/dl/ 下载适用于Linux的Go语言包。 解压缩Go语言包: 使用以下命令解压缩下载的Go语言包 […

CyberDAO:web3时代的引领者

Web3.0正在改写着世界运行的规则,AGI将为人类未来的生产效率、工作方式与目标带来改变,区块链经过十余年发展开启了去中心化新格局,带来生产关系的变革。人类正在从过往以时间换取收入、听命完成工作,转变为以个性化、自主追求人生…

OpenAI Sora视频模型技术原理报告解读

▌01. OpenAI Sora 视频生成模型技术报告总结 •不管是在视频的保真度、长度、稳定性、一致性、分辨率、文字理解等方面。 •技术细节写得比较泛(防止别人模仿)大概就是用视觉块编码(visual patch)的方式,把不同格…

数据采集三防平板丨三防平板电脑丨停车场应用

随着现代科技的不断发展,三防平板已经成为许多人工作和生活的必备工具。在停车场这个场景中,三防平板的应用可以大大提高停车场管理的效率和安全性。 停车场是现代城市交通管理的重要组成部分,它直接关系到城市交通的流畅和公共安全。停车场…

RK3588平台开发系列讲解(视频篇)ffmpeg 的移植

文章目录 一、ffmpeg 介绍二、ffmpeg 的组成三、ffmpeg 依赖库沉淀、分享、成长,让自己和他人都能有所收获!😄 📢ffmpeg 是一种多媒体音视频处理工具,具备视频采集功能、视频抓取图像、视频格式转换、给视频加水印并能将视频转化为流等诸多强大的功能。它采用 LGPL 或 G…

C++知识点总结(16):结构体排序

课程大纲 一、常见排序方法1. 桶排序2. 冒泡排序3. 选择排序4. 插入排序 二、结构体排序1. 融入实际2. 认识结构体2.1 概念2.2 框架2.2.1 存储2.2.2 输入输出2.2.3 结构体数组2.2.4 例题2.2.4.1 结构体读写2.2.4.2 结构体交换 三、sort函数1. 使用方法2. 固定格式 四、结构体和…

Rofin罗芬Laser激光DQ80设备操作说明书

Rofin罗芬Laser激光DQ80设备操作说明书

计算机视觉的应用23-OpenAI发布的文本生成视频大模型Sora的原理解密

大家好,我是微学AI,今天给大家介绍一下计算机视觉的应用23-OpenAI发布的文本生成视频大模型Sora的原理解密。本文概况性地将Sora模型生成视频主要分为三个步骤:视频压缩网络、空间时间潜在补丁提取以及视频生成的Transformer模型。 文章目录…

【lesson62】网络通信UdpSocket版

文章目录 UdpSocketUdpServer.hppUdpServer类成员变量解释成员函数解释 UdpServer的实现ServerIinit的实现socketbindhtonsinet_addr具体实现 ServerStart的实现recvfromsendtontohsinet_ntoa具体实现 ~UdpServer函数实现UdpServer.hpp整体完整代码 UdpServer.ccUdpClient.ccTh…

CDP和Chrome

CDP和Chrome CDP和WebDriver Protocol WebDriver和 Chrome DevTools Protocol(CDP) 是用于自动化浏览器的两个主要协议,大多数的浏览器自动化工具都是基于上述其中之一来实现的。可以通过这两种形式来和浏览器交互,通过代码来控…

拉链表的概念设计与实现

拉链表 一、概念 拉链表是针对数据仓库设计中表存储数据的方式而定义的,所谓拉链,就是记录历史。记录一个事物从开始,一直到当前状态的所有变化的信息。 用处: 解决持续增长且存在一定时间时间范围内重复的数据 场景&#xff1…

ElementUI +++ Echarts面试题答案汇总

官网地址:http://element-cn.eleme.io/#/zh-CN ElementUI是一套基于VUE2.0的桌面端组件库,ElementUI提供了丰富的组件帮助开发人员快速构建功能强大、风格统一的页面。 ElementUi是怎么做表单验证的?在循环里对每个input验证怎么做呢&#x…

探索海洋世界,基于DETR(DEtection TRansformer)模型开发构建海洋场景下海洋生物检测识别分析系统

前面的博文中,开发实践过海底相关生物检测识别的项目,对于海洋场景下的海洋生物检测则很少有所涉及,这里本文的主要目的就是想要开发构建基于DETR的海洋场景下的海洋生物检测识别系统。 首先看下实例效果: DETR (DEtection TRans…

【机器学习笔记】 15 机器学习项目流程

机器学习的一般步骤 数据清洗 数据清洗是指发现并纠正数据文件中可识别的错误的最后一道程序,包括检查数据一致性,处理无效值和缺失值等。与问卷审核不同,录入后的数据清理一般是由计算机而不是人工完成。 探索性数据分析(EDA 探索性数据…

Elasticsearch查询报错 Result window is too large

一现象: es数据分页查询前端提示系统异常,后端报错日志 二根本原因: 默认情况下,Elasticsearch 限制了 from size 参数的组合不能超过 10,000 条记录,用于防止查询大数据集时对系统资源的过度消耗 三解决办法&#…

沁恒CH32V30X学习笔记09---使用TIM 外部时钟1模式实现硬件计数

TIM 外部时钟1使用 定时器时钟 通过框图可知;外部时钟1模式下仅仅只有通道1 和通道2 可以输入脉冲 简单示例教程 void TIM1_ETRClockMode1_Init(void) {RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1, ENABLE);TIM_CounterModeConfig(TIM1, TIM_CounterMode_Up)

机器学习---强化学习

1. 什么是强化学习 在连接主义学习中,在学习的方式有三种:非监督学习(unsupervised learning)、监督学习 (supervised leaning)和强化学习。监督学习也称为有导师的学习,需要外界存在一个“教师”对给定 输入提供应有的输出结果&#xff0…

Android 11.0 mtp在锁屏模式和息屏时禁止访问mtp文件夹功能实现

1.前言 在11.0的系统rom产品定制化开发中,由于系统对于mtp模式访问文件夹没有限制,就是在锁屏息屏状态下也是可以访问文件夹的,由于产品的需要 要求在锁屏和息屏的情况下,禁止访问文件夹,就是需要实现如图效果 2.mtp在锁屏模式和息屏时禁止访问mtp文件夹功能实现的核心…

前端自动生成二维码并长按识别跳转 Vue

下载arale-qrcode依赖&#xff1a; npm i arale-qrcode --save引用依赖&#xff1a; import AraleQRCode from "arale-qrcode";代码部分&#xff1a; <template><div class"container">// 生成二维码按钮<van-button click"getErwe…