是我深夜爆炸,不能再去补救C了,真的来不及了,不能再三天打鱼两天晒网了,真的来不及了呜呜呜呜
我实在是不知道看什么课,那黑马吧……MOOC的北邮的C++正在进行呜呜
#include <iostream>
using namespace std;
int main()
{cout << "hallo world" << endl;system("pause");return 0;
}
1.1 变量
定义变量:数据类型 变量名称 = 变量初始值【格式】
1.2 常量 不可修改
1,#define 宏常量,#define 常量名 常量值
2,const 修饰的变量 ,const 数据类型 常量名=常量值
#include <iostream>
#define DAY 7
using namespace std;
int main()
{const int mouth = 31;cout << "hallo world,一周"<<DAY<<"天,大月"<<mouth << endl;system("pause");return 0;
}
1.3 关键字
标识符命名规则:非关键字,字母+数字+下划线,首位非数字,大小写
建议,最好能够见名知意
二,数据类型
2.1 整型
short ==2 【-32768~32767】;int ==4;long==4(分那啥);long long==8;
sizeof( )
#include <iostream>
using namespace std;
int main()
{short num1 = 32768;int num2 = 32768;long num3 = 0;long long num4 = 0;cout << num1 << "——"<<sizeof(short)<<endl;cout << num2 << "——" << sizeof(int) << endl;cout << num3 << "——" << sizeof(long) << endl;cout << num4 << "——" << sizeof(long long) << endl;system("pause");return 0;
}
2.2 实型(浮点型
float 单精度,7有效数字,数值后面加上F表示类型;double,双。。,15-16位
默认输出6位小数,科学计数法
#include <iostream>
using namespace std;
int main()
{float fnum1 = 3.15344534f;//加后缀自动识别FLOAT,否则DOUBLEdouble dnum2 = 4.4335363748456345234232;float num3 = 3e2;float num4 = 3e-2;cout << fnum1 << "——"<<sizeof(float)<<endl;cout << dnum2 << "——" << sizeof(double) << endl;cout << num3 << endl;cout << num4 << endl;system("pause");return 0;
}
2.3 字符型
CHAR 变量名 =‘单个字符’,大小1字节,ASCII码,a-97,A-67,0-31控制字符,32-126打印字符
#include <iostream>
using namespace std;
int main()
{char a = 'a';cout << a << "——"<<sizeof(char)<<endl;cout << a << "——" << (int)a << endl;system("pause");return 0;
}
2.4 转义字符
水平制表符——对齐、整齐输出,换页和垂直制表感觉和换行差不多
#include <iostream>
using namespace std;
int main()
{cout << "aaa\abbb" << endl;cout << "aaa\bbb" << endl;cout << "aaa\f换页bbb" << endl;cout << "aaa\nbbb" << endl;cout << "aaa\tbbb" << endl;cout << "a\tbbb" << endl;cout << "aaa\vbbb\v垂直制表" << endl;cout << "aaa\vbbb\v垂直制表" << endl;cout << "aaa\\bbb" << endl;cout << "aaa\'bbb" << endl;cout << "aaa\"bbb" << endl;cout << "aaa\?bbb" << endl;return 0;system("pause");
}
2.5 字符串型
1,C风格字符串:CHAR 变量名【】=“字符串值”;CHAR A='A'字符,CHAR A[ ]="A"字符串
2,C++风格字符串:STRING 变量名=“字符串值”;;包含头文件#include <string>
#include <iostream>
#include <string>
using namespace std;
int main()
{char a[] = "hallo word?";string b = "ni hao,xiexie";cout << a << endl;cout << b << endl;return 0;system("pause");
}
2.6 布尔类型BOOL
true--1,false--0,sizeof(bool)==1;赋值给数字,除了0都代表真
#include <iostream>
using namespace std;
int main()
{bool flag = true;cout << flag << endl;flag = false;cout << flag << endl;cout << sizeof(bool) << endl;//1return 0;system("pause");
}
2.7 数据输入
#include <iostream>
#include<string>
using namespace std;
int main()
{//intint ant = 23;cout << ant << endl;cin >> ant;cout << ant << endl;//floatfloat ff = 5.8900f;cout << ff << endl;//输出抹零了cin >> ff;cout << ff << endl;//charchar ch = 'a';cout << ch << endl;cin >> ch;cout << ch << endl;//stringstring b= "qunidsefw";cout << b << endl;cin >> b;cout << b << endl;//boolbool flag = false;cout << flag << endl;//除了0,输入啥都是1cin >> flag;cout << flag << endl;return 0;system("pause");
}
三,运算符
3.1 算数运算符
+,-,*,/,%【小数和小数不能做取余运算】,++A,A++,--A,A--,同C
#include <iostream>
using namespace std;
int main()
{int a = 2;int b = a++;int c = ++a;cout << a << "\t" << b << "\t" << c << endl;cout << c % a << endl;cout << a++ * 100 << endl;cout << ++a * 100 << endl;return 0;system("pause");
}
3.2 赋值运算符
+=,-=,*=,/=,=,%=
3.3 比较运算符
==,!=,<,>,<=,>=
#include <iostream>
using namespace std;
int main()
{int a = 2;int b = ++a;cout << (a>b)<< endl;cout << (a < b) << endl;cout << (a != b) << endl;cout << (a==b)<< endl;cout << (a <= b) << endl;cout << (a >= b) << endl;return 0;system("pause");
}
3.4 逻辑运算符
!非【BOOL里面,不是0都是真】,&&与,||或
#include <iostream>
using namespace std;
int main()
{int a = 2; int b = 10;cout << !a << endl;cout << !!a << endl;a = 2; b = 2;cout << (a&&b)<< endl;cout << (a || b) << endl;a = 0; b = 3;cout << (a && b) << endl;cout << (a || b) << endl;a = 0; b = 0;cout << (a && b) << endl;cout << (a || b) << endl;return 0;system("pause");
}
四,程序流程结构
顺序,选择,循环
【C撸了不少了,就不仔细打了】
4.1 选择结构
1.0 IF——同C
2.0 三目运算符:表达式?A:B,如果表达式为真,返回A,假返回B【返回的是变量,可以继续赋值】
3.0 SWITCH——同C【结构清晰,效率高,只能整型和字符型,BREAK】
#include <iostream>
using namespace std;
int main()
{int a = 9, b = 90;cout << (a > b ? a : b) << endl;(a > b ? a : b) = 78;//==78cout << a << endl;cout << b << endl;(a < b ? a : b) = 78;cout << a << endl;cout << b << endl;return 0;system("pause");
}
4.2 循环结构
1.0 WHILE循环
【RAND()%100,%100表示生成随机数的区间,0~99,0+1~99+1,rand()%100+1】
可以用BREAK退出当前循环
2.0 DO……WHILE循环
#include <iostream>
#include<ctime>
using namespace std;
int main()
{srand((unsigned int)time(NULL));//添加随机数种子,作用:利用当前系统时间生成随机数,防止每次随机数都一样int num=rand() % 100 + 1;cout << "请猜数字" << endl;int val;cin >> val;while(num!=val){if (num > val){cout << "猜小了" << endl;}else if (num < val){cout << "猜大了" << endl;}cin >> val;}cout << "恭喜猜对了,数字就是" <<val<< endl;return 0;system("pause");
}
#include <iostream>
#include<ctime>
using namespace std;
int main()
{int a = 0;do{cout << a << endl;a++;if (a == 10)break;} while (a);a = 0;while (a){cout << a << endl;a++;if (a == 10){break;}}return 0;system("pause");
}
3.0 FOR循环
4.0 嵌套循环——外层执行一次,内层执行一周
#include <iostream>
#include<ctime>
using namespace std;
int main()
{for (int i = 0; i < 10; i++){for (int i = 0; i < 10; i++){cout << "* ";}cout << endl;}return 0;system("pause");
}
#include<iostream>
using namespace std;
int main()
{int n;cin >> n;for (int i = 1; i <= n; i++){for (int j = 1; j <= i; j++){cout << i << "*" << j << "=" << i * j<<"\t";}cout << endl;}return 0;system("pause");
}
4.3 跳转语句
1.0 break语句,跳出循环,嵌套循环中可以是跳出内循环
#include <iostream>
#include<ctime>
using namespace std;
int main()
{for (int i = 0; i < 10; i++){for (int i = 0; i < 10; i++){cout << "* ";if (i == 5){break;}}cout << endl;}return 0;system("pause");
}
2.0 continue语句,结束本次,继续下一次循环
#include <iostream>
#include<ctime>
using namespace std;
int main()
{for (int i = 1; i < 100; i++){if (i % 7 != 0 && i / 10 != 7 && i % 10 != 7){continue;}cout << i << "\t拍桌子" << endl;}return 0;system("pause");
}
3.0 goto语句:无条件跳转代码——语法 goto A【标签名常用大写】不建议大量使用
注意:I==7时,输出【7-不是五的倍数 -下一个】
#include <iostream>
#include<ctime>
using namespace std;
int main()
{cout << "1ooo" << endl;cout << "2pppp" << endl;goto FLAG;cout << "1ooo" << endl;cout << "2pppp" << endl;
FLAG:cout << "23432" << endl;cout << "2gdfx" << endl;for (int i = 1; i < 21; i++){cout << i ;if (i % 5 == 0){goto DA;}cout << "不是五的倍数" << endl;DA:cout << "下一个" << endl;}return 0;system("pause");
}