C语言变量与数据类型详解:int, float, char是什么?如何声明和使用?
C语言中的变量概念及基本数据类型(int, float, double, char)是什么,如何声明和使用,本文将学习如何声明变量、赋值,并使用printf的格式符(%d, %f, %c)进行输出。
要让C程序变得“智能”,能够处理数据,我们必须学会使用变量。接下来我将带你全面了解C语言中的变量和基本数据类型。
1. 什么是变量?
你可以把变量理解为一个带名字的盒子,这个盒子用来存放数据(比如一个数字、一个字符)。每个盒子(变量)都有三个基本属性:
- 变量名: 盒子的标签,用于区分不同的盒子。
- 变量值: 盒子里面存放的具体数据。
- 内存地址: 这个盒子在计算机内存中的具体位置。
使用变量的好处是,我们可以通过名字方便地操作数据,而无需关心数据具体存储在内存的哪个位置。
2. 如何声明变量?
在C语言中,使用变量前必须先声明它,即告诉编译器“我需要一个什么样类型的盒子”。声明变量的语法是:
数据类型 变量名;
例如:
int age; // 声明一个名为 age 的整型变量
float score; // 声明一个名为 score 的单精度浮点数变量
char grade; // 声明一个名为 grade 的字符变量
变量命名规则:
- 只能由字母、数字和下划线(_)组成。
- 不能以数字开头。
- 不能与C语言的关键字(如
int,if,return等)重复。 - 区分大小写(
age和Age是两个不同的变量)。
3. C语言的基本数据类型
C语言提供了几种基本数据类型来存放不同种类的数据:
| 数据类型 | 中文名 | 用途 | 示例 |
|---|---|---|---|
int |
整型 | 存储整数 | -10, 0, 100 |
float |
单精度浮点型 | 存储带小数点的数 | 3.14, -0.5 |
double |
双精度浮点型 | 存储更大、更精确的浮点数 | 3.1415926 |
char |
字符型 | 存储单个字符 | 'A', 'b', '9', '#' |
注意:
float和double都能表示小数,但double的精度更高,占用的内存空间也更大。char类型的值需要用单引号' '括起来。
4. 为变量赋值
声明变量后,就可以给它赋值了,即“往盒子里放东西”。使用等号 =(赋值运算符)进行赋值。
方式一:声明时直接初始化
int age = 18; // 声明一个整型变量age,并初始化为18
方式二:先声明,后赋值
float score; // 声明
score = 95.5; // 赋值
char grade = 'A'; // 声明并初始化
5. 示例程序:使用变量和格式化输出
让我们编写一个程序来演示变量的使用。要输出变量的值,我们需要使用 printf函数和格式说明符。
#include <stdio.h>
int main() {
// 1. 声明并初始化变量
int studentId = 1001;
float height = 1.75f; // 给float赋值时,建议加上后缀f
char bloodType = 'A';
// 2. 先声明,后赋值
int age;
age = 20;
// 3. 输出变量的值
printf("学号: %d\n", studentId); // %d 用于输出整数
printf("年龄: %d\n", age);
printf("身高: %.2f 米\n", height); // %.2f 表示输出浮点数,并保留两位小数
printf("血型: %c\n", bloodType); // %c 用于输出字符
return 0;
}
运行结果:
学号: 1001
年龄: 20
身高: 1.75 米
血型: A
关键点:
%d: 是int的格式符。%f: 是float和double的格式符。使用%.2f可以控制小数点后的位数。%c: 是char的格式符。printf中,格式符会被后面变量列表中对应的变量值所替换。
6. 动手练习
- 基础练习: 编写一个程序,声明两个整数变量
a和b,分别赋值10和20,然后计算并输出它们的和、差、积。 - 进阶练习: 编写一个程序,输入圆的半径(提示:用
scanf,下篇文章会详讲),然后计算并输出圆的周长和面积。(公式:周长 = 2 * π * 半径, 面积 = π * 半径 * 半径,π取3.14即可)。