网站开发从入门到精通移动网页设计与制作

张小明 2025/12/31 15:46:14
网站开发从入门到精通,移动网页设计与制作,网页开发流程,网站建设 环保素材一、#x1fa84;✨ 欢迎来到#xff1a;C 位运算灯泡王国#xff01; ✨#x1fa84;在计算机世界里#xff0c;每个数字都不是直接写成“10”、“25”这样的#xff0c;而是变成一排亮着或灭着的小灯泡。 这些灯泡就是 比特位#xff08;bit#xff09;#xff01;灯…一、✨欢迎来到C 位运算灯泡王国✨在计算机世界里每个数字都不是直接写成“10”、“25”这样的而是变成一排亮着或灭着的小灯泡。这些灯泡就是比特位bit灯泡亮着 1灯泡灭着 0比如数字 10 是00001010一排 8 个灯泡只有两个亮着。二、位运算就是操作灯泡的魔法你就是灯泡王国的小魔法师。你有 6 个魔法咒语运算符每个咒语都有不同目的‍♂️ 魔法 1按位与“双灯同亮才能亮”魔法想象你有两排灯泡牌A: 1101B: 1011A B的规则只有当两个灯都亮着结果灯才亮。否则灭。像“双黄灯同时亮才能通行”。举例1101 1011 ------ 1001用途⭐“过筛子魔法”把不要的灯泡都筛掉只保留想要的灯。‍♂️ 魔法 2|按位或“只要有一个亮就亮”魔法这就像“两个人举手只要一个人举手就算通过”。1100 | 1010 ------ 1110用途⭐ 可以用来“打开某盏灯”。‍♂️ 魔法 3^按位异或“不一样就亮”魔法规则超级简单两边一样都亮或都灭 → 灭两边不一样 → 亮 ✨1100 ^ 1010 ------ 0110用途⭐ “开关魔法”切换灯泡状态。‍♂️ 魔法 4~取反“全部反过来”魔法就像魔法棒一扫0 → 11 → 0~ 0101 1010用途⭐ 用来做“反面地图”。‍♂️ 魔法 5左移“向左跑一格”魔法就是把灯泡往左推一格右边补 0。00000010 1 变成 00000100效果数字 × 2就像翻倍魔法。‍♂️ 魔法 6右移“向右跑一格”魔法把灯泡往右推。00001000 1 变成 00000100效果数字 ÷ 2三、 把灯泡当“超级城市”位运算更好记1、想象一个 8 格的小城市每格可以住一个小灯泡人[7][6][5][4][3][2][1][0]2、城市里的玩法️ “打开第 k 个房间的灯”x | (1 k);️ “关掉第 k 个房间的灯”x ~(1 k);️ “查看第 k 个房间的灯有没有亮”bool on (x (1 k)) ! 0;️ “切换第 k 个灯”x ^ (1 k);3、 超生动实例1让我们从数字 10 开始00001010假设我们想打开第 0 个灯最右边使用魔法10 | 1 00001011灯亮了✨如果想关掉第 3 个灯11 的二进制 00001011 关掉第 3 灯 00001011 11110111 00000011int n 11; // 二进制 00001011 int k 3; // 第 3 位从 0 开始 n ~(1 k); // 关掉第 3 位“关掉了第 3 个房间的灯”房间从0开始2灯泡村长给你派新任务城中8个灯泡按照开关顺序为 00001010已知最右侧灯泡位置为0向左分别为1,2,3,4,5,6,7。要求“把第 1 号灯打开把第 3 号灯关闭把第 2 号灯切换一下。”代码如下int lamp 0b00001010; // 初始灯泡 lamp | (1 1); // 打开1号灯 lamp ~(1 3); // 关闭3号灯 lamp ^ (1 2); // 切换2号灯执行后灯泡村的灯变成00000110四、 小结附表格位运算 灯泡魔法魔法名字灯泡规则形象比喻与两个都亮才亮双许可|或有一个亮就亮举手投票^异或不一样就亮开关按钮~取反全部反转颠倒魔法左移向左移动×2 魔法右移向右移动÷2 魔法五、️‍♂️《位运算小侦探闯关题》——用超能力“看见”0/1 小灯泡的世界在这些题目里把整数想象成一排小灯泡亮灯 1灭灯 0位运算就是帮我们按灯泡、关灯泡、看灯泡的神奇工具 第 1 题表达式5 1 的结果是多少A. 1 B. 4 C. 5 D. 0解析5 101灯泡亮灭亮1 001只有最后一个灯亮按位与只有都亮才亮 → 001 1 答案A 第 2 题表达式6 | 1 的结果是多少A. 6 B. 7 C. 5 D. 4解析6 1101 001按位或有一个亮就亮 → 111 7 答案B 第 3 题表达式4 ^ 1 的结果是多少A. 5 B. 3 C. 4 D. 1解析4 1001 001异或不一样才亮 → 101 5 答案A 第 4 题表达式8 1 的结果是多少A. 4 B. 16 C. 2 D. 1解析8 1000灯泡向右挪一位→ 0100 4 答案A 第 5 题表达式3 2 的结果是多少A. 3 B. 6 C. 12 D. 8解析3 011向左搬两次 → 01100 12 答案C 第 6 题哪个运算能把某一位的“亮灯”关掉A. B. |C. ^D. 解析关灯与一个“该位0”的掩码做 答案A 第 7 题哪个运算能把某一位点亮A. B. |C. ^D. 解析点亮灯用 1 做 OR 答案B 第 8 题表达式7 2 得多少A. 2 B. 7 C. 5 D. 3解析7 1112 010与 → 010 2 答案A 第 9 题表达式7 ^ 3 得多少A. 5 B. 3 C. 4 D. 7解析7 1113 011异或 → 100 4 答案C 第 10 题表达式1 4 得多少A. 4 B. 16 C. 8 D. 32解析1 左移四格10000 16 答案B 第 11 题判断以下表达式结果10 8 ?A. 8 B. 10 C. 2 D. 0解析10 10108 1000与 → 1000 8 答案A 第 12 题5 | 2 的结果A. 7 B. 6 C. 5 D. 3解析5 1012 010或 → 111 7 答案A 第 13 题4 ^ 4 的结果A. 8 B. 0 C. 4 D. 1解析相同数字异或 → 全灭 →0 答案B 第 14 题1 1 的结果A. 1 B. 2 C. 3 D. 4解析把唯一的灯泡左挪一格 →2 答案B 第 15 题8 3 的结果A. 1 B. 0 C. 8 D. 2解析1000 → 连续右挪三格 → 0001 →1 答案A 第 16 题以下哪项能判断“某位是不是亮着”A. a (1k)B. a | (1k)C. a ^ (1k)D. ak解析 掩码检查某灯是否亮 答案A 第 17 题表达式12 5 的结果A. 4 B. 5 C. 0 D. 8解析12 11005 0101与 → 0100 4 答案A 第 18 题表达式12 | 1 的结果A. 12 B. 8 C. 13 D. 15解析1100 | 0001 → 1101 13 答案C 第 19 题表达式3 ^ 1 ?A. 2 B. 3 C. 1 D. 4解析011 ^ 001 → 010 2 答案A 第 20 题判断 (1 3) 的值是多少A. 4 B. 3 C. 8 D. 6解析1 左移三格1000 →8 答案C六、课后编程题题目 1 — 检查第 k 位是否为 1题目给定一个整数n非负和一个位置k从 0 开始判断n的第k位是否为 1。输入两个整数n k用空格分开输出如果第k位为 1 输出YES否则输出NO。示例输入13 213 的二进制是1101第 2 位是 1示例输出YES思路提示用掩码(1 k)与n做按位与(n (1 k)) ! 0。✔ 参考程序#include bits/stdc.h using namespace std; int main() { long long n; int k; cin n k; long long mask 1LL k; if ((n mask) ! 0) cout YES\n; else cout NO\n; return 0; }题目 2 — 统计二进制中 1 的个数popcount题目给定一个非负整数n计算n的二进制表示中有多少个1。输入一个整数n0 ≤ n ≤ 10^18输出一个整数 ——n中 1 的个数。示例输入13二进制1101有 3 个 1示例输出3思路提示常用方法不断用n 1取最低位然后右移或用n (n-1)每次删除最低的 1更快。✔ 参考程序#include bits/stdc.h using namespace std; int main() { long long n; cin n; int cnt 0; while (n) { n (n - 1); // 每次清除最低的 1 cnt; } cout cnt \n; return 0; }题目 3 — 找出最低位的 1返回该位的值及索引题目给定一个正整数nn 0找出n最右边最低那个为 1 的位并输出该位的二进制值即n -n和该位的索引从 0 开始。输入一个正整数n输出两个整数用空格分开最低 1 的值十进制以及最低 1 的索引。示例输入44二进制00101100最低 1 的值是400000100索引是2从 0 开始示例输出4 2思路提示可从0位开始检查 n 1 indexindex不断增加直到找到为止。题目n0,不需要考虑找不到的情况✔ 参考程序#include bits/stdc.h using namespace std; int main() { long long n; cin n; int index 0; long long low 0; while (n) { if (n 1) { // 检查最低位是否为 1 low 1LL index; // 生成最低位 1 的值 break; } n 1; // 右移一位检查下一位 index; } cout low index \n; return 0; }思路提示low n -n可以得到最低位1的值需要掌握补码的知识✔ 参考程序#include bits/stdc.h using namespace std; int main() { long long n; cin n; // 假设 n 0 long long low n -n; // 保留最低的 1 int index 0; long long tmp low; while (tmp 1) { tmp 1; index; } cout low index \n; return 0; }
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

内蒙古住房城乡建设部网站wordpress视频预览插件

Wan2.2-T2V-5B是否允许商用?一文说清授权真相 🚀 你是不是也正盯着那个“一键生成视频”的梦想跃跃欲试? 想把AI视频生成嵌入你的App、电商后台,甚至做个自动剪辑的SaaS工具…… 但心里总有个声音在问:这模型能商用吗…

张小明 2025/12/30 19:18:16 网站建设

软文范例200字成都网站seo服务

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 快速开发一个定制化目录扫描器原型:1. 支持REST API调用 2. 集成Slack通知功能 3. 简易Web控制界面 4. 基础扫描历史记录 5. 可扩展插件架构。使用Flask框架实现Web界面…

张小明 2025/12/26 8:31:40 网站建设

手机端网站优化排名seo推广全国免费发布信息网

ComfyUI与Kustomize配置管理集成:灵活定制环境 在AI生成内容(AIGC)迅速渗透创意产业的今天,越来越多的工作室和开发团队面临一个共同挑战:如何将复杂的图像生成流程从“实验性玩具”转变为“可复用、可维护、可部署”的…

张小明 2025/12/26 8:29:38 网站建设

cms网站开发php政务中心网站自身建设

在工业自动化领域,CANopen转ProfiNET网关扮演着至关重要的角色。它不仅实现了不同通信协议之间的无缝对接,还提升了整个系统的灵活性和可靠性。接下来,我们将深入了解这一技术如何应对实际问题,提供解决方案,并探讨其带…

张小明 2025/12/31 10:32:37 网站建设

企业企业网站建设北京h5网站建设公司

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个J-Flash操作效率对比工具,能够:1.自动记录手动操作J-Flash的步骤和时间 2.使用AI自动生成相同功能的脚本 3.对比两种方式的耗时和准确率 4.生成可视…

张小明 2025/12/26 8:25:33 网站建设