例9-3从输入的两个数a,b中,求出较大的数的程序。 #includestdio. h int max(int x, int y) /*定义max函数,函数返回值为 整型;x,y为形式参数,整型*/ i int z if (x>y) else z=y return(z) /*将z的值返回到调用处*/ main /*主函数* finta, b, m: /*定义三个整型变量*/ scanf(w%d,%d,"&a,&b);/*输入变量a和b的值*/ m=max(a, b) /*调用max函数,将返回值m*/ printf(max=%d〃,m) /*输出m的值*/ 程序执行结果是在输入a,b值后,可求出较大的数并赋予变 量m。如输入a=3,b=5,则执行结果可显示出m=5
例9-3 从输入的两个数a,b中,求出较大的数的程序。 #include“stdio.h” int max(int x,int y) /*定义max函数,函数返回值为 整型;x,y为形式参数,整型*/ { int z; if(x>y) z=x; else z=y; return(z); /*将z的值返回到调用处*/ } main() /*主函数*/ {inta,b,m; /*定义三个整型变量*/ scanf(“%d,%d,”&a,&b);/*输入变量a和b的值*/ m=max(a,b); /*调用max函数,将返回值m*/ printf(“max=%d”,m); /*输出m的值*/ } 程序执行结果是在输入a,b值后,可求出较大的数并赋予变 量m 。如输入a=3,b=5,则执行结果可显示出 m=5
从三个例子可看出C语言或C51源程序的基本 格式有如下特点: 1.C语言程序的书写格式比较自由,一行可 以写若干条语句,一个语句也可以写成几行, 不管一行写几个语句,每个语句须以“;”结尾。 2.程序由一个主函数和若干个其他函数组成, 主函数的名字必须为main。程序的执行总是从 main函数开始的,其位置无特殊规定 3.C语言程序通过函数调用去执行指定的工 作。源程序文件需要包含其他源程序文件的内 容时,则要在本程序文件头部用包含命令 # include进行“文件包含”处理。 返回本章首页
从三个例子可看出C语言或C51源程序的基本 格式有如下特点: 1. C语言程序的书写格式比较自由,一行可 以写若干条语句,一个语句也可以写成几行, 不管一行写几个语句,每个语句须以“;”结尾。 2.程序由一个主函数和若干个其他函数组成, 主函数的名字必须为main。程序的执行总是从 main函数开始的,其位置无特殊规定。 3.C语言程序通过函数调用去执行指定的工 作。源程序文件需要包含其他源程序文件的内 容时,则要在本程序文件头部用包含命令 #include进行“文件包含”处理。 返回本章首页
第三节数据类型和存储类型 数据类型 C语言中的数据分为常量和变量,不论常量还 是和变量都有几种不同类型,不同类型的数据占 用的存储长度不同。 1.常量和符号常量的类型 常量指程序运行时其值不能被改变的量,常 量可以用一个标识符表示,并称为符号常量。C 语言中的常量分为如下几种类型: 整型、实型、字符、字符串
第三节 数据类型和存储类型 一、数据类型 C语言中的数据分为常量和变量,不论常量还 是和变量都有几种不同类型,不同类型的数据占 用的存储长度不同。 1.常量和符号常量的类型 常量指程序运行时其值不能被改变的量,常 量可以用一个标识符表示,并称为符号常量。C 语言中的常量分为如下几种类型: 整型、实型、字符、字符串
2.变量类型 表C51变量类型 变量名称符号类型 数据长度」值域范围 位型量 bit 1位 0.1 有符号 SIgned char 8位 128~+127 字符型 无符号 unsigned char 8位 32768~+32767 整数型 有符号 signed int 16位 0≈255 无符号 unsigned int16位 0~65535 长整型 有符号 signed long 32位 231~232-1 无符号 unsigned long|32位 32二 浮点型 float 32位 34E38~34E+38 指针型 指针 824 对象地址 特殊位型 sbit 0或1 8位特殊功能寄存器型 sfr 8 0≈255 16位特殊功能寄存器型 sfrl6 16 0~65535
2.变量类型 变量名称 符号 类型 数据长度 值域范围 位型量 bit 1位 0,1 字符型 有符号 signed char 8位 -128~+127 无符号 unsigned char 8位 -32768~+32767 整数型 有符号 signed int 16位 0~255 无符号 unsigned int 16位 0~65535 长整型 有符号 signed long 32位 -2 31~2 32-1 无符号 unsigned long 32位 2 32-1 浮点型 float 32位 3.4E-38~3.4E+38 指针型 指针 8~24 对象地址 特殊位型 sbit 1 0或1 8位特殊功能寄存器型 sfr 8 0~255 16位特殊功能寄存器型 sfr16 16 0~65535 表 C51变量类型
二、存储类型 存储类型是指该数据在单片机系统中存放的位置,也 就是数据的定位方式 表C51存储类型 存储类型 与存储空间的对应关系 data 直接寻址片内数据存储区,访问速度快(128字节) bdata 可位寻址片内数据存储区,允许位与字节混合访问(16字节) idata 间接寻址片内数据存储区,可访问片内全部RAM地址空间 (256字节) pdata 分页寻址片外数据存储区(256字节)由MOVX@R0,A指令 访问 data 片外数据存储区(64K),由MOX@DPTR,A指令访问 code 代码存储区(64K),由 MOVC A,@A+DPTR指令访问
二、存储类型 存储类型是指该数据在单片机系统中存放的位置,也 就是数据的定位方式。 存储类型 与存储空间的对应关系 data 直接寻址片内数据存储区,访问速度快(128字节) bdata 可位寻址片内数据存储区,允许位与字节混合访问(16字节) idata 间接寻址片内数据存储区,可访问片内全部RAM地址空间 (256字节) pdata 分页寻址片外数据存储区(256字节)由MOVX @R0,A指令 访问 xdata 片外数据存储区(64K),由MOVX @DPTR,A指令访问 code 代码存储区(64K),由MOVC A,@A+DPTR指令访问 表 C51存储类型