C语言组成与数据
1、组成结构:
组成:若干文件
文件:若干函数
函数:函数头+函数尾
函数头:四部分->函数名+()
函数体:{}+语句
语句:三类语句
类型1->/* */
类型2->定义语句;
类型3->执行语句;
2、数据与数据类型
数据四类:常量 变量 表达式 函数
常量:值不发生变化的量
整型常量——三种形式(十进制、八进制、十六进制)
第一形式->十进制:是用一串连续的0...9数字
第二形式->八进制:用数字0开头的一串连续合法八进制
第三形式->十六进制:用0X或0x开头的一串连续合法的十六进制
注意:若表示长整型常量则必须后加字母l或L
实型常量——两种形式(小数、指数)
第一形式->小数形式:由数字和小数点组成
第二形式->指数形式:用“E”或“e”后紧跟一个整数表示以10为底幂数
注意:
(1)字母E或e之前之后必须都有数字,且后必是整数
(2)字母E或e的前后及各数字之间不能有空格
字符型常量——四种形式(常规、转义、八进制、十六进制)
第一形式->一对单引号括一个字符
第二形式->转义字符常量:必须以一个反斜杠""开头
表示换行符
表示制表符
表示退格符
表示回车符
第三形式->ddd 最多以有三位八进制数
第四形式->xhh 最多可以有两位十六进制数
字符串常量——一种形式
定义:用一对双引号(双撇号)括起来若干个字符
注意:
(1)每一个字符串尾都有一个字符串结束符‘ ’
(2)C语言中没有字符串变量
变量:值随时随地改变的量
变量使用规则:先定义后使用
定义格式:数据类型名 变量名列表
注意:
(1)变量必须先定义后使用
(2)变量名属于用户标识符,遵守用户标识符命名规则
(3)在同一“函数体”{}中不能定义同名变量
(4)同时定义多变量,必用逗号分隔
(5)变量可赋初值(初始化),无初值是随机值
表达式:用运算符将数据连接起来的合法式子
1) 定义:表达式:用运算符将数据连接起来的合法式子
运算符:三个属性:功能、优先级、结合性(运算方向)
算术运算符及算术表达式:+ - * / %
求余(%):
(1)两边运算对象必须是整型
(2)求值方法:先忽略负号不计求出余数,再将所得余数的符号定成与被除数相同的符号即可
(3)注意:单独的常量、变量或函数调用都是C语言合法表达式。凡是表达式都是一个确定的值
2)赋值运算符及赋值表达式
赋值运算符: =
格式: 变量名=表达式
赋值运算符的功能:将表达式的值赋给“=”左边的变量
注意:
(1)赋值运算符左边只能是一个变量
(2)赋值运算符右边可以合法表达式
(3)赋值表达式的值就是赋值运算符左边变量值
(4)实型数据赋给整型变量时,实型小数舍去;整型数据赋给实型变量时系统自动将整型数据转成实型数据
复合赋值运算符:+=、-=、*=、/=、%=、&=、|=、^=、>>=、<<=
注意:复合赋值运算符的两个运算符中间不能有空格
3)自增、自减运算符
注意:只能用于变量不能用于常量或表达式
4)逗号运算符及其表达式(“顺序求值”表达式)
格式:表达式1,表达式2,表达式3,...表达式n
功能:逗号表达式的值就是表达式n(最后一个表达式)的值,求值顺序是从左到右依次求解
函数:调用具有一定功能的函数作为运算量
函数(标准函数 自定义函数)
可以参与运算
数据类型四大类:基本类型、构造类型、指针类型、空类型
基本类型:整形int 、字符型char 、浮点型(单精度型float 、双精度型 double )枚举型 enum
构造类型:数组型、结构体类型struct、共用体类型 union
指针类型:
空类型:void
3、标识符(三类)
1)保留字(关键字):共32个,固定含义,不能再做为它用
int float char if else for
2)预定义标识符:在C语言中预先定义并具有特定含义的标识符
scanf printf include
3)用户自定义标识符:由用户根据需要定义的标识符。如:变量名、数组名、函数名等
注意:
(1)用户自定义标识符,标识符只能由字母、数字、下划线组成,而且第一个字符必须是字母或下划线
(2)在C程序中大小写字母是严格区分的。如int INT sum SUM,C语言程序中主要使用小写。
4、强制类型转换(显式转换)
格式:
(类型名)表达式 或(类型名)(表达式)
利用强制类型转换运算符可将一个表达式的值转换成指定的类型
进行强制类型转换,得到的是一个中间值,而原来表达式或变量的类型未发生改变
注意:
若变量x为int型,则表达式(float)x的结果是一个单精度型,但是x还是int型