疫情学习第二天:C++

在取模运算的时候,小数不可以进行取模运算。只有整型变量才可以进行取模运算
上午:目标:24-41

4 程序流程结构

三种程序运行结构:顺序、选择、循环
顺序:程序按照顺序进行,不发生跳转
选择:依据条件是否满足,选择执行
循环:依据条件是否满足,循环执行

4.1选择结构

4.1.1 if 语句

1.单行:if (条件){}

if(score>600)
{
	cout << "一本" <<endl;
}

注意if后面不要加分号,加上分号,if白写
2.多行if if(条件){}else{}

if(score>600)
{
	cout << "一本" <<endl;
}
else
{
	cout <<"二本" << endl;
}

3.多条件语句if if(条件1){条件一满足执行的语句}else if(条件2){条件2满足的执行语句}else{都不满足}
4.嵌套if语句:达到更精准的条件判断

4.1.2 三目运算符

进行简单的判断 c = (a > b ? a:b)//a和b比较。把变量值较大的赋值给c
1?2:3
1真执行2
1假执行3
三目运算符返回的是变量,可以对变量再进行赋值的操作
(a > b ? a:b)= 100
把较大的变量赋值为100

4.1.3 switch

switch(表达式)
{
	case 结果1:执行语句;breakcase 结果2;执行语句;break;
	……
	default:执行语句;break}

例子
注意每个分支都要打上一个break

switch (score)
{
case 10:
	cout << "经典电影" << endl
	break;//退出当前的分支
case 9:
	cout << "经典电影" << endl
	break;
default :
	cout << "laji" <<endl
	break;
}

switch()里面只能放一个整型或者字符型,不能进行一个区间的判断
优点:结构很清晰,执行效率高。
case里面必须有break

4.2 循环结构

4.2.1 while循环

while(循环条件){}
只要循环条件为真就执行循环语句

while (num<10)
{
	cout << num << endl;
	num++ ;
}

添加随机数种子,作用利用当前系统时间生成随机数,防止每次的随即数都一样。
#include < ctime >
srand( (unsigned init)time(NULL) )

#include <iostream>
#include <ctime>
using namespace std;
int main()
{
srand((unsigned init)time(NULL));
int num = rand() % 100 + 1;
//cout << num << endl;
int val = 0//玩家输入的数据
int counter = 0
while (counter<2)
{
counter++;//超过n次就不能执行
cin >> val;
if (val > num)
{
	cout<<"猜测过大"<< endl;	
} 
else if(val < num)
{
	cout<<"猜测过小"<< endl;
}
else 
{
	cout<<"猜测正确"<< endl;
	break;//用关键字来退出当前的循环
}

}
symstem("pause");
return 0;
}
4.2.2 do while 循环语句

满足循环条件执行循环语句
do{循环语句} while(循环条件)
先执行一次循环语句,再判断满不满足循环条件。
输出0-9的数字
while后面要加逗号

int num = 0;
do
{
	cout << num << endl;
	num ++;
}
while(num<10);
案例:水仙花数

水仙花数是一个3位数,每个位的数字3次幂之和等于他本身

#include <iostream>
using namespace std;
int main()
{
int i = 100;
int gewei = 0;
int shiwei = 0;
int baiwei = 0;
do{
baiwei = i/100;
shiwei = (i - baiwei*100)/10;
gewei = i%10;
if (baiwei^3+shiwei^3+gewei^3 == i)
{
	cout << i << endl
}
i++;
}
while (i < =999);
symstem("pause");
return 0;
}
4.2.3 for 循环语句

满足循环条件执行循环语句
for(起始表达式;条件表达式;末尾循环体){循环语句};

//第一种,写一行比较整洁
for (int i = 0;i<10;i++)
{
}
//第二种
int i = 0 ;
for(;;)
{
	if(i>=10)
	{
		break;
	}
	cout << i << endl;
	i++;
}

先i=0,
然后i<10,然后执行循环体,然后i++,
然后i<10,然后执行循环体,然后i++,
然后i<10,然后执行循环体,然后i++,
然后i<10,然后执行循环体,然后i++,
注意用分号隔开

#include <iostream>
using namespace std;
int main()
{
for(int i = 0;i<100;i++)
{
int gewei = 0;
int shiwei = 0;
int yushu = 0;
gewei = i%10;
shiwei = i/10;
yushu = i/7
if(gewei == 7||shiwei==7||yushu==0)
{
cout<<"敲桌子<<endl;
}
else
{
cout<<i<<endl;
}
}
symstem("pause");
return 0;
}

答案的代码

for (int i = 1;i<=100;i++)
{
if(i%7==0||i%10==7||i/10==7)
{
cout<<"敲桌子"<<endl;
}
else
{
cout<<i<<endl;
}
}
4.2.4嵌套循环

外层执行一次,内层执行一周

for(int j=0;j<10;j++)
{
	for (int i=0;i<10;i++)
	{
		cout<<"*"<<" ";
	}
	cout << endl;
}
案例乘法口诀表
#include <iostream>
using namespace std;
int main()
{
for (int j = 1;j<10,j++)
{
	for (int i = 1;i<j;i++)
	{
		cout<<i<<"*"<<j<<"="<<(i*j)<<" ";
	}
	cout<<endl;
}
symstem("pause");
return 0;
}

4.3 跳转语句

4.3.1 break语句

用于跳出选择结构或者循环语句
1.switch
2.循环语句中

for()
{
if (i==5)
{
break;
}
}

3.出现在嵌套语句中

4.3.2 continue语句

在循环语句中,跳过本次循环中余下尚未执行的语句,继续执行下一次循环

//奇数输出,偶数不输出
for()
{
if (i%2==0)
{
continue;//可以作为筛选条件,执行到此就不再往下执行了,执行下一次循环
}
cout<<i<<endl
}
4.3.3 goto语句

可以无条件跳转语句
如果标记的名称存在的时候,执行到goto语句的时候,会跳转到标记的位置。

goto FLAG;

FLAG:

平时不会使用。

发布了24 篇原创文章 · 获赞 3 · 访问量 918

猜你喜欢

转载自blog.csdn.net/Magic_o/article/details/104097950