当前位置: 首页 > news >正文

C语言--每日选择题--Day30

第一题

1. i = 5,j = 7,i | j 等于多少?

A:1

B:3

C:5

D:7

答案及解析 D

|这个是按位或运算符,两个数的二进制位,有1为1,同0为0;

i的二进制:0101

j的二进制:0111

结果:        0111 = 7

第二题

2. 编译和执行如下c语言代码,系统将会输出什么?

#include <stdio.h>
int main() 
{char c = '0';printf("%d %d", sizeof(c), sizeof(char));return 0;
}

A:1 4

B:2 2

C:1 1

D:2 1

答案及解析 C

sizeof是计算数据类型的空间;

这就表明了,sizeof括号里的变量是什么数据类型,计算出的结果就是该数据类型对应的字节,如果sizeof括号里面是个表达式,需要计算的,记住,sizeof只是算数据类型的空间,并不会计算表达式,只会推测这个表达式的数据类型;

第三题

3. 下面代码段输出的结果是()

int **pp, *p, a=10, b=20;
pp = &p;
p = &a;
p = &b;
printf("%d,%d", *p, **pp);

A:10 10

B:10 20

C:20 10

D:20 20

答案及解析 

这里是涉及一级指针和二级指针的知识,先给大家画个图:

首先pp是一个二级指针,存的是一级指针的地址,存的是p指针的地址;

其次p指针,先后存放的是a的地址,b 的地址

最后p是存b的地址;

一级指针存的是对应变量的地址,一级指针解引用是取到的这个变量;

二级指针存的是一级指针的地址,二级指针解引用一次,取到这个一级指针,再解引用是取到这个一级指针指向的变量;

第四题

4. 在64位系统以及64位编译器下,以下描述正确的是()

struct T 
{char a;int *d;int b;int c:16;double e;
};
T *p;

A:sizeof(p) == 24

B:sizeof(*p) == 24

C:sizeof(p->a) == 1

D:sizeof(p->e) == 4

答案及解析 

本题考查的是对指针类型的理解和结构体的内存对齐;

相关博客:C/C++内存对齐规则(结构体、联合体、类)-CSDN博客

64位系统的指针类型占8字节,32位系统的指针类型占4字节;

结构体类型指针,访问内部数据要用 ' -> ',结构体变量访问内部数据用 ' . '

A:错误:p是一个结构体指针类型,只要是指针就是4/8个字节,而系统为64位,结果为8

C:正确:p->a 的数据类型是char类型,字节为1,结果正确

D:错误:p->e 的数据类型是double,字节为8,错误

B:错误,需要计算结构体的内存,直接上图,知识点在上面博客:

这里有一个特殊的成员int c : 16;这个叫位段,简单理解就是你给c赋值,会发生截断(二进制),保留的位数就是冒号后面的值,这里也就是保留16个比特位;

比如你p->c = 10;

二进制:0000 0000 0000 1010

截断:0000 0000 0000 1010

结果:10

比如你的二进制位:1111 1010 0001 0101 0011

截断:1111 / 1010 0001 0101 0011

结果:1010 0001 0101 0011

第五题

5. 下列程序的运行结果是 3, 5,请为横线处选择合适的程序( )

#include <stdio.h>struct S
{int n;char c[10];
} *p;int main()
{struct S a[3] = {{3, "abc"}, {5, "def"}, {7, "ghi"}};p = a;printf("%d,", (*p).n);printf("%d\n", ______);return 0;
}

A:(++p) -> n

B:(a+1) -> n

C:p++ -> n

D:(p+1) -> n

答案及解析 ABD

首先这是一个结构体的数组,很容易理解;数组每一个元素都是结构体;

所以我们一步一步来;

要想找到5,就需要找到这个结构体数组的第二个元素

方式:a + 1,p + 1;

之后再取到对应的结构体内部成员

方式:(a + 1)->n,(p + 1)->n

A:正确,++p是前置++,返回的是++之后的值,相当于p+1

B:正确

C:错误,p++是后置++,返回的是++之前的值,相当于p,取到的是3

D:正确

相关文章:

C语言--每日选择题--Day30

第一题 1. i 5&#xff0c;j 7&#xff0c;i | j 等于多少&#xff1f; A&#xff1a;1 B&#xff1a;3 C&#xff1a;5 D&#xff1a;7 答案及解析 D &#xff5c;这个是按位或运算符&#xff0c;两个数的二进制位&#xff0c;有1为1&#xff0c;同0为0&#xff1b; i的二进…...

LeetCode 274. H指数——排序

274. H 指数 给你一个整数数组 citations &#xff0c;其中 citations[i] 表示研究者的第 i 篇论文被引用的次数。计算并返回该研究者的 h 指数。 根据维基百科上 h 指数的定义&#xff1a;h 代表“高引用次数” &#xff0c;一名科研人员的 h 指数 是指他&#xff08;她&…...

【洛谷 B2038】奇偶 ASCII 值判断 题解(顺序结构+取余)

奇偶 ASCII 值判断 题目描述 任意输入一个字符&#xff0c;判断其 ASCII 是否是奇数&#xff0c;若是&#xff0c;输出 YES&#xff0c;否则&#xff0c;输出 NO 。 例如&#xff0c;字符 A 的 ASCII 值是 65&#xff0c;则输出 YES&#xff0c;若输入字符 B(ASCII 值是 66…...

Ubuntu 20.4 源代码方式安装 cdo(笔记)

目录 动机安装过程python 调用cdo 动机 我找到的处理 era5-land 代码在需要用到 cdo&#xff0c;但是 sudo apt-get install cdo 总是出现 abort (core dump) 等问题&#xff0c;所以放弃这种安装方式&#xff0c;不走捷径&#xff0c;安装源代码&#xff0c;也就是 cdo-x.x.x…...

电子学会C/C++编程等级考试2022年12月(三级)真题解析

C/C++等级考试(1~8级)全部真题・点这里 第1题:鸡兔同笼 一个笼子里面关了鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物。 时间限制:1000 内存限制:65536输入 一行,一个正整数a (a < 327…...

二叉树的最近公共祖先(C++实现)

二叉树的最近公共祖先 题目思路代码&#xff08;详细注释&#xff09; 题目 二叉树的最近公共祖先 思路 我们可以通过两个栈来实现 实现一个FindPath函数&#xff0c;用来查找从根节点到目标节点的路径&#xff08;路径可以用栈来保存&#xff09; 路径保存好后&#xff0c;…...

【conda】容易遗忘的命令使用总结

1. 在空conda虚拟环境中安装python 退出到base环境 conda activate base 执行命令 conda install -n 空环境名 python版本名 例如&#xff1a; conda install -n test python3.10 2. 无需确认直接创建环境 在末尾加上-y&#xff0c;例如&#xff1a; conda create -n tes…...

蓝桥杯第一天-----时间显示

文章目录 前言一、题目描述二、测试用例三、题目分析四、具体代码实现总结 前言 本章中将相信介绍蓝桥杯中关于时间显示的题目。 链接&#xff1a;https://www.lanqiao.cn/problems/1452/learning/ 一、题目描述 二、测试用例 三、题目分析 1.输入的时间为毫秒&#xff0c;毫…...

多文件夹图片预处理:清除空值、重置大小、分割训练集

→ 清理空值 防止出现cannot identify image file 参考Python数据清洗----删除读取失败图片__简单版_python用pil读取图片出错删除掉-CSDN博客 import os import shutil import warnings import cv2 import iofrom PIL import Image warnings.filterwarnings("error&qu…...

【Java】集合 之 使用 Map

为什么使用Map 我们知道&#xff0c;List是一种顺序列表&#xff0c;如果有一个存储学生Student实例的List&#xff0c;要在List中根据name查找某个指定的Student的分数&#xff0c;应该怎么办&#xff1f; 最简单的方法是遍历List并判断name是否相等&#xff0c;然后返回指定…...

第二证券:股票几点到几点开盘?

作为股民或许投资者&#xff0c;我们都知道股票是每天都有开盘和收盘时间的。但是&#xff0c;关于股票的开盘时间&#xff0c;很多人并不是很清楚&#xff0c;特别是初学者。在本文中&#xff0c;我们将从多个视点分析股票开盘时间&#xff0c;并为大家供给一些有用的信息。 …...

goweb入门教程

本文是作者自己学习goweb时写的笔记&#xff0c;分享给大家&#xff0c;希望能有些帮助 前言&#xff1a; 关于web&#xff1a;本质 ​ ​ web中最重要的就是浏览器和服务器的request(请求)和response(响应)&#xff1b; ​ 一个请求对应一个响应。 一个请求对应一个响应&…...

量子计算:探索未来的计算技术

量子计算:探索未来的计算技术 引言 在过去的几十年里,我们见证了计算机技术从简单的计算和存储发展到复杂的数据处理和人工智能的飞速进步。然而,随着我们进一步探索科技的前沿,传统的计算方法开始显示出其局限性。在这种情况下,量子计算——一种基于量子力学原理的新型计…...

HarmonyOS应用开发者基础认证考试题目及答案

一、判断题 Ability是系统调度应用的最小单元&#xff0c;是能够完成一个独立功能的组件。一个应用可以包含一个或多个Ability。 正确(True) 所有使用Component修饰的自定义组件都支持onPageShow&#xff0c;onBackPress和onPageHide生命周期函数。 错误(False) 每调用一次ro…...

c# 文件读取和写入

文件写入 using System.Collections.Generic; namespace demo1;/// <summary> /// System.IO下的所有的Stream类是所有数据流的基类 /// 流是用于传输数据的对象&#xff0c;流就是用来传输数据的 /// 数据传输的两种方式&#xff1a;1、数据从外部源传输到程序中&#…...

【MySQL库的操作】

目录&#xff1a; 前言库的操作创建数据库字符集和校验规则校验规则对数据库的影响 选择和查看数据库修改数据库删除数据库备份注意事项查看连接情况 总结 前言 剑指offer&#xff1a;一年又二天 库的操作 创建、选择、查看、修改、删除与备份。 创建数据库 CREATE DATABASE…...

rocketmq 集群环境部署及与spring cloud 集成

1 下载zip 安装包 rocketmq-all-5.1.4-bin-release.zip 2 修改启动配置&#xff0c;防止默认内存配置过高 runserver.sh/runbroker.sh/tools.sh 3 启动namesrv nohup sh bin/mqnamesrv >>namesrv.log & 4 启动brokerproxy 单点模式&#xff1a; nohup sh bin…...

SpringBoot——配置及原理

优质博文&#xff1a;IT-BLOG-CN 一、Spring Boot全局配置文件 application.properties与application.yml配置文件的作用&#xff1a;可以覆盖SpringBoot配置的默认值。 ◀ YML&#xff08;is not a Markup Language&#xff1a;不仅仅是一个标记语言&#xff09;&#xff1…...

fiddler抓包安卓

一、打断点 1、安卓手机和电脑在同一局域网下&#xff0c;手机连接的网络开启手动代理&#xff0c;ip填写电脑ip&#xff0c;端口填写fiddler中配置的端口。 ip查看&#xff1a; 端口配置&#xff1a;tools-options-connections 2、安装证书&#xff0c;手机浏览器输入电脑ip…...

Maven 进阶学习指南---setting详解

前言 当我们在开发项目时&#xff0c;有时需要用到外部依赖组件&#xff0c;例如当我们需要 Json 序列化的时候需要用到 FastJson 组件&#xff0c;我们可以通过下载对应 jar 包加载到项目中。但当一个大的项目同时需要依赖各种各样的外部服务&#xff0c;就存在着配置繁琐、依…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

业务系统对接大模型的基础方案:架构设计与关键步骤

业务系统对接大模型&#xff1a;架构设计与关键步骤 在当今数字化转型的浪潮中&#xff0c;大语言模型&#xff08;LLM&#xff09;已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中&#xff0c;不仅可以优化用户体验&#xff0c;还能为业务决策提供…...

【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密

在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

Python爬虫实战:研究feedparser库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...

【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具

第2章 虚拟机性能监控&#xff0c;故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令&#xff1a;jps [options] [hostid] 功能&#xff1a;本地虚拟机进程显示进程ID&#xff08;与ps相同&#xff09;&#xff0c;可同时显示主类&#x…...

稳定币的深度剖析与展望

一、引言 在当今数字化浪潮席卷全球的时代&#xff0c;加密货币作为一种新兴的金融现象&#xff0c;正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而&#xff0c;加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下&#xff0c;稳定…...

均衡后的SNRSINR

本文主要摘自参考文献中的前两篇&#xff0c;相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程&#xff0c;其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt​ 根发送天线&#xff0c; n r n_r nr​ 根接收天线的 MIMO 系…...

Mobile ALOHA全身模仿学习

一、题目 Mobile ALOHA&#xff1a;通过低成本全身远程操作学习双手移动操作 传统模仿学习&#xff08;Imitation Learning&#xff09;缺点&#xff1a;聚焦与桌面操作&#xff0c;缺乏通用任务所需的移动性和灵活性 本论文优点&#xff1a;&#xff08;1&#xff09;在ALOHA…...

Webpack性能优化:构建速度与体积优化策略

一、构建速度优化 1、​​升级Webpack和Node.js​​ ​​优化效果​​&#xff1a;Webpack 4比Webpack 3构建时间降低60%-98%。​​原因​​&#xff1a; V8引擎优化&#xff08;for of替代forEach、Map/Set替代Object&#xff09;。默认使用更快的md4哈希算法。AST直接从Loa…...

android13 app的触摸问题定位分析流程

一、知识点 一般来说,触摸问题都是app层面出问题,我们可以在ViewRootImpl.java添加log的方式定位;如果是touchableRegion的计算问题,就会相对比较麻烦了,需要通过adb shell dumpsys input > input.log指令,且通过打印堆栈的方式,逐步定位问题,并找到修改方案。 问题…...