南山住房和建设局网站官网中国纪检监察报订阅

张小明 2026/3/12 7:01:32
南山住房和建设局网站官网,中国纪检监察报订阅,做网站以后的趋势知乎,橙象品牌设计目录 1、介绍1位数码管模拟值实验2、实验现象3实验材料3.1步骤3.2优化代码 4、函数介绍以segPins numCodes numCodes#xff08;#xff09;这三个为例segPinsnumCodesdisplayNumber()简化的 loop 函数 4.1二维数组的简单上机代码运行结果概念解释 总结查找数组中的最大值及其…目录·1、介绍1位数码管模拟值实验2、实验现象3实验材料3.1步骤3.2优化代码4、函数介绍以segPins numCodes numCodes这三个为例segPinsnumCodesdisplayNumber()简化的 loop 函数4.1二维数组的简单上机代码运行结果概念解释总结查找数组中的最大值及其位置程序逻辑1、介绍1位数码管模拟值实验一位数码管是一种简单的显示器件由多个发光二极管以特定形状组合而成主要用于显示单个数字或简单符号。以下是详细介绍内部结构一位数码管通常由 8 个发光二极管组成其中 7 个用于构成数字 0-9 的字形分别标记为 A、B、C、D、E、F、G另一个为小数点 DP。分类及工作原理按发光二极管单元连接方式可分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM) 的数码管共阳数码管在应用时应将公共极 COM 接到 5V当某一字段发光二极管的阴极为低电平时相应字段就点亮当某一字段的阴极为高电平时相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM) 的数码管共阴数码管在应用时应将公共极 COM 接到地线 GND 上当某一字段发光二极管的阳极为高电平时相应字段就点亮当某一字段的阳极为低电平时相应字段就不亮。本次实验我们基于共阴极数码管来实现。2、实验现象数码管模拟值实验3实验材料Arduino 板1个USB下载数据线1根面包板1个杜邦线若干、1k 电阻 8 个共阴极数码管1个3.1步骤首先我们要弄清楚共阴极数码管的10个引脚各自的功能将数码管的正面朝向我们自上而下从左往右的引脚分别定义成1~10其中 3 号引脚和 8 号引脚都是公共端用于接入电路中的阴极也叫GND数码管中共有8个发光二极管分别表示成 a ~ hh 为小数点各个引脚所控制的发光二极管图中也标出来了1 - g2 - f4 - a5 - b6 - e7 - d9 - c10 - h本文这里采用 8 号引脚作为 GND连接端3号引脚功能也是一样的每个发光二极管的引脚均接入一个1k的电阻防止电流过大烧毁二极管。按照发光二极管从 a ~ h 的顺序分别接上arduino主板上的数字口 2 ~ 8和10。最终的接线图如下建议先在Fritzing模拟一下在前面博客上有如何使用fritzing连接好后代码导入int a 2; // 定义数字接口2 连接a int b 3; // 定义数字接口3 连接b int c 4; // 定义数字接口4 连接c int d 5; // 定义数字接口5 连接d int e 6; // 定义数字接口6 连接e int f 7; // 定义数字接口7 连接f int g 8; // 定义数字接口8 连接g int h 9; // 定义数字接口9 连接h也就是数码管中的dp void setup() { int i; for(i2;i9;i){ pinMode(i,OUTPUT); // 设置2~9号引脚为输出模式 } } void loop() { digital_0(); // 显示数字0 delay(1000); digital_1(); // 显示数字1 delay(1000); digital_2(); // 显示数字2 delay(1000); digital_3(); // 显示数字3 delay(1000); digital_4(); // 显示数字4 delay(1000); digital_5(); // 显示数字5 delay(1000); digital_6(); // 显示数字6 delay(1000); digital_7(); // 显示数字7 delay(1000); digital_8(); // 显示数字8 delay(1000); digital_9(); // 显示数字9 delay(1000); } // 显示数字0共阳极低电平点亮高电平熄灭 void digital_0(void){ digitalWrite(a,LOW); // a段亮 digitalWrite(b,LOW); // b段亮 digitalWrite(c,LOW); // c段亮 digitalWrite(d,LOW); // d段亮 digitalWrite(e,LOW); // e段亮 digitalWrite(f,LOW); // f段亮 digitalWrite(g,HIGH); // g段灭0的g段不亮 digitalWrite(h,LOW); // dp段亮如需熄灭可改为HIGH } // 显示数字1 void digital_1(void){ digitalWrite(a,HIGH); // a段灭 digitalWrite(b,LOW); // b段亮 digitalWrite(c,LOW); // c段亮 digitalWrite(d,HIGH); // d段灭 digitalWrite(e,HIGH); // e段灭 digitalWrite(f,HIGH); // f段灭 digitalWrite(g,HIGH); // g段灭 digitalWrite(h,LOW); // dp段亮 } // 显示数字2 void digital_2(void){ digitalWrite(a,LOW); // a段亮 digitalWrite(b,LOW); // b段亮 digitalWrite(c,HIGH); // c段灭 digitalWrite(d,LOW); // d段亮 digitalWrite(e,LOW); // e段亮 digitalWrite(f,HIGH); // f段灭 digitalWrite(g,LOW); // g段亮 digitalWrite(h,LOW); // dp段亮 } // 显示数字3 void digital_3(void){ digitalWrite(a,LOW); // a段亮 digitalWrite(b,LOW); // b段亮 digitalWrite(c,LOW); // c段亮 digitalWrite(d,LOW); // d段亮 digitalWrite(e,HIGH); // e段灭 digitalWrite(f,HIGH); // f段灭 digitalWrite(g,LOW); // g段亮 digitalWrite(h,LOW); // dp段亮 } // 显示数字4 void digital_4(void){ digitalWrite(a,HIGH); // a段灭 digitalWrite(b,LOW); // b段亮 digitalWrite(c,LOW); // c段亮 digitalWrite(d,HIGH); // d段灭 digitalWrite(e,HIGH); // e段灭 digitalWrite(f,LOW); // f段亮 digitalWrite(g,LOW); // g段亮 digitalWrite(h,LOW); // dp段亮 } // 显示数字5 void digital_5(void){ digitalWrite(a,LOW); // a段亮 digitalWrite(b,HIGH); // b段灭 digitalWrite(c,LOW); // c段亮 digitalWrite(d,LOW); // d段亮 digitalWrite(e,HIGH); // e段灭 digitalWrite(f,LOW); // f段亮 digitalWrite(g,LOW); // g段亮 digitalWrite(h,LOW); // dp段亮 } // 显示数字6 void digital_6(void){ digitalWrite(a,LOW); // a段亮 digitalWrite(b,HIGH); // b段灭 digitalWrite(c,LOW); // c段亮 digitalWrite(d,LOW); // d段亮 digitalWrite(e,LOW); // e段亮 digitalWrite(f,LOW); // f段亮 digitalWrite(g,LOW); // g段亮 digitalWrite(h,LOW); // dp段亮 } // 显示数字7 void digital_7(void){ digitalWrite(a,LOW); // a段亮 digitalWrite(b,LOW); // b段亮 digitalWrite(c,LOW); // c段亮 digitalWrite(d,HIGH); // d段灭 digitalWrite(e,HIGH); // e段灭 digitalWrite(f,HIGH); // f段灭 digitalWrite(g,HIGH); // g段灭 digitalWrite(h,LOW); // dp段亮 } // 显示数字8 void digital_8(void){ digitalWrite(a,LOW); // a段亮 digitalWrite(b,LOW); // b段亮 digitalWrite(c,LOW); // c段亮 digitalWrite(d,LOW); // d段亮 digitalWrite(e,LOW); // e段亮 digitalWrite(f,LOW); // f段亮 digitalWrite(g,LOW); // g段亮 digitalWrite(h,LOW); // dp段亮 } // 显示数字9 void digital_9(void){ digitalWrite(a,LOW); // a段亮 digitalWrite(b,LOW); // b段亮 digitalWrite(c,LOW); // c段亮 digitalWrite(d,LOW); // d段亮 digitalWrite(e,HIGH); // e段灭 digitalWrite(f,LOW); // f段亮 digitalWrite(g,LOW); // g段亮 digitalWrite(h,LOW); // dp段亮 }这是共阳极数码管的代码3.2优化代码原代码通过多个独立函数实现数字显示代码冗余较高。可优化为 “段码表 通用显示函数”减少重复代码示例如下// 共阳极数码管段码表0-9对应a,b,c,d,e,f,g,dp的电平0LOW(亮)1HIGH(灭) byte numTable[10][8] { {0,0,0,0,0,0,1,0}, // 0 {1,0,0,1,1,1,1,0}, // 1 {0,0,1,0,0,1,0,0}, // 2 {0,0,0,0,1,1,0,0}, // 3 {1,0,0,1,1,0,0,0}, // 4 {0,1,0,0,1,0,0,0}, // 5 {0,1,0,0,0,0,0,0}, // 6 {0,0,0,1,1,1,1,0}, // 7 {0,0,0,0,0,0,0,0}, // 8 {0,0,0,0,1,0,0,0} // 9 }; int pins[8] {2,3,4,5,6,7,8,9}; // a,b,c,d,e,f,g,dp对应的引脚 void setup() { for(int i0;i8;i) pinMode(pins[i],OUTPUT); } void loop() { for(int num0;num10;num){ // 循环显示0-9 showNum(num); delay(1000); } } // 通用显示函数 void showNum(int num){ for(int i0;i8;i){ digitalWrite(pins[i], numTable[num][i]); // 直接查表输出电平 } }4、函数介绍以segPins numCodes numCodes这三个为例segPins把原来分散定义的 a-h 引脚整合到一个数组中方便循环操作减少重复代码numCodes1、二维数组第一维表示数字0-9第二维表示对应段的电平2、把原来 10 个函数里的电平值集中存储一目了然修改时只需改数组值displayNumber()接收数字参数先做范围检查避免数组越界通过循环遍历段引脚和段码自动设置每个引脚的电平简化的 loop 函数用一个 for 循环遍历 0-9调用通用显示函数替代原来重复调用 10 个函数的写法4.1二维数组的简单上机演示效果1.二维数组的定义和初始化模拟一个 3 行 4 列的数字表格2. 用嵌套循环遍历并打印整个二维数组3. 单独访问二维数组中的某个元素代码#include stdio.h int main() { // 1. 定义并初始化一个3行4列的二维数组行0-2列0-3 // 可以理解为3个行数组每个行数组包含4个元素 int nums[3][4] { {10, 20, 30, 40}, // 第0行 {50, 60, 70, 80}, // 第1行 {90, 100, 110, 120}// 第2行 } // 2. 遍历并打印整个二维数组嵌套循环外层控制行内 层控制列 printf( 遍历整个二维数组 \n); // 外层循环遍历每一行i表示行号 for (int i 0; i 3; i) { // 内层循环遍历当前行的每一列j表示列号 for (int j 0; j 4; j) { printf(%d\t, nums[i][j]); // 输出当 前元素\t是制表符排版更整齐 } printf(\n); // 每一行打印完后换行 } // 3. 单独访问某个具体元素行号和列号从0开始计数 printf(\n 单独访问指定元素 \n); printf(第1行第2列的元素nums[1][2] %d\n, nums[1][2]); // 输出70 printf(第2行第0列的元素nums[2][0] %d\n, nums[2][0]); // 输出90 // 4. 修改二维数组中的元素 nums[0][1] 200; // 将第0行第1列的元素从20改为200 printf(\n修改后第0行第1列的元素nums[0][1] %d\n, nums[0][1]); // 输出200 } return 0;运行结果概念解释1.二维数组的本质可以理解为 “数组的数组”比如nums[3[4]就是 3 个长度为 4 的一维数组。下标规则行和列的下标都从0开始nums[i][j]中i是行号j是列号。嵌套循环遍历外层循环控制行内层循环控制列是操作二维数组最常用的方式。初始化注意如果初始化时元素数量不足未赋值的元素会默认初始化为0总结二维数组定义格式数据类型 数组名[行数][列数]比如int nums[3][4]。访问元素格式 数组名[行下标][列下标]下标从 0 开始计数。遍历二维数组通常用嵌套 for 循环外层控行、内层控列。查找数组中的最大值及其位置题目描述编写一个程序从用户输入中获取8个整数找出数组中的最大值并输出该最大值及其在数组中的位置下标。如果最大值有多个输出第一个出现的位置。int main() { int arr[8]; int i; int max_value; // 存储最大值 int max_index; // 存储最大值的位置下标 // 输入8个整数 printf(请输入8个整数\n); for(i 0; i 8; i) { scanf(%d, arr[i]); } // 初始化最大值和位置 max_value arr[0]; max_index 0; // 查找最大值及其位置 for(i 1; i 8; i) { if(arr[i] max_value) { max_value arr[i]; max_index i; } } // 输出结果 printf(数组中的最大值为%d\n, max_value); printf(最大值首次出现的位置下标为%d\n, max_index); return 0; }结果程序逻辑定义一个长度为8的整型数组读取用户输入的8个整数遍历数组比较每个元素找出最大值记录最大值及其首次出现的位置输出结果
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

合肥建设厅官方网站乐清门户网站建设

中文场景下Kotaemon的表现如何?实测结果令人惊喜 在企业智能化转型加速的今天,越来越多组织开始部署AI对话系统来应对海量用户咨询。然而,一个普遍存在的痛点是:通用大语言模型虽然能“说人话”,但面对专业问题时常“胡…

张小明 2026/3/11 9:55:54 网站建设

网站建设多少钱专业中国房地产信息网官网

告别网络资源下载困境:res-downloader智能下载器全面解析 【免费下载链接】res-downloader 资源下载器、网络资源嗅探,支持微信视频号下载、网页抖音无水印下载、网页快手无水印视频下载、酷狗音乐下载等网络资源拦截下载! 项目地址: https://gitcode.…

张小明 2026/3/11 9:55:52 网站建设

连云港做电商网站的公司邵阳建设网站哪家好

EmotiVoice语音合成在远程办公会议中的辅助作用 在一场跨时区的线上会议中,三位团队成员分别身处北京、柏林和旧金山。会议结束后,一位因时差问题未能参会的同事收到了一封邮件:“您有一条新的语音纪要,请点击播放。”按下按钮后&…

张小明 2026/3/11 9:55:49 网站建设

泉州网站建设网站外贸平台有哪些能直接联系老板的

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个navigatetominiprogram学习应用,提供交互式教程和新手友好的界面。点击项目生成按钮,等待项目生成完整后预览效果 作为小程序开发的核心API之一&…

张小明 2026/3/11 9:55:47 网站建设

网站开发设计文档代刷网网站建设

前言 你不必在技术上很在行才能吸引我们的注意,但你必须表现出能引导你变得在行的特质 —— 机敏、有想法、善于观察、乐于主动参与解决问题。 能立刻得到快速并有效答案的最好方法,就是像赢家那样提问 —— 聪明、自信、有解决问题的思路,只…

张小明 2026/3/11 11:58:26 网站建设

建设外贸网站案例wordpress支付文件在哪里设置

在AI模型参数规模不断膨胀的当下,MiniMax-M2以仅100亿激活参数的创新架构,在编程与智能体开发领域掀起了一场"小而美"的技术革命。这款基于混合专家(MoE)架构的开源大模型,正以其卓越的性能表现和显著的成本…

张小明 2026/3/11 11:58:21 网站建设