C语言的基本数据类型
1. 编程练习2答案(附代码)
#include <stdio.h>
int main(){
int a;
printf("请问你的手机号是多少?");
scanf("%d",&a);
printf("%d\n",a);
printf("好的,我记住你的手机号了,以后常联系。");
return 0;
}
2. 数据类型
前几篇文章中提到过数据类型的知识,今天就来系统讲一下。这部分大家知道概念就可以了,不需要了解得很详细。
(1)int类型 也就是整型。整数:和数学里的概念一样,整数就是没有小数部分的数。关键字是 int。int类型是有符号整型,可以是正整数、负整数和0。用 int 声明的变量,可以是-233,233,0。取值范围依计算机系统而异,ISO C规定的int的取值范围最小是-32768~32767。
我们用 int 声明变量之后,这个变量要怎么获得值呢?
①第一种就是赋值,像这样:
int a; a = 2;
int a = 2;
这两种写法都是可以的。
②第二种就是通过函数获得,比如:scanf()
像第一种方法,在声明变量的时候就给这个变量赋值,叫做初始化,给这个变量设置一个初始值。
此外整型还有短整型(short int)和长整型(long int)。短整型范围可能比int 要少,常用于较小数值来节省空间;长整型可能比 int多,适用于更大数值的场合。这两个在学习过程中用到的少,知道就可以了。
**注意:**这几个在使用的时候都默认是有符号类型,也就是有正、负号的。
前几篇也介绍过,整型的变量在输出打印的时候要使用 %d 的转换说明。
(2)char类型(字符类型) 是用来存储字符的。什么是字符?像字母或是标点符号,都是字符。
我们在使用char类型给变量初始化的时候,要用单引号引起来,如下:
char a = ‘w’;
表示w 是字符常量,没有单引号则是一个变量,这是不对的。
**注意:**在打印的时候,单引号只适用于字符、数字和标点,有些代表行为的字符,没法打印(如退格、换行等等)
前面说过,\n是一个转义序列,是换行的意思,还有别的转义序列,我简单介绍几个。
转义序列 | 含义 |
\a | 警报 |
\b | 退格 |
\f | 换页 |
\r | 回车 |
\t | 水平制表符,跟键盘Tab的效果一样 |
\v | 垂直制表符 |
\ \ | 反斜杠 |
\ ’ | 单引号 |
\ " | 双引号 |
\ ? | 问号 |
(3)Bool类型(布尔类型)表示布尔值,即逻辑值 ture 和 false.
示例:bool a = true;
这个一般用在执行条件分支语句或者循环语句中,判断条件为真还是假。
条件分支和循环,在高中数学逻辑框图部分有讲过。思维是一样的,具体内容之后会详细讲。
其实,C中没有定义布尔这个类型,就当成整型去输出,true为1,false为0。
(4)浮点类型
浮点数:在数值后面加一个小数点,就变成了浮点值。用科学计数法记录数据时,小数点可以随之移动。比如,6是整数,6.0是浮点数。
① float 类型:意思是单精度类型,这个类型至少能表示6位有效数字,取值范围至少是10-37~1037。
示例:float a = 3.14159;
②double 类型:意思是双精度类型,它最少能表示10位有效数字,取值范围和 float 类型相同,但是占用的空间会比 float 类型的大。
示例:double q = 3.141592653:
在输出打印时,用%f进行转换。5.2%f表示字段宽度为 5 个字符,其中小数点后面有 2 位数字,只有浮点数可以这样表示,其他数据类型前面是没有数字的。
OK,数据类型已经介绍完了,接下来我们用代码来具体看一下。
#include <stdio.h>
int main(){
int a = 3;
char b = 'A';
float c = 3.14159;
bool d = true;
printf("%d\n %c\n %4.3f\n %d ",a,b,c,d);
return 0;
}
运行结果:
3
A
3.141
1
数据类型就讲到这了,有什么问题可以在评论区留言哦。
积极开动一下小脑瓜,做一下下面的编程练习吧。
编程练习3:1寸相当于3.33厘米。编写一个程序,提示用户输入身高(寸),然后以厘米显示身高。