文章目录
第一单元:顺序结构
1.后缀名
C++的后缀是.cpp
运行出来的程序是.xcx格式
2. cout语句
有的人会问在C++中如何输出,我们今天就来看看吧!
在C++中用cout语句来输出一些项目
cout语句的一般格式为:
cout<<项目1<<项目2<<项目3<<…<<项目n;
cout语句在输出时从右往左算,输出是从左往右输出
在使用 cout语句中,我们需要引入头文件,并指明命名空间,像下面这样
#include<bits/stdc++.h>//万能头文件
using namespace std;//命名空间
int main() {//主函数
return 0;//结束
}
除了这个头文件,还有
#include<iostream>//头文件
using namespace std;//命名空间
int main() {//主函数
return 0;//结束
}
等头文件
C++兼容C,可以把C的一些函数拿来用,不过用法可能不一样。
只有引入了头文件,并指明了命名空间,才可以运行任何程序
我们来看看完整的代码吧!
#include<bits/stdc++.h>//万能头文件
using namespace std;//命名空间
int main() {//主函数
cout<<"点个赞吧!";
return 0;//结束
}
运行结果:
点个赞吧!
3. 变量、表达式和赋值语句
有人又会问如果要在C++代替某个数要怎么办呢,我们一起来看一看吧!
在C++中用变量来代替某个数。
数据类型 | 意思 |
---|---|
int | 整型 |
long | 长整型 |
long long | 超长整型 |
char | 字符型 |
string | 字符串 |
bool | 布尔型 |
void | 无类型 |
short | 短型 |
float | 单精度浮点数 |
double | 双精度浮点数 |
const | 常量 |
int a;//定义整型变量a
将那个数的值给变量就需要用到赋值语句
a=0;//将a的值设为0
在这里=读赋值
a=0;表示把0赋值给a
在C++中,乘号和除号与我们平时不一样,大家看一看吧!
数学符号 | C++中的运算符号 |
---|---|
+ | + |
- | - |
× | * |
÷ | / |
4.计数器
有人会问在C++中如何将变量的值增加,这里就需要用到计数器
i=i+1;
语句i=i+1的含义是先把i的值增加1,再把它赋值给i
5.换行
在C++中用endl换行,endl是end line的缩写
cout<<"点个赞吧"<<endl;
在这里加上头文件就可以输出
点个赞吧
6.累加器
我们用C++来算一算1+2+3+4+5
代码是这样的:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int sum;
sum=0;
sum=sum+1;
sum=sum+2;
sum=sum+3;
sum=sum+4;
sum=sum+5;
cout<<sum<<endl;
return 0;
}
这样就可以输出1+2+3+4+5的值了,我们来看看程序是怎么运行的吧!
sum | = | sum | + | 口 | ||
---|---|---|---|---|---|---|
sum=0; | …………… | sum | <------ | 0 | ||
sum=sum+1; | …………… | sum | <------ | 0 | + | 1 |
sum=sum+2; | …………… | sum | <------ | 1 | + | 2 |
sum=sum+3; | …………… | sum | <------ | 2 | + | 3 |
sum=sum+4; | …………… | sum | <------ | 3 | + | 4 |
7.复合运算符
在赋值符号之前加上C++中的运算符就是复合运算符。
复合运算符 | 运算符 | |
---|---|---|
a+=i | = | a=a+i |
a-=i | = | a=a-i |
a*=i | = | a=a*i |
a/=i | = | a=a/i |
8.交换两个变量的值和注释符
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a=100,b=100,t;
t=a;//交换
a=b;
b=t;
cout<<a<<" "<<b;
return 0;
}
这里交换还可以用swap(),这个有点难以后再讲
这里//是单行注释符,注释的内容不会被运行
9.输入
今天来教大家在C++中如何输入,这里我们需要用到cin语句。格式为:
cin>>项目1>>项目2>>项目3>>…>>项目n;
还有这几种输入方法
输入方法 | 输入类型 |
---|---|
cin | string、int、float、double、short、long、long long、char |
cin.getling | char(数组) |
getling | string |
10.域宽setw
setw
是set width的缩写,用来设置域宽
设置域宽默认右对齐,setw
只对跟在后面的数据起作用
如果输出位数所设计的域宽大,系统不会截断,系统会输出所有位,如果输出位数所设计的域宽小,系统自动补充空格
用法:
sewt(位数);
11.int整型
int,是整型数据类型,也就是说int定义的变量,不能是小数,那如果我们给int定义的变量的值设为小数,那它输出时会变成:
加入我们给此变量的值设为1.5,大家可以猜一下会变成什么。
答案是1。
因为int的机制是向下取整,向下取整的含义就是一个数如果是小数,它就会往小的去取整,就算这个数是1.999999999999999
他也会变成1
!
还有,int的范围是-2^31 到( 2^31)-1
除了这个,还有许多数据类型,后面会讲!
12.float单精度浮点数&&double双精度浮点数
在讲int时我们讲到了float和double,float和double都是可以存储小数的,但是double能存的小数数位更多。
所以float叫单精度,double叫双精度!
float的小数位数为小数点后5位
double的小数位数为小数点后13位
13.char字符&&string字符串
char是字符型,如果不是数组的话只能存储一个字符,是数组的能存储数组个数个字符
string是字符串,可以看成一个无限大的字符数组
char数组用cin.getling()来输入,用法是:
cin.getling(字符型数组名,字符型数组长度)
string用getlint()输入,用法是:
getling(输入方式,字符串名)
14.bool布尔型
bool是布尔型,值只有1和0,1代表true(真),0代表false(假),除了0以外的数都是true(真)
15.ASCII码
ASCll码是美国信息交换标准代码的首字母简写,char和string中的字符都在ASCII中
第二单元:选择结构
1.if语句
在C++中,if语句用来判断,格式是:
if(表达式)语句1;
像n%2!=0或n>=60等语句是表达式,像“>=”和“!=”都是关系运算符
在if中表达式的值为真才会执行下面的语句,如果值为假会执行if语句的下一个语句
关系运算符名称 | 关系运算符 |
---|---|
大于 | > |
大于等于 | >= |
等于 | == |
小于等于 | <= |
小于 | < |
不等于 | != |
大家可以做一做这个题
2051:【例3.1】偶数
【题目描述】
读入一个正整数a,如果a为偶数输出yes。
【输入】
一个正整数a。
【输出】
偶数输出yes,否则什么也不输出。
【输入样例】
12
【输出样例】
yes
【网址】
2051:【例3.1】偶数
【代码】
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a;
cin>>a;
if(a%2==0)//判断是否为偶数
cout<<"yes"<<endl;//输出yes
return 0;
}
2.if-else语句
if语句的另一种格式为:
if(表达式)
语句1;
else
语句2;
在if中表达式的值为真会执行下面的语句,如果值为假会执行else语句下面的语句
大家可以做一做这个题
2054:【例3.4】适合晨练
【题目描述】
输入温度t的值,判断是否适合晨练。(25≤t≤30,则适合晨练ok!,否则不适合no!)
【输入】
输入温度t的值。
【输出】
输出判断结果
【输入样例】
26
【输出样例】
ok!
【网址】
2054:【例3.4】适合晨练
【代码】
#include<bits/stdc++.h>
using namespace std;
int main()
{
int t;
cin>>t;
if(t>=25&&t<=30)
cout<<"ok!";
else
cout<<"no!";
return 0;
}
3.if嵌套
一个语句中可能会有一个或多个if嵌套在一起,格式为:
if(表达式1){
if(表达式2){
语句1;
}
else{
语句2;
}
}
else{
if(表达式3){
语句3;
}
else{
语句4;
}
}
4.随机函数rand()
在生活中,我们可能会需要用到随机数,在c++中,随机数要用到函数rand()
要产生a-b之间的随机函数,就要使用通用公式:
rand()%(b-a+1)+a
只有这个公式在C++中多次运行产生的随机数是相同的,每次要得到不同的随机数,则需要用srand()来设置随机种子。srand(time(0))是设置系统时间为时间种子,如果不使用万能头文件,就得包含ctime头文件,即#include< ctime>。
5.switch语句
用if语句处理多个分支时需要使用if-else-if结构,分支越多,嵌套的if语句层就越多,程序不但庞大而且理解也比较困难。
C++提供了一个专门处理多个分支结构的条件选择语句,称为switch语句,又叫开关语句。
switch语句格式是:
switch(表达式){
case 常量表达式1:语句1;break;
case 常量表达式2:语句2;break;
……
case 常量表达式n:语句n;break;
default 语句n+1;break;
}
第三单元:循环结构
1.for语句
在解决有些问题时,需要重复几百次、几千次甚至几万次,这时,我们要用到for语句。for语句的常见格式为:
for(循环变量初值;循环条件;循环变量增值)
语句;
其中,“语句;”就是循环体,可以是一个简单的语句,也可以是用“{}”(花括号)括起来的复合语句。
他的执行过程为:
- 先执行循环变量赋初值语句
- 再判断条件若为假(值为0),则结束循环,跳转到5;若为真(值为1),则执行循环体语句
- 执行循环变量增值语句
- 转回2继续执行
- 循环结束,执行for循环下一个语句。