文章目录
- 1.注释 变量 常量 关键字 标识符命名规则 数据类型 sizeof关键字 数据的输入 运算符
- 2.程序流程结构
- 2.1选择结构
- 2.2循环结构
- 2.21while{循环条件}{循环语句};//满足循环条件,执行循环语句
- 2.22do{循环语句}while{循环条件};//do....while会先执行一次循环语句
- 2.23//for(起始表达式;条件表达式;末尾循环体){循环语句;}
- 2.24嵌套循环
- 2.3跳转语句
1.注释 变量 常量 关键字 标识符命名规则 数据类型 sizeof关键字 数据的输入 运算符
#define _CRT_SECURE_NO_WARNINGS
//注释 变量 常量 关键字 标识符命名规则 数据类型 sizeof关键字 数据的输入 运算符
//记录程序中不可更改的数据
#define Bmax 100 //max是关键字
//#define 常量名 常量值 宏定义
//const 数据类型 常量名 常量值 通常在变量名前加const 表示不可更改
//定义后再次修改都会报错
//不要用关键字命名 会报错
//标识符命名:不能是关键字 由字母数字下划线组成 开头不能是数字 字母区分大小写
//数据类型:给变量分配一个合适的内存空间
//int【4】 short【2】 long【4】 long long【8】
//实型 单精度float【4】 双精度 double【8】
//float f1 = 3.14f;通常在最后加一个f表明他是单精度,最多6位有效数字
//float f1 = 3e2;科学计数法
//字符型
//char a = 'a';单引号括起来,且只能写一个字符【1】
//Ascll码值a-97 A-65 0-31控制字符 32-126都是键盘上可以找到的字符
//转义字符
//常用的转义字符 \n换行符 \\反斜杠 \t水平制表符
//cout<<"aaaa\thelloworld"<<endl 打印结果:aaaa helloworld前面一共八个位置
//具体分配看前面几个字母 作用可以整齐输出数据
//字符串型
//C风格 char 变量名[] = "字符串值"
//C++风格 string 变量名 = "字符串值"
//布尔类型 代表真或者假的值
//true 真(1) false 假(0)
//bool【1】flag = true;
//sizeof:统计数据类型所占内存大小
//sizeof(数据类型/变量)
//运算符
//算数 赋值 比较 逻辑
// 算数运算符
//加减乘除 两整数相除,结果依然还是整数,小数部分被省略 除数不可以为0
//两个小数相除得到的可以是小数
//取模运算(求余数) 俩边都是整数,除数不可为0
//递增递减运算符 前置后置
//赋值运算符
//= += -= *= /= %=
//比较运算符
//== != < > <= >=
// 逻辑运算符 !非 &&并 ||或
//
#include<iostream>
using namespace std;
//单行注释
/*多行注释
每个程序都有只有一个main函数入口*/
int main()
{
cout << "hello world" << endl;
system("pause");
return 0;
}
2.程序流程结构
//程序流程结构 顺序结构、选择结构、循环结构
//顺序结构:程序按顺序执行,不发生跳转,
//选择结构:依据条件是否满足,有选择的执行相应功能
//循环结构:依据条件是否满足,循环多次执行某段代码
2.1选择结构
//选择结构: if语句
//单行if语句 多行if语句 多条件if语句 嵌套if语句
//练习:三只小猪称体重
#include<iostream>
using namespace std;
int main()
{
//创建三只小猪的体重
int num1 = 0;
int num2 = 0;
int num3 = 0;
//用户输入三只小猪的体重
cout << "请输入第一只猪的重量:" << endl;
cin >> num1;
cout << "请输入第二只猪的重量:" << endl;
cin >> num2;
cout << "请输入第三只猪的重量:" << endl;
cin >> num3;
cout << "第一只小猪的重量是:" << num1 << endl;
cout << "第二只小猪的重量是:" << num2 << endl;
cout << "第三只小猪的重量是:" << num3 << endl;
//对三只小猪的体重进行比较
if (num1 > num2)
{
if (num1 > num3)
cout << "最重的小猪是第一只,重量是" << num1 << endl;
else
cout << "最重的小猪是第三只,重量是" << num3 << endl;
}
else
{
if (num3 > num2)
cout << "最重的小猪是第三只,重量是" << num3 << endl;
else
cout << "最重的小猪是第二只,重量是" << num2 << endl;
}
system("pause");
return 0;
}
//三目运算符 表达式1?表达式2:表达式3
//表达式1的值为真 则执行表达式2
//表达式1的值为假 则执行表达式3
//switch语句
// 优点:结构清晰,执行效率高
// 缺点:判断时只能是整形或字符型,不可以是一个区间
//执行多条件分支语句
switch (表达式)
{
case 结果1: 执行语句;break;
case 结果2: 执行语句;break;
......
default: 执行语句;break;
}
2.2循环结构
2.21while{循环条件}{循环语句};//满足循环条件,执行循环语句
猜数字游戏
//猜数字游戏
//系统随机生成一个1-100之间的数字,玩家进行猜测,如果猜错,提示玩家数字过大或过小,如果猜对
//恭喜玩家胜利,并退出游戏
#include<iostream>
using namespace std;
int main()
{
//1.系统随机生成数字
int num = rand() % 100 + 1;//rand() % 100生成0~99的随机数
while (1) {
//2.玩家进行猜测
int val = 0;
cin >> val;
//3.判断玩家的猜测
//猜对 退出游戏
//猜错 提示猜的结果 过大或过小 重新返回第2步
if (val > num)
{
cout << "猜测过大" << endl;
}
else if (val < num)
{
cout << "猜测过小" << endl;
}
else
{
cout << "恭喜你猜对了" << endl;
break;
}
}
system("pause");
return 0;
}
2.22do{循环语句}while{循环条件};//do…while会先执行一次循环语句
//水仙花数
//水仙花数是指一个三位数,他的每个位上的数字的3次幂的和等于它本身
//用do...while语句,求出所有三位数中的水仙花数
#include<iostream>
using namespace std;
int main()
{
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;
}
2.23//for(起始表达式;条件表达式;末尾循环体){循环语句;}
//敲桌子
//从1开始到100,如果数字含有7,或者是7的倍数,则打印敲桌子,其余数字直接打印输出
#include<iostream>
using namespace std;
int main()
{
for (int i = 1; i < 101; i++)
{
if (i /10==7||i % 10 == 7 || i % 7 == 0)
cout << "敲桌子" << endl;
else
cout << i << endl;
}
system("pause");
return 0;
}
2.24嵌套循环
//在循环体中再嵌套一层循环,解决一些实际问题,比如要打印星图
//外层循环一次,内层执行一周
//乘法口诀表
#include<iostream>
using namespace std;
int main()
{
for (int i = 1; i <= 9; i++)
{
for (int j = 1; j <= i; j++)
{
cout << i << "*" << j <<"="<< i * j << " ";
}
cout << endl;//endl放在这里可以等每次循环体执行完之后进行换行
}
system("pause");
return 0;
}
2.3跳转语句
break用于跳出选择结构或者循环结构
//switch语句中用于终止case并跳出switch
//出现在循环语句中,作用是跳出当前的循环语句
//出现在嵌套语句中,跳出最近的内层循环
continue在循环语句中,跳过本次循环中余下尚未执行的语句,继续执行下一次循环
goto语句:可以无条件跳转语句
//语法:goto 标记:
//如果标记的名称存在,执行到goto语句时,会跳转到标记的位置