C++学习笔记

本文介绍了C++编程的基础知识,包括如何编写HelloWorld程序,程序的结构(头文件、命名空间、main函数),常见的变量类型及其范围,变量的定义和输入输出方法(cin/cout与scanf/printf),表达式运算(包括自增自减运算和简写运算),以及变量的强制类型转换。文章还强调了语句执行的顺序和C++程序的基本结构。
摘要由CSDN通过智能技术生成

C++ 第一章变量、输入输出、表达式和顺序语句

第一节 基础知识部分



一、C++中的“Hello World”

代码如下(1):

#include <iostream>
   
using namespace;
int main()
{
	cout << "Hello World" << endl;
	return 0;
}

每一行算一个语句,每一个语句必须要用分号结束。
然后进行保存、编译运行。这里的重点在于初步认识代码编写的结构。


二、程序分为哪几个部分

1.头文件区

常用的两个头文件:
(1)

#include <cstdio>
这里面有两个函数,
	输出函数 printf
	输入函数 scanf

(2)

#include <iostream>
读入函数 cin
输出函数 cout
以及endl也是

(3)万能头文件

#include <bits/stdc++.h>

2.using namespace std(使用了std这个命名空间)

一个很大的C++项目可能会出现命名的冲突,命名空间是为了解决这个问题。只要在这个命名空间里面没有命名的冲突,就可以。
平时使用的绝大部分的库函数,绝大部分都是在命名空间里的。因此要加上使用这个命名空间。

必须加上命名空间

using namespace std;

3.程序的执行入口:int main()

函数的入口

int main()
{

	return 0;
}

主义区分大括号和小括号,不要混用!
以及最后一定是 return 0;


三、常用的变量类型及范围

变量是用来保存一些信息的
变量必须先定义才可以使用,不能重名。
变量定义的方式

1.布尔型

关键词:bool
存储两种值:真(true)假(false)
大小:一个布尔变量是1Byte = 8bit

bool g = true , h = false;
布尔的true等于0;false等于1

2.字符型

关键词:char
字符要用单引号引起来,一定要注意!
大小:1Byte
字符串只能用string,用 cin读入

char j = 'a' , k = 'c'

特殊字符:

char ' ' , '\n'
' '代表空格;'\n'代表回车

3.整型

整数能表示的范围是:-231 ~ +231-1
关键词:int
字符要用单引号引起来,一定要注意!
大小:4Byte,可以表示2 32个数

int a , b = 2 , c = b;

4.浮点型

精度比较低,也被称为单精度浮点数。有效位数是6 ~ 7位有效数字
关键词:float
大小:4Byte
整数也是特殊的浮点数,整数可以读到浮点数里面,浮点数不能读到整数里面。

也可以支持科学计数法,示例如下:

1.235e2表示1.235乘以10^2
float d = 1.235e2 , e = 1;

5.双浮点型

表示的数值类型是完全一样的,但是精度比浮点型要高。
15 ~ 16位有效数字
关键词:double
大小:8Byte
浮点数没有整除

doublefloat一样

题中如果要求使用浮点型,直接用double会比较好。因为float精度很低。

6.扩展类型

long long 类型
是long long int的一个简称,表示的是更长的整数型
表示范围:-263 ~ +263-1
大小:8Byte
要强制加LL,不然计算机会理解为负数

long long l = 1000000000LL;

long double 类型
有效数字是18 ~ 19 位

表示的数值类型是完全一样的,但是精度比浮点型要高。
有效位数是 15 ~ 16位有效数字
关键词:double

double 

四、定义变量

变量类型 表达式1, 表达式2 , ... , 表达式;

或

变量类型 表达式1;
变量类型 表达式2;
先声明变量的类型是什么;
每个表达式之间用逗号隔开;
表达式可以是一个变量,也可以是一个赋值表达式;

五、变量的输入输出

注意箭头的方向
也可以分开输入或输出
头文件
iostream头文件对应 cin、cout
cstdio头文件对应 scanf、printf

1.输入

(1) cin

cin >> a >> b;
或
cin >> a;
cin >> b;

(2)scanf

scanf("%d%d" , &a , &b);

scanf会自动过滤掉所有的空格和回车。

2.输出

(1) cout

cout << "xxx" << a+b <<endl;

输出多个变量
输出时,cout是按照顺序挨个输出

cout << a + b << ' ' << a * b << endl;
或
cout << a + b;
cout << ' ';
cout << a * b ;
cout << endl;

(2)printf

printf("a + b = %d\na * b = %d\n" , a + b , a * b) 

浮点数:%f ,假如想保留x位小数,则%.xf
整数:%d(不会读入空格)
字符:%c(会读入空格)
double:%lf
long long:%lld
布尔当成整数来处理

cin、cout在输入输出的时候不需要判断数据的类型,但是scanf、printf需要判断类型
所有能用cin、cout的地方,都能用scanf、printf来表示。但反之,不可以。
cin、cout效率低于scanf、printf。
cin会过滤空格,scanf不会

六、表达式

整数的加减乘除四则运算

1.运算符

(1)+ :把两个操作数相加
(2)- :从第一个操作数中减去第二个操作数
(3)* :把两个操作数相乘
(4)/ :分子除分母
如果是整数相除的话,是整除。例如:5/2=2
如果是两个浮点数相除,得到的是浮点数。例如:5.0/2.0=2.5

(5)% :取模运算符,整除后的余数
取模运算:前面的数除以后面的数的余数,5 % 2 = 1
模出的结果的正负,取决于前面那个数的正负,与后面的数的正负无关
浮点数没有取模,对整数才有取模

5 % 2 = 1
-5 % 2 = -1

2.整数的自加和自减运算

a++、++a都是把a加一,但要注意赋值时的区别
(1)

int a = 6;
int c = a++;
则输出的是a加1之前的值,即c = 6
先赋值,再加一

(2)

int a = 6;
int c = ++a;
则输出的是a加1之后的值,即c = 7
先加一,再赋值

a–、–a是同样的

3.简写运算

(1)
b += a
等价于
b = b + a

(2)
b -= a
等价于
b =b - a

(3)
b *= a
等价于
b = b * a

(4)
b /= b - a
等价于
b = b / a

(5)
b %= b - a
等价于
b = b % a
取模和取余a不可为0

七、变量的强制转化

不同的变量类型是可以相互赋值的
int float char double

1.整数与浮点数

整数可以直接转换为浮点数

int a = 5;
float b = (float)a;

浮点数变成整数是下取整

float a = 5;
int b = (int)a;

注意:C++中两个整数相除会得到整数,是一个整除。所以,需要把其中一个数变成浮点数。

2.整数与字符型

通过ASCII码表来对应
‘a’ 97
‘A’ 65

整数字符型的转换

int t = 97;
char c = (char)t;

字符型整数的转换

char c = 'a';
int t = (int)c;

char类型与整数做运算,会变成一个整数

3.隐性的强制类型转换

整数类型与float / double类型做运算,结果会变成float / double
char与int做运算,结果会变成一个int类型
long long 与 int 做运算,结果会变成一个 long long 类型
float 与 double 做运算,结果会变成double

八、语句的执行

顺序语句
判断语句
循环语句

总结

C++程序的通用结构:

#include <iostream>

using namespace std;

int main()
{
	写逻辑区;
	return 0;
}

C++中,所有的变量一定要先定义,才可以使用。
C++能够编译所有C的代码,但头文件不一定完全一样。
所有和数学相关的函数基本都在camth中
输出记得换行

以上就是今天要讲的内容,本文仅仅简单介绍了C++代码的通用结构。欢迎各位批评指正!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值