每日刷题-3

news2024/10/13 0:37:00

目录

一、选择题

二、编程题

1、计算糖果

2、进制转换


一、选择题

1、

解析:在C语言中,以0开头的整数常量是八进制的,而不是十进制的。所以,0123的八进制表示相当于83的十进制表示,而123的十进制表示不变。printf函数用%o格式符输出八进制数,所以输出结果是123 173。

2、

解析:为在C语言中,按位与运算符&可以用来清除某些位,而按位或运算符|可以用来设置某些位。如果要将flag的第二个bit置0,就需要用flag和一个只有第二个bit为0的数进行按位与运算,这个数就是~2,即2的按位取反。所以,flag&=~2就可以实现这个目的。

3、

解析:由题可得,&x[4][4]= Oxf8b82140,&x[4][9]= Oxf8b82145,&x[9][9] = Oxf8b8221c,而x[4][9]和x[9][9]之间刚好相隔了5行,设每行N个元素,Oxf8b8221c - Oxf8b82145 = 5*N,得到N=43。

&x[7][7] = &x[7][9]- 2,&x[4][9]+3*43- 2,可得到0xf8b82145 + 127为x[7][7]的地址。答案为A。

4、

解析:首先,定义了一个静态字符指针数组a,它包含了三个字符串元素:“morning”,“afternoon”,“evening”。然后,定义了一个字符指针的指针p,它指向了a的首地址,也就是第一个元素"morning"的地址。接着,调用了func函数,传入了p作为参数。在func函数中,参数m是一个字符指针的指针,它接收了p的值,也就是a的首地址。然后,对m进行了自增操作,使得m指向了a的下一个元素,也就是第二个元素"afternoon"的地址。最后,输出了m所指向的内容,也就是字符串"afternoon"。

5、

解析:这个函数的功能是计算一个整数x的二进制表示中有多少个1。然后,进入一个while循环,只要x不为0,就执行以下操作:

  • 将count加1,表示找到了一个1。
  • 将x与x-1进行按位与运算,并将结果赋给x。这个运算的作用是将x的最低位的1变成0,例如:如果x=1010(二进制),那么x-1=1001(二进制),x&(x-1)=1000(二进制)。
  • 最后,当x变为0时,退出循环,返回count的值,表示x的二进制表示中有多少个1。

6、

解析:F2: FO+F1=递归3次,F3: F2+F1=1+3+1 = 5,F4: F3+F2=1+5+3=9

F5: F4+F3=1+9+5=15,F6: F5+F4=1+15+9=25,F7: F6+F5=1+25+15=41,

F8: F7+F6=1 +41 +25 = 67

二、编程题

1、计算糖果

题目解析: 这道题目的实质是:判断三元一次方程组是否有解及求解, 这里是小学生都会的问题了。A=(a+c)/2;C=(d-b)/2;B2=(b+d)/2,B1=(c-a)/2;
如果B1不等B2则表达式无解。

代码如下:

#include<iostream>
using namespace std;
int main() {
    int a, b, c, d;
    cin >> a >> b >> c >> d;
    int A = (a + c) / 2;
    int C = (d - b) / 2;
    int B1 = (c - a) / 2;
    int B2 = (b + d) / 2;
    if (B1 != B2)
        cout << "No";
    else
        cout << A << " " << B1 << " " << C;
    return 0;
}

2、进制转换

题目解析:本题思路很简单,首先想清楚原理:N进制数,每个进制位的值分别是X0*N^0,X1*N^1, X2*N^2.....,X0,X1,X2就是这些进制位的值。

首先定义一个字符串table,用于存储0到F的字符,表示从0到15的数。然后定义一个字符串str,用于存储转换后的结果。接着定义一个布尔变量flag,用于判断输入的数是否为负数。如果是负数,就将flag设为true,并将M取反。如果M为0,就直接将str设为"0"。

然后进入一个循环,不断地对M进行取余和除法操作,将M除以N得到的余数作为table的下标,找到对应的字符,并将其添加到str的末尾。同时将M更新为M除以N得到的商。当M为0时,退出循环。

最后判断flag是否为true,如果是,就在str的末尾添加一个负号。然后将str反转,输出结果。这样就完成了10进制转换成任意进制的过程。

#include <iostream>
#include<string>
#include<algorithm>
using namespace std;

int main() {
    int M, N;
    string table = "0123456789ABCDEF";
    string str = "";
    bool flag = false;

    while (cin >> M >> N) {
        if (M < 0) {
            flag = true;
            M = -M;
        }
        if (M == 0)str = "0";

        while (M) {

            str += table[M % N];
            M = M / N;
        }
        if (flag)str += '-';

        reverse(str.begin(), str.end());
    }
    cout << str << endl;



}

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

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

相关文章

费时“吃透”4个月啃烂完了这份Redis高手心法,成功上岸收到字节offer

学习一个技术&#xff0c;通常只接触了零散的技术点&#xff0c;没有在脑海里建立⼀个完整的知识框架和架构体系&#xff0c;没有系统观。这 样会很吃力&#xff0c;而且会出现一看好像自己会&#xff0c;过后就忘记&#xff0c;⼀脸懵逼。 今天小编带你⼀起吃透Redis&#xf…

这所985初试占比67%,某学院计算机学硕一志愿竟无人报名

北京科技大学(B) 考研难度&#xff08;☆☆☆☆&#xff09; 内容&#xff1a;23考情概况&#xff08;拟录取和复试分析&#xff09;、院校概况、23专业目录、23复试详情、各专业考情分析、各科目考情分析。 正文1721字&#xff0c;预计阅读&#xff1a;5分钟。 2023考情概况…

Java反编译工具 JD-GUI安装使用

我们知道&#xff0c;将源代码转换成二进制执行代码的过程叫“编译”&#xff0c;那么反编译就是将二进制执行代码转换成源代码。 在java开发里&#xff0c;源代码是.java文件&#xff0c;然后经过编译后生成计算机识别的.class文件&#xff0c;但是.class文件是计算机识别的我…

KT142C-sop16语音芯片ic测试板的使用说明_串口如何接线

KT142C是一个提供串口的SOP16语音芯片&#xff0c;完美的集成了MP3的硬解码。内置330KByte的空间&#xff0c;最大支持330秒的语音长度&#xff0c;支持多段语音&#xff0c;支持直驱0.5W的扬声器无需外置功放 1、软件支持串口通信协议&#xff0c;默认波特率9600.同时支持4个…

css自学框架之ajax获取提交数据

本小结主要自学了ajax&#xff0c;页面部分刷新&#xff0c;实现动态提交数据到服务器&#xff1b;动态从服务区获取数据。get&#xff0c;post两种传递数据方法&#xff0c;Json、html、text、xml等多种数据格式。 展示效果如下图&#xff1a; 一、Javascript代码&#xff…

线程的状态 and 线程安全

在操作系统中的线程&#xff0c;自身是有一个状态的~&#xff0c;但是Java Thread是对系统线程的封装&#xff0c;把这里的状态又进一步精细化了。 1.NEW 系统中的线程还没创建出来呢&#xff01;只是有一个Thread对象~ public class Main1 {public static void main(String[…

日入千元什么感觉?信息安全就是这么“吸金”!

一年一次的护网行动已经火热开始了&#xff0c;大家还记得前段时间给大家推荐的护网吗&#xff1f; 现在不管是国家还是企业都很重视信息安全&#xff0c;毕竟科技的发展越来越迅速&#xff0c;我们的信息安全时时刻刻都需要保障。 据研究机构统计&#xff0c;截止2021年&…

数字出版的资源管理系统软件开发

出版行业资源管理系统是为出版公司和数字出版机构设计的软件工具&#xff0c;用于帮助管理和优化出版过程。这些系统通常具有多种功能&#xff0c;以支持从内容创作到分销的各个方面。以下是出版行业资源管理系统的一些主要功能&#xff0c;希望对大家有所帮助。北京木奇移动技…

【计算机基础知识2】操作系统、应用程序和编程语言

目录 前言 一、计算机操作系统 二、计算机应用程序 三、计算机编程语言 四、操作系统、应用程序和编程语言的相互关系 总结 前言 计算机的操作系统、应用程序和编程语言是计算机科学中非常重要的三个方面。了解这三个方面的基础知识和它们之间的相互关系&#xff0c;对于…

编程技巧,Python缩进规则(包含快捷键)

和其它程序设计语言​ &#xff08;如 Java、C 语言&#xff09;采用大括号“{}”分隔代码块不同&#xff0c;Python 采用代码缩进和冒号&#xff08; : &#xff09;来区分代码块之间的层次。 ​ 在 Python 中&#xff0c;对于类定义、函数定义、流程控制语句、异常处理语句等…

lvs负载均衡、LVS集群部署

四&#xff1a;LVS集群部署 lvs给nginx做负载均衡项目 218lvs&#xff08;DR 负载均衡器&#xff09; yum -y install ipvsadm&#xff08;安装这个工具来管理lvs&#xff09; 设置VIP192.168.142.120 创建ipvsadm的文件用来存放lvs的规则 定义策略 ipvsadm -C //清空现有…

如何使用element-ui相关组件如:el-select,el-table,el-switch,el-pagination,el-dialog

element-ui 官方链接&#xff1a; 组件 | Elementhttps://element.eleme.cn/#/zh-CN/component/installation el-select <!-- 用户类型选择框<template> 看情况使用value选择框绑定的值 命名必须是value不能改v-for"item in Options" options数据源来自于…

【dubbo3】看懂消费者如何发现提供者

服务发现机制 服务发现是RPC框架非常重要的能力。典型的服务发现一般有两种&#xff1a;接口级服务发现、应用级服务发现。  接口级服务发现典型代表是dubbo2基于zk的服务发现机制。提供者直接向注册中心注册接口信息及地址&#xff0c;消费者通过接口从注册中心拿到对应的地址…

1 Linux输入子系统

1 Linux输入子系统 https://www.cnblogs.com/beijiqie1104/p/11418082.html Linux input 子系统详解 https://www.cnblogs.com/yikoulinux/p/15208238.html

2023-9-8 求组合数(四)

题目链接&#xff1a;求组合数 IV #include <iostream> #include <algorithm>using namespace std;const int N 5010;int primes[N], cnt; bool st[N]; // 每个质数的次数 int sum[N];void get_primes(int n) {for(int i 2; i < n; i){if(!st[i]) primes[cnt]…

5.删除链表元素问题

1.删除特点节点 给你一个链表的头节点 head 和一个整数 val &#xff0c;请你删除链表中所有满足 Node.val val 的节点&#xff0c;并返回 新的头节点 。 示例 1&#xff1a; 输入&#xff1a;head [1,2,6,3,4,5,6], val 6 输出&#xff1a;[1,2,3,4,5]示例 2&#xff1a; 输…

【LeetCode: 207.课程表:拓扑排序+图】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

【C/C++】BMP格式32位转24位

问题 如题 解决方法 bmp文件格式参考:【C/C++】BITMAP格式分析_vc++ bitmap头文件_sunriver2000的博客-CSDN博客BITMAP文件大体上分成四个部分,如下表所示。文件部分长度(字节)位图文件头 Bitmap File Header14位图信息数据头 Bitmap Info Header40调色板 Palette4*n (n≥…

Linux 安装elasticsearch-7.5.1

相关链接 官⽹&#xff1a; https://www.elastic.co/cn/downloads/elasticsearch 下载&#xff1a; wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.5.1-linux-x86_64.tar.gz 分词器&#xff1a; https://github.com/medcl/elasticsearch-an…

MJDK 如何实现压缩速率的 5 倍提升?

MJDK 是基于 OpenJDK 构建的美团 JDK 发行版。本文主要介绍 MJDK 是如何在保障 java.util.zip.* API 及压缩格式兼容性的前提下&#xff0c;实现压缩/解压缩速率提升 5-10 倍的效果。希望相关的经验能够帮助到更多的技术同学。 1 前言 数据压缩技术[1]因可有效降低数据存储及…