一、变量、赋值语句与表达式

1、天安门广场在北京市中心,它南北长880米,东西宽500米,试编一程序,计算天安门广场面积是多少平方米。

点击查看代码
1 //试编程,计算天安门广场的面积是多少平方米
2 #include <iostream> //包含输入输出流头文件iostream
3 using namespace std; //指明程序 使用命名空间std(标准)
4 int main()
5 {
6 int a,b,s; //定义变量a,b,s ;变量必须先定义,后使用
7 a=880; //赋值语句,其中 = 叫赋值号
8 b=500; // 把500赋值给b。
9 s=a*b; // 把a*b赋值给s。
10 cout<<"天安门广场面积:";
11 cout<<s<<"平方米";
12 return 0;
13 }

2、变量与赋值号

变量——在程序运行期间其值可以改变的量。变量必须先定义后使用。变量定义时,系统依据定义的类型,给变量开辟对应大小的存储单元来存放数据。

命名的规则

从 a=123 的例子中,a是变量名,但变量的名字有什么要求?需要注意哪些规则?能乱起吗?

变量名只能是:a-z、A-Z、0-9以及下划线组成;

变量名第一位不可以是数字;

变量名不可以是 C++ 关键字:比如 int main 之类的;

变量需要定义后才可以使用:int a; a = 123;

变量名区分大小写,A和a不同;

abc(合法)、a123(合法)、_xyz(合法)、123a(不合法)

为了让变量名更加的有可读性,比如:你的名字:

第一种经典命名方式,驼峰式:yourName,或YourName,我比较喜欢前者;

第二种经典命名方式:蛇形式:your_name,用的也比较多;

// 声明一个字符串
string yourName;
// 字符串类型,需要双引号包含
yourName = "你的名字";
cout << yourName;

3、数学表达式

计算符:

运算 符号 格式
+ 1 + 1
- 2 - 1
* 3 * 4
/ 6 / 2
求余 % 10 % 7
自增1(自加1) ++ i++ 或 ++i
自减1 -- i-- 或 --i

4、练习

(1)下列( )是非法的标识符

  A.3y            B.b5           C.H_1          D.p7y

(2)阅读程序写变量i、j、k结果

 1 //阅读程序写结果
2 #include <iostream> //包含输入输出流头文件iostream
3 using namespace std; //指明程序 使用命名空间std(标准)
4 int main()
5 {
6 int i,j,k; //定义变量i,j,k;变量必须先定义,后使用
7 i=8; //赋值语句
8 j=9;
9 k=i*j;
10 cout<<i;
11 cout<<j;
12 cout<<k;
13 return 0;
14 }

(3)风之巅小学的操场,长120米,宽80米,求操场的周长多少米?

点击查看代码
 1 //3、风之巅小学的操场,长120米,宽80米,求操场的周长多少米?
2 #include <iostream> //包含输入输出流头文件iostream
3 using namespace std; //指明程序 使用命名空间std(标准)
4 int main()
5 {
6 int a,b,c; //定义变量a,b,c;变量必须先定义,后使用
7 a=120; //赋值语句
8 b=80;
9 c=_________;
10 cout<<c;
11 return 0;
12 }

二、计数器

1、尼克每天背诵完一首古诗后,模仿古人在一根木棒上刻一条痕。试编程,算一算若连续刻了5天,一共有多少道痕?

 1 //尼克每天背诵完一首古诗后,模仿古人在一根木棒上刻一条痕。
2 //试编程,算一算若连续刻了5天,一共有多少道痕?
3 #include <iostream> //包含输入输出流头文件iostream
4 using namespace std; //指明程序 使用命名空间std(标准)
5 int main()
6 {
7 int i;
8 i=0;
9 i=i+1; //将变量i的值加1,再将其赋值给i。
10 i=i+1; //通常将具有计数功能(i)的变量称为“计数器”
11 i=i+1; //可以改为i++,或++i
12 i=i+1;
13 i=i+1;
14 cout<<i;
15 return 0;
16 }

语句“i=i+1” 的含义是先把变量i的原值加1,然后将其赋值给i。也可写成"i++"或“++i"。

具有计数功能的变量称为“计数器”。

2、若有3个 连续的自然数,已知第一个自然数为100,请编写程序输出这3个自然数(每行输出一个数)。

 1 //2、若有3个 连续的自然数,已知第一个自然数为100,
2 //请编写程序输出这3个自然数(每行输出一个数)。
3 #include <iostream> //包含输入输出流头文件iostream
4 using namespace std; //指明程序 使用命名空间std(标准)
5 int main()
6 {
7 int n;
8 n=100;
9 cout<<n<<endl; //先输出n的原来的值
10 n++; //++n和n++的结果是一样的。但如果在赋值中则不一样。
11 cout<<n<<endl;
12 ++n; //n++表先用n的值赋值,再对n进行自增。
13 cout<<n<<endl;//++n表先对n进行自增,再用自增后n的值赋值。
14 return 0;
15 } a=100;
b=100;
x=a++;
y=++b;



3、练习

(1)语句“x=++b;”与下面( )项的语句等价。

    A.++b;     B.x=b;     C.b++;    D.x=b;
x=b; ++b; b=x; ++x;

(2)阅读程序写出结果

1 //2、阅读程序写出结果
2 #include <iostream> //包含输入输出流头文件iostream
3 using namespace std; //指明程序 使用命名空间std(标准)
4 int main()
5 {
6 int i;
7 i=10;
8 i--;
9 --i;
10 i--;
11 i++;
12 cout<<i<<endl;
13 return 0;
14 }

(3)完善程序

 1 //3、完善程序
2 //尼克爷爷的岁数、爸爸的岁数和他自己的岁数是3个等差数列,
3 //每两个数相差25,已知尼克为11岁,那么请输出他们的岁数。
4 #include <iostream> //包含输入输出流头文件iostream
5 using namespace std; //指明程序 使用命名空间std(标准)
6 int main()
7 {
8 int n;
9 n=11;
10 cout<<n<<endl;
11 _____________;
12 cout<<n<<endl;
13 n=n+25;
14 ______________;
15 return 0;
16 }

三、累加器

1、试编一程序,算一算《雪花》第一句中数字1、2、3、4的和是多少?

雪花

一片二片三四片,

五片六片七八片。

九片十片无数片,

飞入梅花看不见。

 1 #include <iostream>    //包含输入输出流头文件iostream
2 using namespace std; //指明程序 使用命名空间std(标准)
3 int main()
4 {
5 int sum=0;
6 sum=sum+1;
7 sum=sum+2;
8 sum=sum+3;
9 sum=sum+4;
10 cout<<"1+2+3+4="<<sum<<endl;
11 return 0;
12 }

注释:

sum,通常我们把具有累加功能的变量称为“累加器”。

2练习



(2)阅读程序写结果

 1 //阅读程序写结果
2 #include <iostream> //包含输入输出流头文件iostream
3 using namespace std; //指明程序 使用命名空间std(标准)
4 int main()
5 {
6 int a,b,c,s;
7 s=0;
8 a=7;
9 b=8;
10 c=3;
11 s=s+a;
12 s=s+b;
13 s=s+c;
14 cout<<"s="<<s<<endl;
15 return 0;
16 }

输出:_____________

(3)完善程序

每周三,狐狸老师要为向日葵班、苹果班、草莓班的同学们上智能机器人课,其中向日葵班43人,苹果班42人,草莓班45人。请问每周三狐狸老师一共为多少名学生上课?

 1 #include <iostream>    //包含输入输出流头文件iostream
2 using namespace std; //指明程序 使用命名空间std(标准)
3 int main()
4 {
5 int sum,n;
6 ___________;
7 n=43;
8 sum=sum+n;
9 n=42;
10 __________;
11 n=45;
12 sum=sum+n;
13 cout<<"sum="<<sum<<endl;
14 return 0;
15 }

四、复合运算符

1、1个细胞,第1次分裂成2个,第2次分裂成4个,......试编一程序,算一算第5次分裂成几个?

1 #include <iostream>    //包含输入输出流头文件iostream
2 using namespace std; //指明程序 使用命名空间std(标准)
3 int main()
4 {
5 int n=1;
6 n=n*2;
7 n=n*2;
8 n=n*2;
9 n*=2;
10 n*=2;
11 cout<<n<<endl;
12 return 0;
13 }

注释:

在赋值符“=”之前加上“”运算符,构成复合运算符“=”。语句“n=2;”相当于“n=n2;”。

其它运算符也一样:

s+=i 等同于 s=s+i

s-=i 等同于 s=s-i

s=i 等同于 s=si

s/=i 等同于 s=s/i

2、练习

(1)下列计算机设备中,属于存储设备的是( )

   A.键盘      B.RAM     C.显示器      D.CPU

(2)阅读程序写结果。

1 #include <iostream>    //包含输入输出流头文件iostream
2 using namespace std; //指明程序 使用命名空间std(标准)
3 int main()
4 {
5 int i=1,sum=0;
6 sum+=i;
7 i*=2;
8 sum+=i;
9 i*=2;
10 sum+=i;
11 i*=2;
12 sum+=i;
13 cout<<"i="<<i<<","<<"sum="<<sum<<endl;
14 return 0;
15 }

输出:_____________

(3)完善程序

格莱尔来30根骨头,第一天吃掉一半后又吃了一根,第二天将剩下的骨头吃了一半后又吃了一根,第三天仍然如此。问第三天吃完后还剩下多少根骨头?

1 #include <iostream>    //包含输入输出流头文件iostream
2 using namespace std; //指明程序 使用命名空间std(标准)
3 int main()
4 {
5 int ______;
6 n=n/2-1;
7 n=n/2-1;
8 ________;
9 cout<<n<<endl;
10 return 0;
11 }

03C++顺序结构(2)的更多相关文章

  1. java里的分支语句--程序运行流程的分类(顺序结构,分支结构,循环结构)

    JAVA里面的程序运行流程分三大类: 1,顺序结构:顺序结构就是依次执行每一行代码 2,分支结构:分支结构就是按不同的条件进行分支 3,循环结构:一段代码依条件进行循环执行. 其中,分支结构有两大类: ...

  2. C语言 串 顺序结构 实现

    一个能够自动扩容的顺序结构的串 ArrString (GCC编译). /** * @brief C语言 串 顺序结构 实现 * @author wid * @date 2013-11-01 * * @ ...

  3. C语言 队列 顺序结构 实现

    一个能够自动扩容的顺序结构的队列 ArrQueue (GCC编译). /** * @brief C语言顺序结构队列的实现 * @author wid * @date 2013-10-30 * * @n ...

  4. C语言 栈 顺序结构 实现

    一个能够自动扩容的顺序结构的栈 ArrStack 实例 (GCC编译). /** * @brief C语言实现的顺序结构类型的栈 * @author wid * @date 2013-10-29 * ...

  5. C#学习笔记11:C#中的顺序结构、分支结构、循环结构

    顺序结构: 代码从Main()函数开始运行,从上到下,一行一行的执行,不漏掉代码. Int a=6; int b=5; int c=a+b; Console.Write(c); 分支结构: 代码有可能 ...

  6. C语言程序设计第二次作业——顺序结构

    (一)改错题 1.输出带框文字:在屏幕上输出以下3行信息. 错误信息1: 错误原因:i和d位置错误 改正方法:i和d位置互换 错误信息2: 错误原因:\n后缺了一个" 改正方法:\n后加一个 ...

  7. C语言第二次作业-----顺序结构

    一:改错题 (1)输出指定信息: 将给定源代码输入编译器: 执行编译命令,发现编译器报错,错误信息如下: 经检查,发现源程序将"stdio.h"误拼为"stido.h&q ...

  8. C语言程序设计第二次作业--顺序结构

    C语言程序设计第二次作业--顺序结构 1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 #include <stido ...

  9. C语言第二次作业——顺序结构

    一.改错题 1.输出带框文字:在屏幕上输出以下3行信息. (1)源程序 对程序进行编译,发现错误信息1 错误原因:stdio拼写错误 改正方法:将stdio正确拼写 对程序进行编译,发现错误信息2 错 ...

  10. C语言程序设计第二次作业—————顺序结构改

    1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 #include <stido.h> int mian() { ...

随机推荐

  1. FFmpeg开发笔记(五十三)移动端的国产直播录制工具EasyPusher

    ​EasyPusher是一款国产的RTSP直播录制推流客户端工具,它支持Windows.Linux.Android.iOS等操作系统.EasyPusher采用RTSP推流协议,其中安卓版EasyPus ...

  2. 一些rand()的测试

    rand()生成的伪随机数已经足够我们实用,为了跟好的理解rand()跟seed的关系,做了一些测试! rand()函数种子默认为1,在每一次程序运行中,随机数相同,在一次运行中,可将生成数看做随机 ...

  3. debian 12 编译 vlc/libvlc 支持 rtsp

    debian 官方从11开始,不再提供支持 rtsp 的 VLC deb 包,通过 libvlc 播放 rtsp 也无法实现,因此需要自己编译. # 安装编译环境,编译依赖库以及 contrib 第三 ...

  4. USB协议详解第11讲(USB描述符-总结)

    描述符回顾总结 1.其实所有的描述符都是USB设备用来描述自己属性及用途的,所以必须在设备端实现对应的描述符,主机会在枚举此设备的时候根据设备实现的描述符去确定设备到底是一个什么样的设备.设备需要的总 ...

  5. 03 什么是预训练(Transformer 前奏)

    博客配套视频链接: https://space.bilibili.com/383551518?spm_id_from=333.1007.0.0 b 站直接看 配套 github 链接:https:// ...

  6. 题解:AT_abc374_d [ABC374D] Laser Marking

    题目传送门 luogu观看 思路 注意一下数据范围. \(1 \le n \le 6\) 首先想到 dfs. 按照题意,先算出位置到线段的一段所需的时间. 再算出画线段所需的时间,就行了. 输出后发现 ...

  7. P3472 [POI2008]MAF-Mafia

    P3472 [POI2008]MAF-Mafia 解法 不难发现,这个题目建图后出现的是一个基环树森林+一堆环,因为每个点仅有一条出边. 大概长这样: 对于最大,最小值,我们分开考虑. 最大值 可以看 ...

  8. vue搜索历史记录缓存实现

    思路: 1.浏览器缓存永久保存搜索历史数据. 2.页面初始化将数据保存到页面变量中. 3.对搜索历史记录的怎加和删除,要同步到缓存中. ----------------直接看代码----------- ...

  9. C#_自定义简单ORM

    一,基本思路:利用C#的标签和反射功能实现自定义轻量级ORM 标签Attribute附着在实体属性或实体类名上,这样可以取到实体对应的表名,属性对应的表字段名,数据类型,是否主键,字段注释等基本信息 ...

  10. window平台快速部署syslog服务器

    最近内部测试需要部署一套syslog服务器,网上找了下,无论是linux还是windows,部署均非常麻烦,现在和大家分享一个基于windows平台快速部署syslog服务器的方法 这里用到的工具就是 ...