程序流程结构

例举常用的:

三目运算符

作用: 通过三目运算符实现简单的判断;
语法表达式1 ? 表达式2 :表达式3

解释:
如果表达式1的值为真,执行表达式2,并返回表达式2的结果;
如果表达式1的值为假,执行表达式3,并返回表达式3的结果;

int a = 10,b = 5,c = 0;
c = a > b ? a : b;	
cout << c ;	
//输出c为10;
  • 三目运算可以作为右值(结果)赋给左边的变量;
  • 同时在C++中三目运算符返回的是变量,可以继续赋值
int a = 10,b =5;
(a > b ? a : b) = 100;
cout << "a=" << a <<endl;
cout << "b=" << b <<endl;
//输出结果为a=100;  b=5;

switch语句

作用:执行多条件分支语句;

switch(表达式){
	case 结果1:执行语句;break;//退出当前分支
	case 结果2:执行语句;break;
	...
	default:执行语句;break}

if和switch区别:
switch缺点:判断的时候只能是整型或者字符型,不可以是一个区间;
switch优点:结构清晰,执行效率高;

循环结构

while循环语句
//while()括号中填入循环条件
//注意事项:写循环一定要避免死循环的出现;
while(num < 10){
	cout << num << endl;
	num++;
}
//猜数字游戏,注意使用break退出循环
while(1){
	if(条件){
		语句
	}else{
		语句;
		break;	//退出当前循环
	}
}
do…while循环语句
  • 求水仙花数习题:
int main() {
	//num为一个三位数;即100-999;
	int num = 100;
	do {
		int a = num % 10;	//获去数的个位数
		int b = num / 10 % 10;	//十位
		int c = num / 100;	//百位
		if (a*a*a + b * b*b + c * c*c == num) {
			cout << num << endl;	//则此数为水仙花数
		}

		num++;
	} while (num < 1000);	//注意:最后有分号结束
	system("pause");
	return 0;
}
循环嵌套语句
//打印正方体
//外层执行一次,内层执行一周
//外层循环
for(int i = 0 ;i < 10;i++){
	for(int j = 0;j < 10;j++){
		cout << "*";
	}
	cout<<endl;
}

乘法口诀表

int main() {
	for (int i = 1; i <= 9; i++) {
		for (int j = 1; j <= i; j++) {
			cout << i << "*" << j<<"="<<i*j<<"\t";
		}
		cout << endl;
	}

	system("pause");
	return 0;
}

跳转语句

break语句

作用:用于跳出选择结构或者循环结构;
break使用的时机

  • 出现在switch条件语句中,作用是终止case并跳出switch;
  • 出现在循环语句中,作用是跳出当前的循环语句;
  • 出现在嵌套循环中,跳出最近的内层嵌套循环
    求素数
#include<iostream>
using namespace std;

//-------- - 首先要知道质数的定义。
//素数:只能被1或者自身整除的数字,0和1都不是质数
//因为有内外层循环:所以需要使用连通器原理,需要定义一个flag开关变量;——以此来判断是否符合要求;
int main() {
	bool flag;
	int count=0;
	//因为0和1都不属于素数,所以从2开始判断;
	for (int i = 2; i <1000; i++) {
		//定义连通器按钮flag;
		//注意:每判断完一个数就要将flag归0;这样才能更好的判断下一个数——习惯性用bool数据类型
		flag = false;
		//注意:一定要从2开始,因为所有数除以1都会余0;
		for (int j = 2; j <= i / 2; j++) {
			if (i % j == 0) {	//特别注意:能整除是指%求余为0
				//利用flag来传信,告知此数不是素数
				flag = true;
				break;	
				//跳出循环,进入下一层循环
			}
		}
		if (!flag) {
			cout << i << endl;
			count++;
		}
	}
	cout << "1-1000有" << count << "个素数";
	system("pause");
	return 0;
}

cotinue语句

**作用:**在循环语句中,跳过本次循环中余下尚未执行的语句,继续执行下一次循环;
打印奇数

for (int i = 0; i < 100; i++) {
		if (i % 2 == 0) {
			continue;
		}
		cout << i << "\t";
	}

goto语句

作用:可以无条件跳转语句
语法:goto 标记
解释:如果标记的名称存在,执行到goto语句时,会跳转到标记的位置;
用的比较少

cout<<"1....."
cout<<"2....."
goto FLAG;
COUT<<"3...."	//会直接跳过3....
FLAG:....
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值