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

C语言—每日选择题—Day46

第一题

1. 下列程序段的输出结果是()

#include <stdio.h>
int main() 
{int x = 1,a = 0,b = 0;switch(x) {case 0:  b++;case 1:  a++;case 2:  a++;b++;}printf("a=%d,b=%d\n", a, b);return 0;
}

A:a=2,b=1

B:a=1,b=1

C:a=1,b=0

D:a=2,b=2

答案及解析 A

switch语句记住一点就是,当满足case的条件,如果case里面没有break,就会继续执行下面的所有语句;

所以x = 1;执行了case1,case2的语句;

第二题

2. 若二维数组a有m列,则在a[ i ] [ j ]前的元素个数为()

A:j * m + i

B:i * m + j

C:i * m + j - 1

D:i * m + j + 1

答案及解析 B

第i行,前面肯定是有0~i - 1行的,因为别忘了是从0下标开始的

所以0 ~ i - 1行一共有 i 行,每行有 m 列,那前 i 行一共就是  i * m 列 

那这一行 j 前面下标是 0 ~ j - 1,就是 j 个元素;

所以在a[ i ][ j ]之前的元素一共是i *m + j

第三题

3. 以下数据中,不正确的数值或字符常量是( )

A:c

B:66

C:0xaa

D:50

答案及解析 A

A:错误,单独的c,并不是 'c' ,所以不是表示的字符,这样直接的c,可以理解为16进制,但是前面没有0x,所以也不是16进制的表示方法,既不正确;

B:就是正常的int类型的数据

C:0x开头的是表示16进制的数字,范围就是0~9,a~f

D:正常的int类型

第四题(好题)

4. 以下程序的输出的结果是()

#include <stdio.h>
int x = 3;
void incre() 
{static int x = 1;x *= x + 1;printf("%d", x);
}
int main() 
{int i;for(i = 1; i < x; i++) {incre();}return 0;
}

A:33

B:22

C:26

D:25

答案及解析 C

本题涉及同名全局变量和静态变量;

局部静态变量只会初始化一次,在局部变量和全局变量名一样的时候,优先使用局部变量

所以在incre函数内部压根不会用到全局变量的x,在main函数中的x也不会用到incre的x,因为静态变量x的生命周期和作用域都是在incre上,所以即使是静态的,但是出了自己的作用域也不会发挥作用;最后我们只需要分清,在main函数的x是全局变量,在incre函数的x是static的局部变量就OK了;

第一次进入循环就是2;

第二次进入循环,由于静态局部变量只会初始化一次,所以x依旧是2,之后进行计算得6;

打印结果就是26;

第五题

5. 有以下程序,程序运行后的输出结果是()

float fun (int x, int y) 
{return (x+y);
}
int main() 
{int a=2, b=5, c=8;printf("%3.0f\n", fun( (int)fun(a+c, b) ,  a-c) );return 0;
}

A:编译出错

B:   9

C:21

D:9.0

答案及解析 B

本题涉及的知识点还是蛮杂的,涉及了强制类型转换,格式化打印格式和函数的调用做参数;这里直接讲解重点:

大家肯定是会算出来fun里面的fun(a+c, b)的值为15.000000

所以fun( (  int)fun(a + c, b)   ,   a-c   ) = fun(  (int)15.000000  ,   a-c )

强制类型转换为int类型,舍去小数部分为 fun(15, a-c) = 9.000000;

但是在格式化打印这里是规定的  %3.0f

这里小数点后面的数字是表示 保留几位小数,所以这里为0,就是不保留小数,也就是9;

但是小数点前面的数字表示的就是右对齐,数字是几,就右对齐几个空格位置,所以这里其实是先输出3个空格位置,再输出3;

这里我用hhh来区分,看的更明显

相关文章:

C语言—每日选择题—Day46

第一题 1. 下列程序段的输出结果是&#xff08;&#xff09; #include <stdio.h> int main() {int x 1,a 0,b 0;switch(x) {case 0: b;case 1: a;case 2: a;b;}printf("a%d,b%d\n", a, b);return 0; } A&#xff1a;a2,b1 B&#xff1a;a1,b1 C&#xf…...

flex布局,换行的元素上下设置间距

要生成的效果图如下&#xff1a; display:flexflex-direction: row;flex-wrap: wrap;当我们使用弹性盒子布局后&#xff0c;默认元素是没有外边距的&#xff0c;紧挨着样式就有点丑&#xff0c;如果想使换行后&#xff0c;元素的外边距有个距离&#xff0c;可以用如下方法解决…...

【智能家居】八、监控摄像采集、人脸识别比对进行开门功能点

一、使用 fswebcam 测试 USB 摄像头 二、根据demo来实现功能点 三、功能点编写编译运行实现 四、mjpg实现监控识别 五、V4L2 视频设备 Linux 内核模块的一部分 一、使用 fswebcam 测试 USB 摄像头 a. 安装 fswebcam orangepiorangepi:~$ sudo apt update orangepiorangepi:~…...

golang的文件操作

获取文件列表路径 package _caseimport ("fmt""log""os""strings" )// 获取文件路径 // 源文件目录 const sourceDir "file/"// 目标文件目录 const destDir "det_file/"// 拿到目录下完整的路径 func geFiles…...

数据库版本管理框架-Flyway(从入门到精通)

一、flyway简介 Flyway是一个简单开源数据库版本控制器&#xff08;约定大于配置&#xff09;&#xff0c;主要提供migrate、clean、info、validate、baseline、repair等命令。它支持SQL&#xff08;PL/SQL、T-SQL&#xff09;方式和Java方式&#xff0c;支持命令行客户端等&am…...

外网访问内网服务器使用教程

如何在任何地方都能访问自己家里的笔记本上的应用&#xff1f;如何让局域网的服务器可以被任何地方访问到&#xff1f;有很多类似的需求&#xff0c;我们可以统一用一个解决方案&#xff1a;内网穿透。内网穿透的工具及方式有很多&#xff0c;如Ngrok、Ssh、autossh、Natapp、F…...

C# Dictionary 利用 ContainsValue 查询指定值是否已经存在

.NET Framework : 4.7.2IDE : Visual Studio Community 2022OS : Windows 10 x64typesetting : Markdownblog : niaoge.blog.csdn.net 简介 本文介绍如何查询Dictionary 中某个值是否已经存在。 ContainsValue 命名空间: System.Collections.Generic 程序集: System.Collect…...

招不到人?用C语言采集系统批量采集简历

虽说现在大环境不太好&#xff0c;很多人面临着失业再就业风险&#xff0c;包括企业则面临着招人人&#xff0c;找对口专业难得问题。想要找到适合自己公司的人员&#xff0c;还要得通过爬虫获取筛选简历才能从茫茫人海中找到公司得力干将。废话不多说&#xff0c;直接开整。 1…...

HXDSP2441-Demo板

板卡图示 下图为HXDSP2441DEMO板&#xff0c;HXDSP2441DEMO板是围绕HXDSP2441构建的芯片演示验证平台。 板卡简介 除了为HXDSP2441芯片提供供电、时钟、储存、网络及调试电路&#xff0c;来实现芯片最基本的功能&#xff0c;也添加了相关模块以搭建HXDSP2441的典型应用场景…...

静态路由的原理和配置

一.路由器的工作原理 首先我们知道路由器是工作在网络层的&#xff0c;那就是三层设备。网络层的功能主要为&#xff1a;不同网段之间通信、最佳路径选择也就是逻辑地址&#xff08;ip地址&#xff09;寻址、转发数据。 1.路由器是什么 路由器是能将数据包转发到正确的目的地…...

Ubuntu20.04降低linux版本到5.4.0-26-generic

前言 试用ubuntu20.04安装昇腾的驱动和cann的时&#xff0c;出现如下问题&#xff1a; (base) rootubuntu:/home/work# ./Ascend-hdk-910-npu-driver_23.0.rc3_linux-aarch64.run --full Verifying archive integrity... 100% SHA256 checksums are OK. All good. Uncompr…...

C++ 类型萃取

什么是 type_traits 在C中&#xff0c;类型萃取&#xff08;type_traits&#xff09;是一种编译时技术&#xff0c;用于在编译期间获取和操作类型的信息。 主要用于泛型编程以及在编译时做出决策。 类型萃取可以帮我们检查和处理类型特性&#xff0c;从而优化代码、避免错误或…...

【JVM从入门到实战】(四)类的生命周期

什么是类的生命周期 类的生命周期描述了一个类加载、连接、初始化、使用、卸载的整个过程 一个类完整的生命周期如下&#xff1a; 加载阶段 加载阶段第一步是类加载器根据类的全限定名通过不同的渠道以二进制流的方式获取字节码信息。 程序员可以使用Java代码拓展的不同的渠道…...

2023年度美食关键词-葱油花卷

2023年即将过去了&#xff0c;总结这一年的美食关键词&#xff0c;对于我来就&#xff0c;应该就是-大葱了。 前一周&#xff0c;朋友送了我5大葱&#xff0c;在北方&#xff0c;大葱是家家户户必不可少的食材&#xff0c;尤其对于面食爱好者来说&#xff0c;大葱的加入无疑让…...

「Verilog学习笔记」简易秒表

专栏前言 本专栏的内容主要是记录本人学习Verilog过程中的一些知识点&#xff0c;刷题网站用的是牛客网 timescale 1ns/1nsmodule count_module(input clk,input rst_n,output reg [5:0]second,output reg [5:0]minute);always (posedge clk or negedge rst_n) begin if (~rst…...

《每天一个Linux命令》 -- (12) file命令

欢迎阅读《每天一个Linux命令》系列 &#xff01;在本篇文章中&#xff0c;将说明file命令用法。 概念 file命令是Linux系统下的文件类型识别命令&#xff0c;用于识别文件的类型。 命令操作 file命令的语法如下&#xff1a; file [选项] 文件命令详细解释 以下是 file 命…...

如何使用ArcGIS Pro制作类似CAD的尺寸注记

经常使用CAD制图的朋友应该比较熟悉CAD内的尺寸标注&#xff0c;这样的标注看起来直观且简洁&#xff0c;那么在ArcGIS Pro内能不能制作这样尺寸注记呢&#xff0c;答案是肯定的&#xff0c;这里为大家介绍一下制作的方法&#xff0c;希望能对你有所帮助。 数据来源 本教程所…...

Go语言bufio包的使用

准备文本文件 rpc_intro.txt RPC(Remote Procedure Call&#xff0c;远程过程调用)是一种计算机通信协议&#xff0c; 允许调用不同进程空间的程序。RPC 的客户端和服务器可以在一台机器上&#xff0c;也可以在不同的机器上。程序员使用时&#xff0c;就像调用本地程序一样&…...

计算机网络之IP篇

来源自小林Coding博客&#xff0c;阅读后部分精简笔记 目录 一、IP 的基本认识 二、DNS 三、ARP 四、DHCP 五、NAT 六、ICMP 七、IGMP 七、ping 的工作原理 ping-----查询报文的使用 traceroute —— 差错报文类型的使用 八、断网了还能 ping 通 127.0.0.1 吗&…...

Java中JDK类库常用的6种设计模式

Java中JDK类库常用的6种设计模式&#xff1a;1、抽象工厂。2、建造者模式。3、工厂模式。4、原型模式。5、单例模式。6、适配器模式。 1、抽象工厂 javax.xml.parsers.DocumentBuilderFactory抽象类。 public static DocumentBuilderFactory newInstance()方法。 类功能&…...

uniapp 对接腾讯云IM群组成员管理(增删改查)

UniApp 实战&#xff1a;腾讯云IM群组成员管理&#xff08;增删改查&#xff09; 一、前言 在社交类App开发中&#xff0c;群组成员管理是核心功能之一。本文将基于UniApp框架&#xff0c;结合腾讯云IM SDK&#xff0c;详细讲解如何实现群组成员的增删改查全流程。 权限校验…...

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

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

Java多线程实现之Callable接口深度解析

Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...

Cinnamon修改面板小工具图标

Cinnamon开始菜单-CSDN博客 设置模块都是做好的&#xff0c;比GNOME简单得多&#xff01; 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...

python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)

更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...

【JavaSE】绘图与事件入门学习笔记

-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角&#xff0c;以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向&#xff0c;距离坐标原点x个像素;第二个是y坐标&#xff0c;表示当前位置为垂直方向&#xff0c;距离坐标原点y个像素。 坐标体系-像素 …...

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...

嵌入式学习笔记DAY33(网络编程——TCP)

一、网络架构 C/S &#xff08;client/server 客户端/服务器&#xff09;&#xff1a;由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序&#xff0c;负责提供用户界面和交互逻辑 &#xff0c;接收用户输入&#xff0c;向服务器发送请求&#xff0c;并展示服务…...

JavaScript基础-API 和 Web API

在学习JavaScript的过程中&#xff0c;理解API&#xff08;应用程序接口&#xff09;和Web API的概念及其应用是非常重要的。这些工具极大地扩展了JavaScript的功能&#xff0c;使得开发者能够创建出功能丰富、交互性强的Web应用程序。本文将深入探讨JavaScript中的API与Web AP…...

BLEU评分:机器翻译质量评估的黄金标准

BLEU评分&#xff1a;机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域&#xff0c;衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标&#xff0c;自2002年由IBM的Kishore Papineni等人提出以来&#xff0c;…...