文章目录
- 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;elsecout << "最重的小猪是第三只,重量是" << num3 << endl;}else{if (num3 > num2)cout << "最重的小猪是第三只,重量是" << num3 << endl;elsecout << "最重的小猪是第二只,重量是" << 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;elsecout << 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语句时,会跳转到标记的位置