C++竞赛培训:第二课 变量

Part 1 变量的定义

*变量要先定义,在使用。
如何定义一个变量?:

数据类型 变量名

or

数据类型 变量名 = 数值 //在定义的同时初始化

注意:1.在C++中,不允许定义出现过的变量,这种现象叫 重定义

           2.使用变量要注意初始化。(每一个变量都定义)

int a;
a = 0;

                或者

int a;
cin >> a;

变量起名规则:

        1.只能用字母,数字,下划线组成。

        2.只能以字母或下划线作为开头。

        3.不能和关键字重名。

        ***4.定义变量要见名知意!!!

Part 2 基本数据类型
名称数据类型字节数数值范围
短型short2B-32768~32767-2^15~2^15-1
整型int4B-2147483648~2147483647-2^31~2^31-1
长整型longlong8B

-9,223,372,036,854,775,808

~ 9,223,372,036,854,775,807

-2^63~2^63-1
无符号短整型unsigned short2B0~655350~2^16-1
无符号整型unsigned int4B0~42949672950~2^32-1
无符号unsigned long long8B0~0~1.84467440737096e+19

占用的内存越大,可取的数值范围越大。

如何看数据类型的内存呢?

#include <iostream>
using namespace std;

int main()
{
	cout << sizeof(字符类型) << endl;
	return 0;
}

常用的字节计数单位:

1KB = 1024B

1MB = 1024KB

1GB = 1024MB

1TB = 1024GB

 实数型

名称数据类型字节数范围有些数位
单精度浮点数float4B-3.4e38~3.4e386~7
双精度浮点数double8B-1.7e308~1.7e30816~16
长双精度浮点数long double16B3.3621e-4932~1.18973e+493218~19

*定义浮点型变量时建议用double

重点记忆的ASCll值

'0' --> 48

'A' --> 65

'a' --> 97

Part 3 特殊字符

转义字符:用于格式化输出,控制文本的显示.

转义字符意义
\n换行
\t水平制表符(tab)
\r回车
\\反斜杠
\'单引号
\"双引号
\a响铃(ASCII 值为 7)
\b退格(ASCII 值为 8)
\f换页(ASCII 值为 12)
\v垂直制表符(ASCII 值为 11)
\0空字符

Part 4 C语言的格式化输入/输出

1.输入函数scanf()

#include <iostream>
using namespace std;

int main()
{
	int a;
	scanf("%d",&a);
	cout << a;
	return 0;
}

2.输出函数printf()

#include <iostream>
using namespace std;

int main()
{
	int a;
	scanf("%d",&a);
	cout << a;
	return 0;
}

常见的格式化字符串的占位字符: 

格式字符意义
%d输出int
%f输出float
%c输出单个字符
%lf输出double

printf()的特殊用法:可配合ASCII码使用

#include <bits/stdc++.h>
using namespace std;

int main()
{
	char c = 65;
	printf("%c/n", c);
	printf("%d", c);
	return 0;
}

设置小数输出格式的方法:两种(以下程序中n为保留的位数,a为一个小数)

        1.cout中

cout << fixed << setprecision(n) << a;

        2.printf中

printf("%.nlf", a)//""中的n是一个数值!!!

大写小写的转化:大写字母与小写字母之间的ASCII码的差值为32

比如我们要把A变为a

#include <bits/stdc++.h>
using namespace std;

int main()
{
	char c;
	cin >> c;
	c += 32;
	cout << c;
	return 0;
}

Part 5 字符类型转换

隐式转换(自动转换):

由编译器自动执行的类型转换过程,一般是把低精度的转换为高精度(叫小范围的数据类型转换为大范围的数据类型)再进行运算。

显式转换(强制转换):

由编码者明确指定的类型转化过程。

比如:

#include <iostream>
using namespace std;
int main()
{
	double a;
	cin >> a;
	cout << (int)a;
	return 0;
}

  • 26
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值