c++学习day1【基础知识】

一、c++基础入门

1、初识c++

1.1 一个c++程序

在这里插入图片描述

在这里插入图片描述

#include<iostream>
using namespace std;

int main()
{
	system("pause");

	return 0;
}
这些代码是固定格式
  • 书写helloworld
#include<iostream>
using namespace std;

int main()
{
	cout << "hello world" << endl;
	system("pause");

	return 0;
}

执行结果:

在这里插入图片描述

1.2 注释

单行://

多行:/* */

整体注释:ctrl+k+c同时按

整体取消注释:ctrl+k+u

1.3 变量

语法:

变量类型 变量名 = 初始值;

1.4 常量

定义方式:

  1. #define 宏常量

    • 通常在文件上方定义,表示一个常量
  2. const修饰的变量

    • 通常在变量定义前加关键字const,修饰变量为常量,不可修改

    举例:

    #include<iostream>
    using namespace std;
    /*
    	常量定义方式:
    	1.#define定义宏常量
    	2.const修饰的变量
    */
    #define Day 7//宏常量
    int main() {
    	//Day = 14;//Day是常量,一旦修改就会报错
    	cout << "一周总共有:" << Day << "天" << endl;
    	const int month = 12;
    	//month = 24;//const 修饰的变量也是常量不可修改
    	cout << "一年总共有:" << month << "个月份" << endl;
    	system("pause");
    	return 0;
    }
    
    

    踩坑:一个程序只能有一个main方法

在这里插入图片描述

实际上是一个程序不能有重名的方法,所以改个名字就行了

1.5 关键字

1.6标识符命名规则

  • 标识符不能是关键字
  • 标识符只能由字母数字下划线组成
  • 第一个字符必须是字母或者下划线
  • 标识符中字母区分大小写

2.数据类型

在这里插入图片描述

2.1 sizeof关键字

用于统计数据类型所占的内存大小(返回几个字节)

语法:sizeof(数据类型/变量)

代码举例:

#include<iostream>
using namespace std;
int main() {
	short num1 = 10;
	cout << "short占用的内存空间为:" << sizeof(num1) << endl;
	cout << "int占用的内存空间为:" << sizeof(int) << endl;
	cout << "long占用的内存空间为:" << sizeof(long) << endl;
	cout << "long long占用的内存空间为:" << sizeof(long long) << endl;
	//整型大小比较
	//short<int<=long<=long long
	system("pause");
	return 0;
}
输出:
short占用的内存空间为:2
int占用的内存空间为:4
long占用的内存空间为:4
long long占用的内存空间为:8

2.2 浮点型

一般会在定义float类型的数的时候后面会加f,否则会被默认为double然后当用一个float类型去接收的这个数的时候中间多了一步转换的过程

在这里插入图片描述

在这里插入图片描述

  • 科学计数法
#include<iostream>
using namespace std;
int main(){
	//科学计数法
	float f2 = 3e2;//3 * 10^2
	cout << "f2 = " << f2 << endl;
    
	float f3 = 3e-2;//3 * 10^-2,可以看成3 * 0.1^2
	cout << "f3 = " << f3 << endl;
	system("pause");
	return 0;
}
输出:
f2 = 300
f3 = 0.03

2.3 字符型

  • 字符型变量在存储单元中存储的是他的ASCII码
#include<iostream>
using namespace std;
int main() {
	//1.字符型变量创建方式
	char ch = 'a';
	cout << "ch = " << ch << endl;

	//2.字符型变量所占内存大小
	cout << "char所占字节为:" << sizeof(char) << endl;

	//3.字符型变量常见错误
	/*
	1.不能用双引号创建字符型变量
	2.不能在单引号里写多个字符
	*/

	//4.字符型变量对应的ASCII码  记住常用的a-97,A-65
	cout << "ch对应的Ascll码值为:" << (int)ch << endl;//直接强制转换
	system("pause");
	return 0;
}
输出:
ch = a
char所占字节为:1
ch对应的Ascll码值为:97
  • 常用ASCII码表

2.4 转义字符

在这里插入图片描述

现阶段常用:

\n:换行

\t:水平制表符(跳到下一个tab位置),这个主要作用是用来对齐后面内容的

#include<iostream>
using namespace std;
int main() {
	//换行 \n
	cout << "hello word\n" ;//这里这么写实际跟<<endl的效果是一样的
	
    //反斜杠 \\
	//cout<<"\"<<endl;这么写报错
	cout << "\\" << endl;

	//水平制表符 \t
	cout << "aaa\tbbb" << endl;
	system("pause");
	return 0;
}

输出:

在这里插入图片描述

2.5 字符串类型

#include<iostream>
using namespace std;
int main() {
	//1.c风格的字符串
	//注意事项:加[],加单引号
	char str[] = "hello world";
	cout << str << endl;

	//1.c++风格的字符串
	string str1 = "hello world";
	cout << str1 << endl;
	system("pause");
	return 0;
}

2.6 bool数据类型

  • 布尔类型除了0代表假,其他都是真。
#include<iostream>
using namespace std;
int main() {
	//创建bool类型
	bool flag = true;
	cout << flag << endl;//这里输出1

	flag = false;
	cout << flag << endl;//这里输出0

	//本质上  1代表真   0代表假

	cout << "bool类型占用字节为:" << sizeof(bool) << endl;

	system("pause");
	return 0;
}
输出:
1
0
bool类型占用字节为:1    

2.7 数据的输入

关键字:cin

语法:cin>>变量

#include<iostream>
using namespace std;
#include<string>
int main() {
	//1.整型
	int a = 0;
	cout << "请给整型变量a赋值:" << endl;
	cin >> a;
	cout << "整型变量a的值为:" << a << endl;
	//2.浮点型
	float f = 3.14f;
	cout << "请给浮点型数据f赋值:" << endl;
	cin >> f;
	cout << "浮点数f = " << f << endl;
	//3.字符型
	char ch = 'a';
	cout << "请给浮点型数据ch赋值:" << endl;
	cin >> ch;
	cout << "浮点数ch = " << ch << endl;
	//4.字符串型
	string str = "hello";
	cout << "请给字符串型数据ch赋值:" << endl;
	cin >> str;
	cout << "字符串str = " << str << endl;
	//5.布尔类型
	bool flag = false;
	cout << "请给布尔型数据flag赋值:" << endl;
	cin >> flag;
	cout << "布尔型flag = " << flag << endl;
	system("pause");
	return 0;
}

3.运算符

运算符类型作用
算数运算符处理四则运算
赋值运算符用于将表达式的值赋给变量
比较运算符用于表达式的比较,并返回一个真值或假值
逻辑运算符用于根据表达式的值返回真值或假值

3.1 算数运算符

运算符术语示例结果
+正号+33
-负号-3-3
+10+515
-10-55
*10*550
/10/52
%取余10%31
++前置递增a=2;b=++a;a=3;b=3;
++后置递增a=2;b=a++;a=3;b=2;
前置递减a=2;b=–a;a=1;b=1;
后置递减a=2;b=a–;a=1;b=

注意:

  1. 被除数不能为0

  2. 除法操作的时候如果为int型会舍弃小数点

  3. 小数不能进行取余运算

在这里插入图片描述

    • 前置递增 先让变量+1 然后进行表达式运算
    • 后置递增 先进行表达式运算,后让变量+1
    #include<iostream>
    using namespace std;
    int main() {
    	//1.前置递增
    	int a = 10;
    	++a;
    	cout << "a = " << a<<endl;
    
    	//1.后置递增
    	int b = 10;
    	b++;
    	cout << "b = " << b << endl;
    	//3.前置递增和后置递增的区别
    	//前置递增 先让变量+1 然后进行表达式运算
    	int a2 = 10;
    	int b2 = ++a2 * 10;
    	cout << "a2 = " << a2 << endl;//11
    	cout << "b2 = " << b2 << endl;//110
    
    	//后置递增 先进行表达式运算,后让变量+1
    	int a3 = 10;
    	int b3 = a3++ * 10;
    	cout << "a3 = " << a3 << endl;//11
    	cout << "b3 = " << b3 << endl;//100
    	system("pause");
    	return 0;
    }
    输出:
    a = 11
    b = 11
        
    a2 = 11
    b2 = 110
        
    a3 = 11
    b3 = 100    
    

3.2 赋值运算符

运算符术语示例结果
=赋值a=2;b=3;a=2;b=3
+=加等于a=2;b+=2;a=2;b=4
-=减等于a=2;b-=2;a=2;b=0;
*=除等于a=2;b*=2;a=2;b=1;
/=乘等于a=6;b/=3;a=6;b=2;
%=模等于a=5;b%=2;a=5;b=3

注意:

  1. +=,*=这种中间是不能有空格的

3.3 比较运算符

运算符术语示例结果
==相等于4 ==30
!=不等于4 != 31
<小于4 < 30
>大于4 > 31
<=小于等于4 <= 30
>=大于等于4 >= 31

注意:比较运算符包括后面的逻辑运算符注意加个(),不加会报错。

在这里插入图片描述

#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;
	//<=
	cout << (a <= b) << endl;
	system("pause");
	return 0;
}

3.4 逻辑运算符

运算符术语示例结果
!!a取反
&&a&&b同真为真,否则为假
||a||b同假才假,有真为真

4.程序流程结构

c++支持最基本的三种程序运行结构:顺序结构、选择结构、循环结构

  • 顺序结构:程序按顺序执行,不发生跳转
  • 选择结构:依据条件是否满足,有选择的执行相应的功能
  • 循环结构:依据条件是否满足,循环多次执行某段代码

4.1选择结构

4.1.1 if语句
  1. 单行:if(条件){条件满足执行语句}
#include<iostream>
using namespace std;
int main() {
	//选择结构 单行if语句
	//用户输入分数,如果分数大于600,视为考上一本大学,在屏幕上输出
	int score = 0;
	cout << "请输入一个分数:" << endl;
	cin >> score;
	cout << "您输入的分数为:"<<score << endl;
	if (score >= 600)//这里不要加分号,如果加了分号那么不论条件是否满足,后面的代码都会执行
	{
		cout << "考上了一本大学" << endl;
	}
	system("pause");
	return 0;
}

注意:if(条件)这里不要加分号如果加了分号那么不管条件是否满足后面的代码块都会执行如下

if(条件);//不论条件是否满足,后面代码都执行
{
    代码
}
  1. 多行:if(条件){条件满足执行语句}else{条件不满足执行语句}

  2. 多条件的if语句:if(条件){条件1满足执行的语句}else if(条件2){条件2满足执行的语句}...else{都不满足执行的语句}

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值