前言
学习了变量之后,还是不能满足我的需求怎么办,比如我想输出字符。那么,这篇文章就主要介绍从语言的数据类型。
为何要数据类型
这个问题其实很好理解,比如我声明一个字符型变量,我就不太可能去使用它去做四则运算(+,-,*,/)。所以,我们使用不同的数据类型是要计算机以不同的方式去处理它们。
声明变量时,我们向内存申请空间,那系统怎样告诉内存我们需要多大空间呢?
基本的数据类型
数值型: 包括:
整型 {
整型(int), 短整型(short), 长整型(long) }
浮点型 {
单精度(float), 双精度(double) }。
**字符型 **: char
练练手
不同的数据类型在内存中占用的空间是不同的,我们声明变量时,必须指定数据类型,这样系统就知道改在内存中内我们多大的内存了
#include<stdio.h>
int main()
{
int m,n=2; //声明整型
float f1 = 1.4,f2; //声明单精度浮点型
double fl1 = 2.0,fl2; //声明双精度浮点
long l = 10; //声明长整型
char ch;
printf("依次输入一个整数,小数,小数,以空格隔开\n");
scanf("&d,%f,%lf",&m,&f2,&fl2);
getchar();
scanf("%c",&ch);
printf("整数:%d,单精度:%f,双精度:%lf,字符型:%c",m,f2,fl2,ch);
}
划重点
上面的例子,包含了各种基本数据类型的输入,输出,不包括long型(感兴趣的可以去查一下)。
输入单精度浮点使用%f
双精度:%lf
输出都使用%f
。还有其他的格式化输出比如%m.nf
m表示输出的宽度,n表示输出的精度。
输入字符串有两种方式ch = getchar()
和scanf("%c",&ch)
细心的可能会发现为什么在输入ch之前有一个getchar语句呢?这是因为字符在输入的时候,空格也代表一个字符,因此,这个语句是为了缓冲掉我们输入字符之前输入的空格。
写在最后
为了照顾小白,部分细节没有讲解,感兴趣的可以自己去查询资料,这样可以加深印象。本系列文章只包含基础知识,也为了节省时间,给出的实例也比较少。因此希望感兴趣的同学多多的上手去练。鉴于目前win10普及,推荐编辑器codeBlocks