C语言—每日选择题—Day46

news2024/11/23 0:42:04

第一题

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来区分,看的更明显

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

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

相关文章

面试必备的Linux常用命令

「作者主页」&#xff1a;士别三日wyx 「作者简介」&#xff1a;CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」&#xff1a;对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 Linux常用命令 1、文件及内容2、网络3、进程服务4、…

binlog+mysqldump恢复数据(误删数据库或者表)

表删除恢复 1、准备数据 首先准备数据库环境&#xff0c;测试数据库为speech1&#xff0c;如下&#xff1a; 为test数据表添加3条记录&#xff0c;如下&#xff1a;三行为新加的记录&#xff0c;添加后将test表删除。 2、恢复数据 查看binlog日志状态 SHOW MASTER STATUS…

【FPGA】综合设计练习题目

前言 这是作者这学期上的数电实验期末大作业的题目&#xff0c;综合性还是十分强的&#xff0c;根据组号作者是需要做“4、篮球比赛计分器”&#xff0c;相关代码会在之后一篇发出来&#xff0c;这篇文章用于记录练习题目&#xff0c;说不定以后有兴趣或者有时间了回来做做。 …

逆变器的防孤岛测试保护方案

逆变器的防孤岛测试保护方案是为了确保逆变器在发生故障或停电时能够及时停止供电&#xff0c;避免孤岛现象的发生。孤岛现象指的是当电网停电或发生故障时&#xff0c;逆变器仍然继续供电&#xff0c;可能会对电网维护人员和设备造成安全隐患。逆变器会通过监测电网的状态来判…

深入理解网络 I/O 多路复用:Epoll

&#x1f52d; 嗨&#xff0c;您好 &#x1f44b; 我是 vnjohn&#xff0c;在互联网企业担任 Java 开发&#xff0c;CSDN 优质创作者 &#x1f4d6; 推荐专栏&#xff1a;Spring、MySQL、Nacos、Java&#xff0c;后续其他专栏会持续优化更新迭代 &#x1f332;文章所在专栏&…

Visual Studio调试技巧合集

Visual Studio调试技巧合集 1 如何同一个项目运行不同main文件&#xff1f; 1 如何同一个项目运行不同main文件&#xff1f; &#xff08;1&#xff09;移动鼠标到需要关掉调试的文件&#xff0c;点击右键属性–常规–从生成中排除–是–确定&#xff0c;即显示“-”号排除&am…

python实现形态学建筑物指数MBI提取建筑物及数据获取

前言 形态学建筑物指数MBI通过建立建筑物的隐式特征和形态学算子之间的关系进行建筑物的提取[1]。 原理 上图源自[2]。 实验数据 简单找了一张小图片&#xff1a; test.jpg 代码 为了支持遥感图像&#xff0c;读写数据函数都是利用GDAL写的。 import numpy as np import …

【数据结构(十一·多路查找树)】B树、B+树、B*树(6)

文章目录 1. 二叉树 与 B树1.1. 二叉树存在的问题1.2. 多叉树 的概念1.3. B树 的基本介绍 2. 多叉树——2-3树2.1. 基本概念2.2. 实例应用2.3. 其他说明 3. B 树、B树 和 B*树3.1. B树 的介绍3.2. B树 的介绍3.2. B*树 的介绍 1. 二叉树 与 B树 1.1. 二叉树存在的问题 二叉树…

【FPGA/verilog -入门学习7】 条件判断if与分支判断case语句的语法介绍

需求 使用if 和case 产生格雷码 / /*条件判断if与分支判断case语句的语法介绍 需求 使用if 和case 产生格雷码*/ / timescale 1ns/1ps module vlg_design(input [3:0] i_data, output reg [3:0] o_data,output reg [3:0] o_datac);always (*) begin if (4b0000 i_data) o_d…

ros的slam建图和导航(含工作空间)

工作空间的结构 准备工作 创建工作空间&#xff08;ros_zy&#xff09; mkdir ros_zy进入工作空间 cd ros_zy创建src文件夹&#xff08;放源程序&#xff09; mkdir src编译工作空间 catkin_make打开vscode&#xff08;从终端打开此工程&#xff09; code .进入工作空间的…

如何查看自己的文章是否被数据库收入?【查收查引】

致谢&#xff1a;特别感谢图书馆的蔡老师&#xff0c;告诉我怎么操作&#xff01; 另外&#xff0c;查收查引报告中的文章可以分开开&#xff0c;放在一起开不是必须的。&#xff08;放在一起开大概是院士工作量需要的。不是很了解。&#xff09; 如何查看自己的文章是否被数据…

tomcat部署以及虚拟主机的部署

Tomcat概述 Tomcat是Java语言开发的&#xff0c;服务器是一个免费的开放源代码的Web应用服务器&#xff0c;属于轻量级应用服务器&#xff0c;在中小型系统和并发访问用户不是很多的场合下被普遍使用&#xff0c;是开发和调试JSP程序的首选。一般来说&#xff0c;Tomcat虽然和…

c语言 词法分析器 《编译原理》课程设计

设计、编制并调试一个词法分析程序&#xff0c;加深对词法分析原理的理解。 针对表达各类词语的一组正规表达式&#xff0c;设计一个确定化的最简的有限自动机&#xff0c;对输入的符号串进行单词划分及词类识别。 要求词法分析器的输入是字符串&#xff0c;输出是源程序中各…

苍穹外卖项目笔记(8)— 缓存商品、购物车功能

前言 代码链接&#xff1a; Echo0701/take-out⁤ (github.com) 1 缓存菜品 1.1 问题说明 【注】很多时候系统性能的瓶颈就在于数据库这端 1.2 实现思路 通过 Redis 来缓存数据&#xff0c;减少数据库查询操作 【注】Redis 基于内存来保存数据的&#xff0c;访问 Redis 数据…

python:五种算法(GA、OOA、DBO、SSA、PSO)求解23个测试函数(python代码)

一、五种算法简介 1、遗传算法GA 2、鱼鹰优化算法OOA 3、蜣螂优化算法DBO 4、麻雀搜索算法SSA 5、粒子群优化算法PSO 二、5种算法求解23个函数 &#xff08;1&#xff09;23个函数简介 参考文献&#xff1a; [1] Yao X, Liu Y, Lin G M. Evolutionary programming made…

JVS物联网、低代码、智能BI本周更新功能已上线

物联网应用更新功能 新增: 1.新增驱动管理功能&#xff0c;可新增、编辑、修改、删除、查看驱动实例&#xff1b; 驱动管理功能主要负责管理物联网设备的驱动实例。这些驱动实例可以新增、编辑、修改、删除或查看。通过这些驱动实例&#xff0c;平台可以与设备进行通信&…

Git 常用命令速查

一、 Git 常用命令速查 git branch 查看本地所有分支git status 查看当前状态git commit 提交git branch -a 查看所有的分支git branch -r 查看远程所有分支git commit -am "init" 提交并且加注释git remote add origin git192.168.1.119:ndshowgit push origin mas…

XML学习及应用

介绍XML语法及应用 1.XML基础知识1.1什么是XML语言1.2 XML 和 HTML 之间的差异1.3 XML 用途 2.XML语法2.1基础语法2.2XML元素2.3 XML属性2.4XML命名空间 3.XML验证3.1xml语法验证3.2自定义验证3.2.1 XML DTD3.2.2 XML Schema3.2.3PCDATA和CDATA区别3.2.4 参考 4.xml解析4.1准备…

Onlyoffice本地部署超详细教程(附协作空间2.0新资讯)

陈老老老板&#x1f934; &#x1f9d9;‍♂️本文专栏&#xff1a;生活&#xff08;主要讲一下自己生活相关的内容&#xff09;生活就像海洋,只有意志坚强的人,才能到达彼岸。 &#x1f9d9;‍♂️本文简述&#xff1a;ONLYOFFICE相信大家已经有所了解&#xff0c;本篇讲一下o…

香橙派orangepi5 定制ubuntu rootfs

问题与需求 公司3588s开发板外设少, 没有usb,网卡,扩展gpio. 需要使用其它3588开发板做验证. 香橙派orangepi5属于性价比很高的开发板. 需要部署环境rosopencv配置; 每次烧录,配置wifi, ip, frpc, 配置环境要30分钟. 问题: 烧录部署一台orangepi5, 需要30分钟, 浪费时间 …