栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

c语言基础知识 1关于数据

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

c语言基础知识 1关于数据

目录

1.关于数据

1.数据的表现形式

1.1常量

1.2变量

2.数据类型

2.1整型

2.2字符型

2.3浮点型

2.4确定常量类型

3.格式化输入输出函数 

3.1工具箱与占位符

 3.2用printf函数输出数据

3.3用scanf函数输入数据

3.4字符型数据的输入输出


1.关于数据

1.数据的表现形式

1.1常量

在程序运行过程中,它的值不能改变,也常用来说明保存数据的类型。如1,2,3,字母'a','b'都是常量。

1.整型常量

是整数。也包括八进制,十六进制的整数,如056,0x8A。

2.实型常量

# 1.十进制小数形式

c语言中只有十进制有小数形式。

# 2.指数形式

1.23e5  e前必须有数字,可以是小数,0也可以;e后不能有小数,可以是负数。

3.字符常量

# 1.普通字符常量:用单引号括起来的一个字符。

# 2.转义字符:以字符/开头的字符序列,意思是将'/'后面的字符转换成另外的含义。如'n'代表换行,'t'为水平制表符等。

补充:八进制转义字符的一般形式是'ddd',d是0-9的数字。

十六进制转义字符一般形式是'xhh',h是0-9或A-F内的一个。

 4.字符串常量

用双引号把若干字符括起来,注意是双引号,而字符串不包括双引号。

注意:单引号内只能包含一个字符,表示字符常量,双引号内可以包含一串字符,表示字符串常量。""中有无字符,有多个字符,都合法。

5.地址常量

每个常量,变量,数组的地址在运行期间是不能改变的,称为地址常量。如int a=1;a这个变量在内存中的位置是不变的。

6.符号常量

相当于宏定义中的无参宏定义。如用#define指令指定用一个符号代表一个常量。

如#define S 1234

注意末尾没有分号,也就是用S代替1234.这样当程序中多处用到了同一个常量时,可以“一改全改”。还有不要把符号常量当做变量,要把它与有参宏定义区分开。

1.2变量

是程序运行过程中可以改变的量,代表一个有名字,有特定属性的存储单元。可用来存储数据即变量值。

注意:要先定义后使用,这样程序才会分配内存。如int a=1;

命名规则是见名知意,如定义人数用number;还要符合标识符命名规则,即只能由字母,数字,下划线_组成,并且只能由字母和下划线开头。

同一个作用域(在main函数中,对象的作用域是它所在的最近的一对花括号内)范围内定义的标识符不能重名,不能是关键字。

2.数据类型

在计算机中,数据存放在存储单元中,存储单元由有限的字节构成,不能存放无限小数。不同的数据类型会分配不同的存储单元长度(占多少字节)和存储形式。

1字节=8位(00000000)

2.1整型

(加上unsigned是无符号的意思)

int 普通整型2,4字节

unsigned int 无符号整型 2,4字节

short 短整型 2字节

long 长整型 4字节

longlong 双长整型 8字节     可以用来保存电话号码,因为取值范围在11位以上。

求字节长度的运算符:sizeof(数据类型);

2.2字符型

char 字符型 1字节 

signed char 有符号的字符型:取值范围-128~127,因为-0的原码和补码与+0不同,把它视为-128。符号位保存在最高位。最高位是1表示负号,是0表示正号。

unsigned char 无符号字符型:最小00000000,最大11111111,即255.

可以存储的范围:ASCLL表

所有小写字母对应的数都比大写字母大32

有些字符不能显示,比如 空字符'',警告字符'a',回车字符'r'等。

2.3浮点型

在c语言中,实数以指数的形式存放在存储单元里。一个实数表示为指数不止一种形式,小数点位置可以浮动,所以叫浮点型。

程序用指数形式输出一个实数时,会以规范化形式输出,即小数点前的数字为0和小数点后的数字不为0。如0.3243e1。

float 单精度 4字节  (用此,在c语言中至少精确到小数点后六位。)

double 双精度 8字节    (c语言中至少精确到小数点后13位,但显示出8位。只要数据有指数形式,不管有无小数点,就是实型常量,会被归到double类型,除非后面加f,如foat score=34.2f;

34.2本来在计算机中默认为double型数据。另外f不能加在整数部分,不合法)

long double 长双精度 8,16字节(对浮点型常量,编译器是默认按双精度进行处理的,如果想按单精度,在常量后面加f,如果想按长双精度,在常量后面加L或l)

2.4确定常量类型

(1)符号常量

由单引号括起来的单个字符或转义字符都是。

(2)整型常量

不带小数点的数值。但要注意有效范围,选择存放的下的数据类型。

(3)浮点型常量

任何以小数形式或指数形式出现的实数。

(4)注意如果不匹配的话会出现数据溢出。即定义的变量无法保存全部数据,会丢失小数部分等。

3.格式化输入输出函数 

3.1工具箱与占位符

1.用输入输出函数时,要在程序开头用预处理指令#include打开工具箱。

如     

2.常用占位符

%d  一个整型变量的占位符

%c  一个字符型变量的占位符

%f  一个单精度浮点型变量的占位符,默认输出小数点后六位。

%lf  一个双精度浮点型变量的占位符,默认也输出小数点后六位。

%o  八进制

%x  十六进制

%s  字符串

%e  科学计数法

%i  自适应整数类型

%g  自适应浮点类型

 3.2用printf函数输出数据

函数一般格式:

printf(格式控制,输出列表);

#include
int main()
{
char ed ='k';
printf("%c",ed);//字符型

float e =2.34f;
printf("%f",e);//单精度浮点型

double d =3.23;
printf("%lf",d);//双精度浮点型
}

3.3用scanf函数输入数据

函数一般格式:

scanf(格式控制,地址列表);

#include
int main()
{
	int a;
	scanf("a=%d", &a);
	return 0;
}

要想输入数据,就要先定义变量,在内存里占个位置。用取地址符找到它在内存里的地址。

#include//将奇数位置的字母组成新的单词
int main()
{
	char a1,a2,a3;
	scanf("%c%*c%c%*c%c", &a1,&a2,&a3);
	printf("%c%c%c", a1, a2, a3);//输入books,输出bos
	return 0;
}

3.4字符型数据的输入输出
#include
int main()
{
	char a1 = getchar();//从键盘输入一个字符存入字符变量a1中。
	printf("%c",a1);//作用同下。
	putchar(a1);//输出字符变量a1的值,下同。
	putchar('a1');
	putchar('e');//单纯为了输出一个字符e
	return 0;
}

在vs中用system("pause");函数可以起到很好的暂停效果,即需要从键盘再输入任意一个字符才能继续执行。

由于scanf,getchar等输入函数没有从键盘接收到数据就不会继续执行,所以有时可以起到类似的暂停效果。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1012976.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号