第二单元 顺序结构程序设计
第一课 cout语句
使用输入/输出流必须加上头文件:
#include<iostream>
1.cout语句是实现输出功能的语句,其格式如下:
cout<<项目<<项目2<<…<<项目n
2.如果项目是表达式,则输出表达式的值
3.如果项目加引号,则输出引号内的内容
例如:若"2+4"则输出2+4
若2+4则输出6
4.如果项目是endl,则表示换行
第二课 数据类型
使用的各种变量都应"先声明,后使用"
1.数据有数据类型、取值范围、运算类型三个要素
⒉①数据类型整型int,字节长度4(32)位
longlong字节长度8(64位)(长整型)
②字符型char1(8位)
③实型(浮点型)float4(32位)
double8(64位)
⒊整数还有"无符号"类型,其取值只会是正数和零,范围扩大一倍,
好处:储存的正数扩大了一倍
4.按存储精确度高的存储
例如:在一个程序中同时出现int,double
则按double储存
5.数据溢出
意为:定义了给一个变量赋予了初值,它经过某些运算超过了所给的数据类型的数据范围
6.sizeof函数的作用是获取各种数据类型的长度,
可以得到一个特定变量的储存空间大小
第三课 常量与变量
⑴常量
1.C++定义一个符号常量的格式如下:
类型名 const 常量名;
或const 类型名 常量名;
不可更改
2.常量名通常用大写字母表示(一行定义一个)
⑵变量
1.C++定义一个变量的格式如下:
类型名变量名1,变量名2,…,变量名n;
与常量的区别:
①少了const
②1行可有多个变量
2.变量名
常量名、变量名、函数名等都称之为"标识符"
标识符命名规则如下:
ⅰ标识符必须先定义后使用
ⅱ在同一作用域内,标识符不能重复定义
ⅲ标识符要尽量做到见名知义
ⅳ标识符只能包括字母数字和下划线“_”,
并且开头只能是字母或下划线
例如:sum,Day,_day
sum123_
2.变量的初始化
初始化即给定一个初始值
3.变量的赋值
赋值语句的格式如下:
变量名=值或者表达式
其中,“=”称为赋值号
第四课 字符与字符串
存放单个字符的变量称为字符变量,用一对单引号括起来的一个字符
存放一串有若干字符的变量称为字符串变量,用双引号括起来的字符序列
空字符串""里面也没有空格
1.字符变量
定义字符变量的格式如下
char 标识符1,标识符2,…,标识符n;
在内存中占用一个字节,字符数据储存的是其ASCII码值
2.转义字符
C++定义了一些字符前加“\”的特殊字符称为转义字符
字符输入函数:getchar
字符输出函数:putchar
\n表示换行
\"表示双撇号字符
在程序中显示不可显示的字符
' '表示一个字符的开始与结束
" "表示一段文字的开始与结束
⒊字符串变量
①可以用字符数组char s[ ]存放字符串
也可以用STL中的string类型
例如:string s="1234 asdf"
②“\0”作为字符串结束的标志
③getchar和putchar是输入输出一个字符
如果要输入输出一个字符串可以用字符串输入输出函数gets和puts
第五课 算术运算符
重点注意:运算优先级
①表达式的计算结果称为表达式的值
②任何一个表达式都有值
使用这些数学函数前必须添加“cmath”或者“math.h”头文件
第六课 cin语句
cin是输入功能的语句,其格式一般为
cin>>项目1>>项目2>>…>>项目n;
使用cin语句从键盘输入多个数据项的时候,一定要注意三个一致:数据个数一致,输入顺序一致,数据类型一致
第七课 赋值语句
⒈赋值语句的格式如下:
变量名=值或者代表式;
“=”称为赋值号
注意:a=b与a==b完全不同的意义,“==”是关系运算符
⒉bool类型:真的是1,假的是0
⒊复合写法
⑴算术复合
例如:“a=a+x”可以写成“a+=x”
⑵赋值复合
一次可以给几个变量赋同一个值
只要出现连续的赋值号即可
⑶逗号表达式(串联作用)运算级别最低
可用逗号连接几个表达式,构成一个更大的表达式其格式如下:
表达式1,表达式2,…,表达式n;
第八课 复合运算符
作用:使得修改变量值的操作更加简洁
⒈自加运算符和自减运算符
①单独使用时i++,++i/i--,--i其作用相同
②在赋值语句中使用时两种用法就不再相同
③++或--只能用于变量
④在遇到多个是++和--时,计算的结合方向是按照表达式自右向左进行
2.复合算术赋值
优点:程序更精炼编译效率高
第九课 运算规则
⒈整形数据和实型数据可以混合运算,
字符型数据可以和整型数据通用
⒉自动转换(只限一次):
将不同类型的数据转换为同一类型在进行运算
⒊[ ],{ }不是做运算符的运算符
⒋在赋值运算中,赋值号两边数据的类型不同时,赋值号右边量或者表达式值的类型将自动转换为左变量的类型
⒌如果右侧数据类型长度比左边长,将丢失一部分数据,这样会降低精度,丢失的部分按四舍五入的规则向前舍入
⒍除了“自动转换”外,还可以“强制类型转换”格式为:
(类型名)(表达式)
(类型名)变量
例如:
(double)a //将a强制转换成double型
(int)(x+y) //将x+y的值强制转换为int型
(float)(4%3) //将4%3的值强制转换成float型
注:(float)(4%3)不可以去掉括号因为整数%整数不能是实数%实数.
第十课 格式控制
C语言中的输入输出函数语句scanf和printf
对于大数据的输入输出使用scanf和printf,比C++中的输入输出流语句(cin和cout)效率更高,速度更快
scanf和printf使用前需要加上cstdio头文件
⒈printf函数
printf函数的格式:
printf(格式控制字符串,输出列表);
⑴要注意数据类型应与格式说明匹配,
否则会发生错误
①字符串本身长度大于m,则突破m的限制,将字符串全部输出
②若串的长度小于m则左补空格
⒉scanf函数
scanf函数的格式为
scanf(格式控制字符串,地址表列);
scanf的作用是输入指定形式的数据.
不仅列表可以是变量的地址也可以是字符串的首地址
重点:“&a”表示取a变量的地址,
“&成为取地值符
“*”表示跳过相应数据
⒊scanf、printf与cin、cout的比较
cin是输入流,cout是输出流包含在头文件<iostream>中
scanf是格式化输入,printf是格式化输出包含在头文件<cstdio>中
printf输出效率比较高,但是编写代码相对而言麻烦一些
scanf函数取数据时遇到回车、空格、TAB就会停止