目录
一:C语言结构
1.1 C语言允许分割代码和数据
可以使用具有局部(临时)变量的函数或代码块来实现这种特性
代码块(程序块)是逻辑上连接在一起的一组程序语句,可以当作一个单元来使用
int Sum(int a)
{
int iSum = 0;
int i = 1;
while(i <= a)
{
iSum = iSum + i;
i++;
}
return iSum;
}
1.2 由一个或者多个.C文件构成
每一个.C文件可以由预处理命令、全局变量声明、函数和注释组成
#include <stdio.h> /*预处理命令*/
int count=0; /*全局变量声明*/
int main(void) /*函数*/
{
printf("Hello World\n");
return 0;
}
1.3 C程序被分割成一个个的函数,有且仅有一个main函数
程序执行时先将控制权传递给main函数(主函数)
函数由函数的首部(函数第一行)和函数体(一对大括号中的内容)组成
#include <stdio.h> /*预处理命令*/
int count=0; /*全局变量声明*/
int main(void) /*函数*/
{
printf("Hello World\n");
return 0;
}
1.4 函数的首部:类型、名称、参数类型和参数名,圆括号内参数有无都可以,但括号不能省略
函数定义后面接一个大括号{}叫分隔符
{ 代表代码块开始,} 代表结束
/*函数名:int max(int a,int b)
函数功能:求最大值
函数参数:
函数返回值:*/
int max(int a,int b)
{
if(a>b)
return a;
else
return b;
}
1.5 函数由声明部分和执行部分组成
C语言使用分号;表示语句结束
不识别回车、空格或制表符(这些符号使代码美观)
建议一行写一条语句,一条语句可以跨多行
#include <stdio.h> /*预处理命令*/
int max(int a,int b); /*函数原形声明*/
int main(void){ /*函数*/
int num1,num2,result;
printf(“请输入两个整数:”);
scanf("%d%d",&num1,&num2);
result=max(num1,num2);
printf(“max=%d\n“,result);
return 0;
}
1.6 注释
注释用于描述特定的命令、函数或程序,增强程序的可读性
多行注释用/*开始,用*/结束(标准C语言)
一行注释用//标出
二:C标准库
C编译器都提供有标准函数库
DOS下的C编译器Turbo C 2.0大约有440个函数
BC++2.0大约有500多个函数
VC++除了标准的C运行库及C语言扩展外,还有600多个Windows API,以及VC++中的类库(MFC)
Linux下的C也有很多扩展及系统函数
程序员编写的函数可以放在库中,然后在需要时使用
有些编译器允许将函数放在标准库中
有些编译器需要创建单独的库
三:C程序执行过程 编写过程
四:数据类型
4.1 变量
程序要为每一项数据分配内存,通常使用变量来存储数据。使用变量可以引用存储在内存中的数据,并随时根据需要显示数据或执行数据操纵。
需要多少内存
数据被存储在哪里
操作系统负责集中变量在内存中的地址
要引用内存空间中的值,只需指定变量名
4.2 常量
常量就是一个保持不变的值
示例9 数字/整型常量9.3 数字/浮点常量“NAME” 字符串常量‘A’ 字符常量符号常量#define NUM 100
提高代码的可读性,还可以做到一改全改
使用const关键字const int iNum= 100;
4.3 C标识符
变量、函数、标签和其他各种用户定义的对象的名称都称为标识符正确的标识符名称A a rena、s_count、marks40、class_one
不正确的标识符示例1sttest、oh!god、start... end
标识符的长度可以是任何合适的数值,但是各种编译器能够识别的变量中的字符数目有所不同C 语言中的标识符区分大小写
4.4 C关键字
在一个特定语言的上下文中有特殊意义的单词。是标识符的一个特殊的集合。在C语言中有预先定义好的特殊意义。不能用于其他任何目的所有的数据类型都是保留的关键字所有的关键字小写
C语言的关键字共32个:
4.5 C系统标识符
系统内置的标识符指的是系统函数名称、系统定义的结构体名称、系统定义的符号常量名称等例如:printf、FILE、date、RED等以上各种标识符不要用于用户定义的标识符上,防止发生不必要的错误
4.6 C数据类型
4.7 数据类型的使用
数据类型描述了变量中将存放的数据的种类数据类型位于变量名的前面例如:数据类型 int 将位于变量名 varName 的前面变量声明必须放在变量使用之前(先定义后使用)一般放在函数体的开头部分,可执行代码的前面变量声明也可以放在代码块的前面
4.8 C变量的赋值
程序中常常需要对一些变量预先设定初始值
定义时初始化变量Datatype variablename = value;
例如:int num1,num2 = 12;
定义后初始化变量variablename = value;
例如:int num;
num = 12;
五:变量在内存中的存储
void main()
{
int nNum = 300;
//0x0000012C
char cStr = ‘A’;
//0x41
char cCh ;
printf(“%d\n”, nNum);
printf(“%c\n”,cStr);
printf(“%c\n”,cCh);
}
六:C基本数据类型
6.1 int类型
6.2 float类型
6.3 double类型
6.4 char类型
6.5 ASCII码表
6.6 void类型
6.7 派生数据类型
6.8 数据输出格式
6.9 数据类型示例
#include <stdio.h>
int main ()
{
char sex = 'F'; /*用M和F代表性别*/
float length = 13.5f; /*声明length,长度可能带有小数位*/
double area; /*声明area */
double pay; /*money有角和分*/
short int age = 89; /*人类的年龄现阶段不可能超过150*/
return 0;
}
选择数据类型时首先考虑变量用来存放什么类型值,
然后再根据存放值的最大值和最小值,进一步选择适当的类型和类型的修饰符