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

全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之计数器与累加器(一)

学习背景:

在现实生活中一些需要计数的场景下我们会用到计数器,如空姐手里记录乘客的计数器,跳绳手柄上的计数器等。累加器是累加器求和,以得到最后的结果。计数器和累加器它们虽然是基础知识,但是应用广泛,接下来分别介绍计数器与累加器,本文章先介绍计数器。

(一)、计数器:i=i+1

语句"i=i+1;"每执行一次,i的值就增加1。这样变量i可以起到统计次数的作用,有计数的功能。赋值符号"="左右两边的变量“i”不能从数值的角度去理解,它是存储空间的概念,就好比向水盆中加水,然后“+1”就表示拿水瓢往水盆中加水,“=”右边的“i”表示拿水瓢加水前的状态,“=”左右的“i”表示拿水瓢加水之后的状态。该语句运行一次就表示往水盆里加了一瓢水,最后往水盆里加了多少瓢水,只要看i最后的取值就可以了。其执行过程如下:

程序语句

i的值

i=0;

0

i=i+1

i(1) <- 0+1

i=i+1

i(2) <- 1+1

i=i+1

i(3) <- 2+1

i=i+1

i(4) <- 3+1

i=i+1

i(5) <- 4+1

温馨提示:

1、计数器在计算前需要清零,即i要赋值为0。

2、计算机程序中,变量可以先定义,再赋值,也可以在定义的同时进行赋值,在定义变量的同时赋初值称为变量初始化。在程序设计中,涉及累加、计数等情况时需要将变量初始化,否则计算机会给变量随机赋一个值,对计算结果有一定影响。

"i=i+1"通常简写利用成"i++"与"++i"两种形式,可单独成句。

1)"i++"在赋值和参与运算的过程中,先运算再自增,如语句在"x=i++;"的执行顺序是先将i的值赋值给x,然后再执行"i++"自增运算。

2)"++i"在赋值和参与运算的过程中,先自增再运算,如语句"x=++i;"的执行顺序是先执行"++i"自增运算,再进行赋值。

其执行过程如下:

程序语句

x的值

i的值

i=1;

x=i++;

1

2

i=1;

x=++i;

2

2

与计数器类似,"i=i-1",也可以简写成"i--"或者"--i",表示自减运算,它们可以单独成句,其意义与"i=i-1"的含义是一样的。但是,涉及赋值时,就会不同,"x=i--;"是先赋值再运算。而"x=--i;"是先运算再赋值。

实战训练:

阅读以下程序,写出程序运行结果。         


#include<bits/stdc++.h>
using namespace std;
int main(){int x,y,a=50,b=50;//定义变量x、y、a、b,定义a和b时同时初始化,初始值均为50 x=a++;//先赋值再自增y=++b;//先自增再赋值 cout<<"x: "<<x<<",y:"<<y<<endl;cout<<"a: "<<a<<",b:"<<b<<endl;x=a--;//先赋值再自减 y=--b;//先自减再赋值 cout<<"x: "<<x<<",y:"<<y<<endl;cout<<"a: "<<a<<",b:"<<b<<endl;return 0; 
} 

程序分析:

题目中的整型变量a,b的初始值均为50,第5行将a的值赋值给x之后,a再进行自增运算,此时x的值为50,a的值为51;第6行b先进行自增运算,再赋值,此时b的值为51,y的值也为51。同理程序第9行先进行赋值再自减,x的值为51,a的值为50,第10行b的值先自减,再赋值给y,b的值为50,y的值也为50。

输出结果:

x: 50,y:51

a: 51,b:51

x: 51,y:50

a: 50,b:50

相关文章:

全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之计数器与累加器(一)

学习背景&#xff1a; 在现实生活中一些需要计数的场景下我们会用到计数器&#xff0c;如空姐手里记录乘客的计数器&#xff0c;跳绳手柄上的计数器等。累加器是累加器求和&#xff0c;以得到最后的结果。计数器和累加器它们虽然是基础知识&#xff0c;但是应用广泛&#xff0…...

Android的SurfaceView和TextureView介绍

文章目录 前言一、什么是SurfaceView &#xff1f;1.1 SurfaceView 使用示例1.2 SurfaceView 源码概述1.3 SurfaceView 的构造与初始化1.4 SurfaceHolder.Callback 回调接口1.5 SurfaceView 渲染机制 二、什么是TextureView&#xff1f;2.1 TextureView 使用示例2.2 TextureVie…...

Scala的集合

1 集合简介 1&#xff09;Scala 的集合有三大类&#xff1a;序列 Seq、集 Set、映射 Map&#xff0c;所有的集合都扩展自 Iterable 特质。 2&#xff09;对于几乎所有的集合类&#xff0c;Scala 都同时提供了可变和不可变的版本&#xff0c;分别位于以下两 个包 不可变集合&am…...

1. Flink自定义Source

一. Source 简介 DataStream是Flink的低级API&#xff0c;用于进行数据的实时处理&#xff0c;Flink编程模型分为Source、Transformation、Sink三个部分&#xff0c;如下图所示。 默认Flink提供了大量的内置Source&#xff0c;常见的Source如下&#xff1a; 基于文件的Sour…...

关于LinuxWindows双系统在八月更新后出现的问题

问题描述类似于&#xff1a;Verifying shim SBAT data failed: If you are, this is caused by a reported problem in the August update if you can get into Windows, either uninstall the August update, or open Command Prompt as administrator and run this command,…...

VMware:如何在CentOS7上开启22端口

打开虚拟机&#xff1a;【编辑】【虚拟机网络设置】 其中填入的虚拟机IP地址是虚拟机中centos的IP地址&#xff0c;虚拟机端口为需要映射的centos端口 配置好之后保存&#xff0c;打开宿主机 win cmd telnet 192.168.1.26 22 如果出现上述窗口&#xff0c;则说明已经成功开放…...

ubuntu远程桌面开启opengl渲染权限

背景 最近用windows的【远程桌面连接】登录ubuntu后&#xff08;xrdp协议&#xff09;&#xff0c;发现gl环境是集显的&#xff0c;但是本地登录ubuntu桌面后是独显&#xff08;英伟达&#xff09;&#xff0c;想要在远程桌面上也用独显渲染环境。 一、查看是独显还是集显环境…...

从小学题到技术选型哲学:以智能客服系统为例,解读相关AI技术栈20241211

&#x1f9e0;&#x1f4a1;从小学题到技术选型哲学&#xff1a;以智能客服系统为例&#xff0c;解读相关AI技术栈 引言&#xff1a;从小学数学题到技术智慧 &#x1f4da;✨ 在小学数学题中&#xff0c;有这样一道问题&#xff1a; “一个长方形变成平行四边形后&#xff0c…...

【C语言练习(5)—回文数判断】

C语言练习&#xff08;5&#xff09; 文章目录 C语言练习&#xff08;5&#xff09;前言问题问题解析结果总结 前言 通过回文数练习&#xff0c;巩固数字取余和取商如何写代码 问题 输入一个五位数判断是否为回文数&#xff1f; 问题解析 回文数是指正读反读都一样的整数。…...

【Rust 学习笔记】Rust 基础数据类型介绍——数组、向量和切片

博主未授权任何人或组织机构转载博主任何原创文章&#xff0c;感谢各位对原创的支持&#xff01; 博主链接 博客内容主要围绕&#xff1a; 5G/6G协议讲解 高级C语言讲解 Rust语言讲解 文章目录 Rust 基础数据类型介绍——数组、向量和切片一、数组、向量和…...

2024年特别报告,「十大生活方式」研究数据报告

“一朵花成轻奢品、一只玩偶掀抢购狂潮、一片荒地变文旅圣地…” 近年爆火的野兽派、Jellycat、阿那亚等诸多品牌&#xff0c;与消费者选择的生活方式息息相关。 今年小红书的内容种草、直播电商&#xff0c;也都依循着“生活方式”的轨迹。生活方式的价值所向&#xff0c;可…...

R中单细胞RNA-seq分析教程 (5)

引言 本系列开启R中单细胞RNA-seq数据分析教程[1]&#xff0c;持续更新&#xff0c;欢迎关注&#xff0c;转发&#xff01; 10. 伪时间细胞排序 如前所述&#xff0c;在 UMAP 嵌入中看到的背侧端脑细胞形成的类似轨迹的结构&#xff0c;很可能代表了背侧端脑兴奋性神经元的分化…...

openpnp - Too many misdetects - retry and verify fiducial/nozzle tip detection

文章目录 openpnp - Too many misdetects - retry and verify fiducial/nozzle tip detection概述笔记环境光最好弱一些在设备标定时&#xff0c;吸嘴上不要装绿色屏蔽片如果吸嘴不在底部相机中间&#xff0c;先检查设置底部相机坐标调整底部相机坐标 吸嘴校验的细节底部相机坐…...

不与最大数相同的数字之和

不与最大数相同的数字之和 C语言代码C 语言代码Java语言代码Python语言代码 &#x1f490;The Begin&#x1f490;点点关注&#xff0c;收藏不迷路&#x1f490; 输出一个整数数列中不与最大数相同的数字之和。 输入 输入分为两行&#xff1a; 第一行为N(N为接下来数的个数&…...

CSS学习记录11

CSS布局 - display属性 display属性是用于控制布局的最终要的CSS属性。display 属性规定是否/如何显示元素。每个HTML元素都有一个默认的display值&#xff0c;具体取决于它的元素类型。大多数元素的默认display值为block 或 inline。 块级元素&#xff08;block element&…...

D95【python 接口自动化学习】- pytest进阶之fixture用法

day95 pytest的fixture详解&#xff08;二&#xff09; 学习日期&#xff1a;20241210 学习目标&#xff1a;pytest基础用法 -- pytest的fixture详解&#xff08;二&#xff09; 学习笔记&#xff1a; fixture(autouseTrue) func的autouse是TRUE时&#xff0c;所有函数方法…...

Abaqus断层扫描三维重建插件CT2Model 3D V1.1版本更新

更新说明 Abaqus AbyssFish CT2Model3D V1.1版本更新新增对TIF、TIFF图像文件格式的支持。本插件用户可免费获取升级服务。 插件介绍 插件说明&#xff1a; Abaqus基于CT断层扫描的三维重建插件CT2Model 3D 应用案例&#xff1a; ABAQUS基于CT断层扫描的细观混凝土三维重建…...

隐式对象和泛型

implicit object 作用&#xff1a; case class DatabaseConfig(driver:String,url:String)//作为函数的隐士参数的默认值implicit object MySqlDefault extends DatabaseConfig("mysql","localhost:443")def getConn(implicit config: DatabaseConfig):Uni…...

CSS的颜色表示方式

以下介绍几种常见的CSS颜色表示方式&#xff1a; 颜色名称 html和css规范中定义了147种可用的颜色名用的相对较少 16进制表示 css三原色&#xff1a;红、绿、蓝16进制的颜色值&#xff1a; #rrggbb16进制整数规定颜色成分&#xff0c;所有的值均介于 00 - ff 之间&#xff…...

单链表常见面试题 —— LeetCode

一.删除链表中与val相等的所有节点 1.题目描述 ----- 203. 移除链表元素 - 力扣&#xff08;LeetCode&#xff09; 给你一个链表的头节点 head 和一个整数 val &#xff0c;请你删除链表中所有满足 Node.val val 的节点&#xff0c;并返回 新的头节点 。 列表中的节点数目在范…...

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析

今天聊的内容&#xff0c;我认为是AI开发里面非常重要的内容。它在AI开发里无处不在&#xff0c;当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗"&#xff0c;或者让翻译模型 "将这段合同翻译成商务日语" 时&#xff0c;输入的这句话就是 Prompt。…...

中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试

作者&#xff1a;Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位&#xff1a;中南大学地球科学与信息物理学院论文标题&#xff1a;BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接&#xff1a;https://arxiv.…...

抖音增长新引擎:品融电商,一站式全案代运营领跑者

抖音增长新引擎&#xff1a;品融电商&#xff0c;一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中&#xff0c;品牌如何破浪前行&#xff1f;自建团队成本高、效果难控&#xff1b;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...

【Linux手册】探秘系统世界:从用户交互到硬件底层的全链路工作之旅

目录 前言 操作系统与驱动程序 是什么&#xff0c;为什么 怎么做 system call 用户操作接口 总结 前言 日常生活中&#xff0c;我们在使用电子设备时&#xff0c;我们所输入执行的每一条指令最终大多都会作用到硬件上&#xff0c;比如下载一款软件最终会下载到硬盘上&am…...

LCTF液晶可调谐滤波器在多光谱相机捕捉无人机目标检测中的作用

中达瑞和自2005年成立以来&#xff0c;一直在光谱成像领域深度钻研和发展&#xff0c;始终致力于研发高性能、高可靠性的光谱成像相机&#xff0c;为科研院校提供更优的产品和服务。在《低空背景下无人机目标的光谱特征研究及目标检测应用》这篇论文中提到中达瑞和 LCTF 作为多…...

Vue 模板语句的数据来源

&#x1f9e9; Vue 模板语句的数据来源&#xff1a;全方位解析 Vue 模板&#xff08;<template> 部分&#xff09;中的表达式、指令绑定&#xff08;如 v-bind, v-on&#xff09;和插值&#xff08;{{ }}&#xff09;都在一个特定的作用域内求值。这个作用域由当前 组件…...

鸿蒙(HarmonyOS5)实现跳一跳小游戏

下面我将介绍如何使用鸿蒙的ArkUI框架&#xff0c;实现一个简单的跳一跳小游戏。 1. 项目结构 src/main/ets/ ├── MainAbility │ ├── pages │ │ ├── Index.ets // 主页面 │ │ └── GamePage.ets // 游戏页面 │ └── model │ …...

Sklearn 机器学习 缺失值处理 获取填充失值的统计值

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 使用 Scikit-learn 处理缺失值并提取填充统计信息的完整指南 在机器学习项目中,数据清…...