§2.1 C语言的数据类型
一个 C语言程序是由数据结构和算法两部分组成, C语言的数据结构是以数据类型的形式表现的,C语言的数据类型如下所示:
§2.2 C语言的常量和变量
2.2.1 常量和符号常量
常量就是在程序运行过程中不能改变其值的量。常量又分为整型,实型,字符型,例如:0,1,?是整型常量,1.2,?.2是实型常量,‘a’,‘A’是字符型常量,也可以用标识符表示一个常量。
#include <stdio.h>
#define PRICE 30
void main(void)
{
int num,total;
num = 10;
total = num*PRICE;
printf(" total = %d ", total );
}
程序中用#define 命令行定义PRICE代表常量30,此后凡在此文件中出现的PRICE都代表30。程序的运行结果是
total = 300
习惯上,符号常量名用大写,变量用小写,以示区别。
2.2.2 变量
其值可以改变的量称为变量。一个变量应该有一个名字,在内存中占据一定的存储单元。在该存储单元中存放变量的值。
和其它高级语言一样,用来标识变量名、符号常量名、函数名、数组名、类型名、文件名的有效字符序列称为标识符。
C语言规定标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。如下面是合法的标识符,也是合法的变量名。
sum ,average, day, mouth, student_name, above, lotus_1_2_3, basic.
下面是不合法的标识符和变量名:
M .D .John ,$123 ,#123 ,3D64 ,a>b
注意:大写字母和小写字母被认为是两个不同的字符。因此,sum 和SUM 是两个不同的变量名。习惯上,变量名用小写字母表示。
在C语言中,要求对所用到的变量先定义,后使用。
§2.3 整型数据
2.3.1 整型常量
整型常量即整常数。C整常数可用以下三种形式表示:
-
- 十进制整数。如 123、-456、0。
-
- 八进制整数。以0开头的数是八进制数。如0123表示八进制数123,等于十进制数83。-011表示八进制数-11。
- 十六进制数。以0x开头的数是16进制。如0x123,代表16进制数123,-0x12等于十进制数-18。
2.3.2 整型变量
一、整型变量的分类
整型变量可分为:基本型、短整型、长整型和无符号型四种。
- 基本型,以int表示。
- 短整型,以short int表示,或以short表示。
- 长整型,以long int表示,或以long表示。
- 无符号型,存储单元中全部二进位用作存放数本身,而不包括符号。无符号型变量只能存放不带符号的整数,如123,而不能存放负数,如-123、-3。一个无符号整型变量中可以存放的数的范围比一般整型变量中数的范围扩大一倍。
二、整型变量的定义
对于变量的定义,一般是放在一个函数的开头部分。
例
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
void main(void)
{
int a,b,c,d;
unsigned u;
a = 12;b = -24; u = 10;
c = a+u; d = b+u;
printf(" a+u = %d,b+u = %d /n",c ,d);
}
运行结果为:
a +u = 22, b + u = -14
可以看到不同种类的整型数据可以进行算术运算。
三、整型变量的类型
在将一个整型常量赋值给上述几种类别的整型变量时如何做到类型匹配?请注意以下
几点:
一个整常量,如果其值在-32768~+32767范围内,认为它是int型,它可以赋值给int 型
和long int型变量。
- 一个整常量,如果其值超出了上述范围,而在-2147683548~2147483647范围内,则认为它是 long int 型。可以赋值给long int型变量。
- 常量中无unsigned型。但一个非负值的整常量可以赋值给unsigned型整变量,只要它的范围不超过变量的表数范围即可。例如,50000赋给unsigned型整变量是可以的,而70000赋给它是不行的。
- 在一个整常量后面加一个字母l或L,则认为是long int 型常量。例如,123L。
C语言是一种计算机高级语言。它可以用来编写系统软件,也可以用来编写应用软件。它在全世界都流行非常广泛,现已成为世界上应用最广泛的几种计算机语言之一。
1983年,美国国家标准化协会(ANSI)根据C语言问世以来的各种版本对C的发展和扩充,制定了新的标准,称为ANSI C。1987年 ANSI 又公布了新标准-----87 ANSI C。目前流行的C 编译系统都是以它为基础的,但也有些不同。在微型机上使用的有Microsoft C,Turbo C,Quick C等,它们的不同版本又略有差异,使用时应了解所用的计算机系统的编译特点和规定。
printf ("请输入三个数a,b,c: /n"); /*输出提示信息*/
scanf("%d,%d,%d",&a,&b,&c); /*输入变量a,b,c的值*/
max=a; /*假定最大值为a*/
if(max<b); /*其它变量和a的值做比较*/
max=b;
if(max<c);
max=c;
printf("最大数为: %d", max); /*输出最大值*/
}
运行结果:
请输入三个数 a, b, c:
6, 5, 1 ↙
最大数为:6
本程序是求三个数的最大值。/*--------*/是注释部分,是为方便理解用的,对程序的编译和运行不起作用。所以它可以放在程序的任何位置。程序首先定义四个整型变量(int)a,b,c,max。scanf函数的作用输入数值给变量a,b,c。
通过上面的例子,我们可以得出如下结论:
- 函数是C语言程序的基本单位。一个C语言程序至少包括一个main函数或包含一个main函数和其它若干个函数。C语言的工作都是有函数完成的,C语言的函数库非常丰富,Borlandc C++ 提供300多个函数,标准C语言提供100多个函数。
- 一个函数由函数的说明部分和函数体两部分组成,说明部分包括函数名,函数类型,函数属性等,函数体是函数下面用{-----}括住的部分。
- 一个函数的执行总是从main()开始的。
- C语言程序的的每一个语句后面总是跟一个分号。
总之,C语言功能强,使用方便,可以编写任何类型的程序,因此被广泛应用于各个领域,拥有非常强的生命力。