三目运算符
作用是实现简单的判断
语法:表达式1?表达式2:表达式3
表达式1的值为真,执行表达式2,并返回表达式2的结果
表达式1的值为假,执行表达式3,并返回表达式3的结果
可以参考if else语句
C++中的三目运算符返回的是变量,可以继续赋值
int main()
{
int a = 10;
int b = 20;
int c = 0;
c=a > b ? a : b;
cout <<"c="<< c << endl;
(a > b ? a : b)=100;//赋值
cout << "a=" << a << endl;
cout << "b=" << b << endl;
system("pause");
return 0;
}
输出为a=10;b=100;c=20
switch语句
执行多条件分支语句
switch(表达式)
{
case 结果1:执行语句;break;
case 结果2:执行语句;break;
....
default:执行语句;break;
}
if else 与switch的区别:
if else在判断时可以是一个区间。
但是switch只能是整型或者字符型,不可以是区间。
switch的优点是结构清晰,执行效率高。
while循环语句
循环
满足循环条件,执行循环语句
语法:while(循环条件){循环语句}
只要循环条件结果为真就执行循环语句
int main()
{ //依次输出0-9
int a = 0;
cout << a << endl;
while (a <10 )
{
a++;
cout << a << endl;
}
system("pause");
return 0;
}
这样输出的是0-10,不符合要求,我们需要的是0-9
int main()
{
//依次输出0-9
int a = 0;
while (a <10 )
{
cout << a << endl;
a++;
}
system("pause");
return 0;
}
要注意a++的位置,第一种是先加在输出,第二种是先输出再加
while循环案例
猜数字游戏
这个是我自己写的,功能上可以实现,但是不知道语句的用法是否规范。
int main()
{
//生成随机数
int a = rand () % 100 + 1;//rand () % 100 + 1生成的是0+1~99+1范围的随机数
int b=0;
while (b != a)
{
cin >> b;
if (b > a)
{
cout << "您猜大了" << endl;
}
else if (b < a)
{
cout << "您猜小了" << endl;
}
}
if (a == b)
{
cout << "您猜对了" << endl;
}
system("pause");
return 0;
}
接下来是按照视频学习的
#include<ctime>
//在使用time系统时间头文件包含
int main()
{
//添加随机数种子,作用是利用当前系统时间生成随机数,防止每次随机数都一样
srand((unsigned int)time(NULL));
//生成随机数(只有这个生成的随机数是一样的)
int a = rand() % 100 + 1;//rand () % 100 + 1生成的是0+1~99+1范围的随机数
int b = 0;
while (1)
{
cin >> b;
if (b > a)
{
cout << "您猜大了" << endl;
}
else if (b < a)
{
cout << "您猜小了" << endl;
}
else
{
cout << "您猜对了" << endl;
break;
}
}
system("pause");
return 0;
}
do…while 循环
作用:满足循环条件,执行循环语句
语法:do{循环语句} while(循环条件)
do…while 与while 会先执行一次循环语句,再判断循环条件
int main()
{
int a=0;
do
{
cout << a << endl;
a++;
}
while (a < 10);
system("pause");
return 0;
}