运算符
算术运算符
#include <iostream>
using namespace std;
int main() {
//运算符 算数运算符 + - * / %
int a = 10;
int b = 20;
cout << a+b << endl;
cout << a-b << endl;
cout << a/b << endl; //除法运算,结果取跟参与运算的变量相同的数据类型
cout << a*b << endl;
cout << a%b << endl; //取模运算,求余数
return 0;
}
赋值运算符
#include <iostream>
using namespace std;
int main() {
//赋值运算符 用于给变量赋值 = += -= *= /= %=
int a = 10;
int b = 20;
a+=a;
cout << a << endl;
b-=b;
cout << b << endl;
//自增自减 前置自增:先进行运算再使用变量 后置自增:先使用变量再进行自增运算
int c=30;
int d=40;
cout << d++ * c << endl;
cout << ++c + d<< endl;
return 0;
}
比较运算符
#include <iostream>
using namespace std;
int main() {
//比较运算符 == < > <= >= != 返回的值是一个布尔类型,真或假
int a =10;
int b =20;
cout << (a==b) << endl; //0
cout << (a<b) << endl; //1
cout << (a>b) << endl; //0
cout << (a!=b) << endl; //1
return 0;
}
逻辑运算符
#include <iostream>
using namespace std;
int main() {
//逻辑运算符 或:|| 与:&& 非:!
//或:有真则真 与:全为真为真 非:取反
int a=10;
int c=0;
cout << (a||c) << endl; //真
cout << (a&&c) << endl; //假
cout << !c << endl; //真
return 0;
}
程序流程结构(顺序,选择,循环)
选择结构
if选择结构
#include <iostream>
using namespace std;
int main() {
//if 选择结构
int a;
cin>> a;
if(a>=60)
{
if(a>=90)
{
cout<< "优秀" << endl;
}
else if(a>80)
{
cout << "良" << endl;
}
else
{
cout << "及格" << endl;
}
}
else if (a>=30)
{
cout << "挂科" << endl;
}
else
{
cout << "重修" << endl;
}
return 0;
}
switch选择结构
#include <iostream>
using namespace std;
int main() {
// switch 选择结构
//如果未添加break,程序会一直向下执行
//switch缺点:只能是整数或字符,不能是一个范围 优点:执行效率高,条理清晰
int score;
cin >> score;
switch (score)
{
case 1:
case 2:
case 3:
case 4:
case 5:
cout<<"差"<< endl;
break;
case 6:
case 7:
cout<<"及格"<< endl;
break;
case 8:
case 9:
case 10:
cout<<"优秀"<< endl;
break;
default:
cout<<"输入错误"<< endl;
break;
}
return 0;
}
三目运算符
#include <iostream>
using namespace std;
//三目运算符 (表达式1?表达式2:表达式3) 如果表达式1的结果为真,则返回表达式2的结果,表达式1的结果为假,则返回表达式3的结果
//返回的值是一个变量,可以重新进行赋值和修改
int main() {
int a=20;
int b=30;
int c=(a>b?a:b); //返回的是b的值
cout << c << endl;
c=100; //重新对c进行赋值并输出
cout<< c << endl;
return 0;
}
循环结构
while循环结构
#include <iostream>
using namespace std;
//while循环结构 while(条件判断语句){循环语句}
int main() {
int num =1;
while(num<10)
{
cout<<num<<endl;
num++;
}
//必须提供跳出循环的出口,否则是死循环会一直执行下去
return 0;
}
生成随机数
需要添加头文件 #include<ctime>
在代码中添加种子,种子根据当前系统时间来生成随机数,如果不添加种子,生成的是伪随机数,每次都是重复的数字
种子:srand((unsigned int)time(NULL));
生成随机数:int num = rand()%100;
%100:确定要生成的随机数的范围,生成随机数的范围是0-99,要想生成的随机数是1-100,需要修改为%100+1.
#include <iostream>
using namespace std;
#include <ctime>
int main() {
srand((unsigned int )time (NULL));
int num=rand()%100+1;//生成1-100的随机数,%100生成0-99,需要加1
//生成的是伪随机数,因此需要添加种子,根据系统时间来生成随机数
int val;
while(1)
{
cin >>val;
if (val>num)
{
cout<< "输入过大"<< endl;
}
else if(val<num)
{
cout << "输入过小"<< endl;
}
else
{
cout << "正确"<< endl;
break;
}
}
return 0;
}
do-while
#include <iostream>
using namespace std;
int main() {
//do-while 循环先执行一次循环再进行判断
//输出水仙花谁,水仙花是指他的几个数字的三次方之和还等于它本身
int i=100;
do{
int a = i%10; //求出个位数
int b = i/10%10; //求十位数
int c = i/100; //求百位数
if(a*a*a+b*b*b+c*c*c==i)
{
cout << i <<endl;
}
i++;
}while(i<1000);
return 0;
}
for循环
#include <iostream>
using namespace std;
int main() {
//for循环 已知循环次数 for(表达式1;表达式2;表达式3) {循环体}
//输出0-9
for(int i=0;i<10;i++)
{
cout<<i<<endl;
}
return 0;
}
循环嵌套
#include <iostream>
using namespace std;
//输出正方形图案
int main() {
for(int j=0;j<9;j++) //一行输出九次
{
for(int i=0;i<9;i++) //输出一行
{
cout<<"* ";
}
cout<<endl;
}
return 0;
}
案例(乘法口诀表)
#include <iostream>
using namespace std;
int main() {
//输出乘法口诀表
for(int i=1;i<10;i++) //要输出几行
{
for(int j=1;j<=i;j++) //确定每一行要输出几个
{
cout<<i<<"*"<<j<<"="<<i*j<<" ";
}
cout<<endl;
}
return 0;
}