【1224】数据结构(sizeof/数组的长度定义/读取字符串函数/线性表长度/左值右值/静态变量/指针与引用)

news2025/2/14 4:18:55


 

1.对一维整型数组a的正确说明是 #define SIZE 10 (换行) int a[SIZE];说法是否正确?

正确

数组的SIZE可以用宏定义,但不能用变量

2.如有定义:char str[20];,能将从键盘输入的字符串“How are you”保存到 str 数组的语句是(   )

A scanf("%s", str);

B str[] = getch();

C gets(str);

D str = gets();

C gets(str);

A选项:scanf()函数里输入空格,会被系统当作输入字符串之间的分隔符,认为当前字符串已经结束。所以str[20]中实际存储的是"How"。

B选项:getch(),一次只能读取一个字符。

C选项:gets(str);可以读取字符串,以回车键作为结束标志

D选项:gets()函数用错了

2.线性表的长度是线性表所占用的存储空间的大小。 

线性表长度的定义是它所包含的元素的个数

元素的类型决定了元素所占用存储空间的大小,但元素的个数不等价于元素的类型

3.如下代码所示,分别用于统计字符串的长度(在32位系统里),那么输出的结果分别为()

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

#include<stdio.h>

void testArgs(char* s) {

        printf("%d\n"sizeof(s));

}

int main() {

        char s[] = "I want to go on vacation";

        printf("%d\n"sizeof(s));

        testArgs(s);

        return 0;

}

输出为 25,4

sizeof统计的是字符串s占用空间的大小(且包括结束符'\0',因此第一次输出的大小为25,当字符串s是通过参数传递到函数testArgs时,则函数会由指针s来指向传递的字符串这一片内存,因此第二次sizeof的时候,是对指向该字符串的指针变量长度的统计。

由于不同类型的指针变量长度都是一样的(不同机器可能存在差异),都是4字节长度。

4.int a=4,则对于表达式++(a++)的结果是什么()

没有结果,程序出错

a++后a=4

自增运算必须针对变量 而a++返回4 最后相当于++4 所以错误

a++是右值,不能再进行左值运算

5.以下程序能对两个整型变量的值进行交换。以下正确的说法是(        )

int main()

{

    swap(int p, int q);

    int a = 10, b = 20;

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

    swap(&a, &b);

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

}

swap(int p, int q)

{

    int t;

    t = p;

    p = q;

    q = t;

}

A 该程序完全正确

B 该程序有错,只要将语句swap(&a, &b);中参数改为a,b即可

C 该程序有错,只要将swap()函数中的参数p、q及t均定义为指针变量即可

D 以上说法都不正确

D 以上说法都不正确

第一种:使用引用 void swap(int &p,int &q){ int t; t=p;p=q;q=t; } 调用swap(a,b)

第二种:使用指针 void swap(int *p,int *q){ int t; t=*p;*p=*q;*q=t; } 调用swap(&a,&b) 

注意如果直接传递ab,函数里面的交换并不会影响函数外面的传参

 6.在C语言中,关于静态变量的说法,不正确的有()

A 函数中的静态变量,在函数退出后不被释放

B 静态变量只可以赋值一次,赋值后则不能改变

C 静态全局变量的作用域为一个程序的所有源文件

D 静态全局变量过大,可能会导致堆栈溢出

BCD

B选项:静态全局变量可以重复赋值

C选项:静态全局变量作用域为当前文件普通全局变量 作用域是整个程序

D选项:静态全局变量不是存在堆栈里的,所以不存在堆栈溢出,已经初始化存在数据段中,没有初始化的静态全局变量,存在BSS中

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

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

相关文章

强化特种作业管理,筑牢安全生产防线

在各类生产经营活动中&#xff0c;特种作业由于其操作的特殊性和高风险性&#xff0c;一直是安全生产管理的重点领域。有效的特种作业管理体系涵盖多个关键方面&#xff0c;从作业人员的资质把控到安全设施的配备维护&#xff0c;再到特种设备的精细管理以及作业流程的严格规范…

(六)循环神经网络_基本的RNN

一、提出背景 前馈神经网络不考虑数据之间的关联性&#xff0c;网络的输出只和当前时刻网络的输入相关。然而&#xff0c;现实问题中存在着很多序列型的数据&#xff08;文本、语音以及视频等&#xff09;。 例如&#xff1a;室外的温度是随着气候的变化而周期性的变化的&…

Dockerfile的用法

Dockerfile的用法 示例 `Dockerfile`使用 `Dockerfile` 创建 Docker 镜像`Dockerfile` 指令详解其他常用指令总结Dockerfile 是一个文本文件,包含了用于创建 Docker 镜像的一系列指令。这些指令描述了镜像的基础、所安装的软件、文件的复制、环境变量的设置以及其他配置。下面…

60.基于SSM的个人网站的设计与实现(项目 + 论文)

项目介绍 本站是一个B/S模式系统&#xff0c;个人网站是在MySQL中建立数据表保存信息&#xff0c;运用SSMVue框架和Java语言编写。并按照软件设计开发流程进行设计实现充分保证系统的稳定性。系统具有界面清晰、操作简单&#xff0c;功能齐全的特点&#xff0c;使得基于SSM的网…

B端UI设计规范是什么?

一、B端UI设计规范是什么&#xff1f; B端UI设计规范是一套针对企业级应用界面设计的全面规则和标准&#xff0c;旨在确保产品界面的一致性、可用性和用户体验。 二、B端UI设计规范要素说明 B端UI设计的基本要素包括设计原则、主题、布局、颜色、字体、图标、按钮和控件、交互…

GPT人工智能在医疗文档中的应用

应用场景 用于文档的整理。主要是针对医疗方面的文档整理。病人在打官司或者办理其他业务时&#xff0c;需要把很多文档整理成册并添加目录、编写概要&#xff08;Summary&#xff09;。这些文档有电子版本的&#xff0c;有纸质的扫描件&#xff0c;还有拍照&#xff08;一般是…

unity 打包出来的所有执行文件内容打包成一个exe程序

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、使用Enigma Virtual Box1.下载安装包&#xff08;根据需要32位还是64位。一般是64位&#xff09;2.改个语言&#xff0c;方便使用&#xff08;改了后重启才…

vtie项目中使用到了TailwindCSS,如何打包成一个单独的CSS文件(优化、压缩)

在不依赖 Vite 或其他构建工具的情况下&#xff0c;使用 TailwindCSS CLI 快速生成独立的 CSS 文件是一种简单高效的方法&#xff0c;适合需要纯样式文件的场景。 这个项目中&#xff0c;使用到了tailwindCss, 需要把里面的样式打包出来&#xff0c;给其他项目用。 使用命令生…

物联网网络中的设备认证方法

论文标题&#xff1a;DEVICE AUTHENTICATION METHOD IN INTERNET OF THINGS NETWORKS&#xff08;物联网网络中的设备认证方法&#xff09; 作者信息&#xff1a; A.Ya. Davletova&#xff0c;West Ukrainian National University, 11, Lvivska Str. Ternopil, 46009, Ukraine…

重温设计模式--迭代器模式

文章目录 迭代器模式&#xff08;Iterator Pattern&#xff09;概述迭代器模式的结构迭代器模式UML图C 代码示例应用场景 迭代器模式&#xff08;Iterator Pattern&#xff09;概述 定义&#xff1a; 迭代器模式是一种行为型设计模式&#xff0c;它提供了一种方法来顺序访问一个…

大数据机器学习算法和计算机视觉应用07:机器学习

Machine Learning Goal of Machine LearningLinear ClassificationSolutionNumerical output example: linear regressionStochastic Gradient DescentMatrix Acceleration Goal of Machine Learning 机器学习的目标 假设现在有一组数据 x i , y i {x_i,y_i} xi​,yi​&…

华院计算参与项目再次被《新闻联播》报道

12月17日&#xff0c;央视《新闻联播》播出我国推进乡村振兴取得积极进展。其中&#xff0c;华院计算参与的江西省防止返贫监测帮扶大数据系统被报道&#xff0c;该系统实现了由原来的“人找人”向“数据找人”的转变&#xff0c;有效提升监测帮扶及时性和有效性&#xff0c;守…

【视觉惯性SLAM:相机成像模型】

相机成像模型介绍 相机成像模型是计算机视觉和图像处理中的核心内容&#xff0c;它描述了真实三维世界如何通过相机映射到二维图像平面。相机成像模型通常包括针孔相机的基本成像原理、数学模型&#xff0c;以及在实际应用中如何处理相机的各种畸变现象。 一、针孔相机成像原…

使用RTP 协议 对 H264 封包和解包,h264的avpacket和NAL的关系

学习内容&#xff1a; 本章探讨如何将h264的 avpacket的视频 数据&#xff0c;通过RTP协议发送到 流媒体 服务器 或者 对端接受者。 前提 我们在将 YUV数据变成avframe后&#xff0c;通过h264 编码变成AVPacket&#xff0c;例如&#xff0c;在安防项目中&#xff0c;或者直播…

python 随笔80%核心笔记(一)

目录 一、海龟 二、pygame 三、函数 四、类与对象 五、列表与元组 六、其他 1、格式化输出 2、最大公约数、最小公倍数 3、print、多变量一起定义赋值、end以及列表的方法 4、序列重复、字符串方法、其他列表方法、input 5、字典的方法、ASCII码转换、返回值、修改私人…

MySQL数据库函数——字符函数

目录 引言 常用字符函数表 举例 例子一——工号前加0凑够5位 引言 字符函数&#xff0c;顾名思义就是运用在字符串的函数&#xff0c;下列是一些较为常用的字符函数。 常用字符函数表 函数功能concat&#xff08;S1,S2,.....Sn&#xff09;字符串拼接&#xff0c;将S1&…

算法练习——位运算

前言&#xff1a;位运算的方法大多比较抽象&#xff0c;很难想到。 一&#xff1a;判断字符是否唯一 题目要求&#xff1a; 解题思路&#xff1a; 法一&#xff1a;使用hash的思想&#xff0c;统计每一个字母出现的次数&#xff0c;再通过一次循环遍历查询是否有超过1的字母&…

TCN-Transformer+LSTM多变量回归预测(Matlab)添加气泡图、散点密度图

TCN-TransformerLSTM多变量回归预测&#xff08;Matlab&#xff09;添加气泡图、散点密度图 目录 TCN-TransformerLSTM多变量回归预测&#xff08;Matlab&#xff09;添加气泡图、散点密度图预测效果基本介绍程序设计参考资料 预测效果 基本介绍 基本介绍 1.双路创新&#xff…

【免费分享】mysql笔记,涵盖查询、缓存、存储过程、索引,优化。

概括 本篇笔记涵盖基础查询、视图、存储过程、函数、索引、优化、分库分表。适合在学完mysql后进行时常观看。下面展示部分内容。如果需要可以在文章底部的链接进行下载查看。 简介 数据库 数据库&#xff1a;DataBase&#xff0c;简称 DB&#xff0c;存储和管理数据的仓库…

DataSourceClosedException_ dataSource already closed

修改了项目中kafka相关配置&#xff0c;准备上线&#xff0c;控制台一直报错&#xff1a; 一直不停的在刷数据库连接池已关闭&#xff1f;&#xff1f;&#xff1f; 只改了kafka相关的配置&#xff0c;为什么数据库连接池一直在报错&#xff1f;即使kafka配置写错了&#xff…