《c语言基础课件2.变量和数据类型.ppt》由会员分享,可在线阅读,更多相关《c语言基础课件2.变量和数据类型.ppt(34页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第二章变量和数据类型1回顾回顾程序是为执行一项任务而编写的有序指令集算法是解决问题的具体方法和步骤流程图是算法的图形化表现形式C语言的特点C程序的编译和运行过程编译器将源程序转换成机器能理解的程序连接器用于连接相关的目标文件以生成可执行程序2目标目标理解变量和常量的含义熟悉基本数据类型-int、char、float 和 double使用算术运算符理解类型转换熟练使用 scanf()和 printf()函数熟练使用 getchar()和 putchar()函数3本章结构本章结构简介变量和数据类型变量和数据类型类型转换符号常量基本数据类型输入输出函数算术运算符接收并显示字符4程序程序指令指令2.1
2、 C语言中的基本元素语言中的基本元素常量常量标识符标识符关键字关键字运算符运算符分隔符分隔符等等常量是在程序中保持不变的量常量用于定义具有如下特点的数据:在程序中保持不变在程序内部频繁使用52.1.2 变量变量程序内存编写程序时,常常需要将数据存储在内存中,方便后面使用这个数据或者修改这个数据的值。通常使用变量来存储数据。使用变量可以引用存储在内存中的数据,并随时根据需要来操纵数据。存储 XX*5%将值存储为X-100.5将值存储为9.562.1.2 声明变量声明变量声明变量:Datatypevariablename;变量的命名规则:变量名可以由字母、数字和 _(下划线)组合而成变量名不能包含
3、除 _ 以外的任何特殊字符,如:%、#、逗号、空格等变量名必须以字母或 _(下划线)开头变量名不能包含空白字符(换行符、空格和制表符称为空白字符)C 语言中的某些词(例如 int 和 float 等)称为保留字,具有特殊意义,不能用作变量名C 语言区分大小写,因此变量 price 与变量 PRICE 是两个不同的变量72.1.2 变量命名变量命名变量初始化定义时初始化变量Datatype variablename=value;定义后初始化变量variablename=value;通过运算赋值82.2 基本数据类型基本数据类型char数据类型非数值数值整型longintdoublefloat非整
4、型shortintint92.2 整型整型名称全称类型说明符缩写类型说明符位数范围整型intint16-32768 至+32767无符号整型unsigned intunsigned160 至 65,535短整型short intshort16-32768 至+32767无符号短整型unsigned short intunsigned short160 至 65,535长整型long intlong32-2,147,483,648 至 2,147,483,647无符号长整型unsigned long intunsigned long320 至 4,294,967,295102.2 使用整型变量使
5、用整型变量声明:intpage_number;longintpopulation;unsignedintage;可按如下方式初始化:page_number0;intmax_marks=100;在同一语句中可以声明多个类型相同的变量:intpage_number,copies,paper_width;112.2.2 单精度浮点型单精度浮点型 float在 C 语言中用于存储单精度浮点数float32位10-38至10+38,7位有效数字声明:floatselling_price;初始化:floatselling_price=11.3;selling_price=65.90;122.2.2 双精度
6、浮点型双精度浮点型内存内存floatdouble64位位取值范围:10-308 至 1030816 位有效数字声明:double pressure_level;初始化:pressure_level=213.5671435568967;double dvalue=35.4;13在线保险单在线保险单年龄:_保险总额:_性别:_2.2.4 字符型字符型2398340 M int/floatchar142.2.4 字符型字符型5p$22正确正确正确正确2+2=4值符号值符号值符号0空字符44,9132空格45-9233!46.933447/9435#48570995-36$58:9637%59;971
7、22az38&6012541)63?12642*64127DEL(Delete键)43+6590AZ152.2.2 字符型字符型占 8 位内存signed或unsignedSigned-128至+127unsigned0至255chargender;gender=m;chargender=m;16输入/输出函数(printf/scanf)用于接受和显示数据或信息#include void main()int num;printf(请输入一个数:);scanf(%d,&num);printf(n%d 的平方为%d n,num,num*num);2.4 输入输入/输出函数输出函数转换字符串转义序列
8、172.4.1 printf 函数函数int visitor_count=150;printf(%d,visitor_count);printf将一些信息按照指定的格式送到标准输出(显示器)%dvisitor_count将按指定的格式显示该变量的值转换转换字符串字符串说说 明明%d将参数按整数形式转换输出,对应参数应是int 类型%ld将参数按长整数形式转换输出,对应参数应是long 类型%c输出一个字符,对应参数应该是一个字符%s输出一个字符串,对应参数应该是一个字符串%f将参数按带小数点数形式输出,对应参数应是double 类型,默认情况下精确到 6 位小数182.4.1 printf 函
9、数函数int visitor_count=150;printf(%d,visitor_count);输出结果:150192.4.1 printf 函数函数int salary=5500;printf(%10d,salary);输出结果:5500输出结果的左边显示了 6 个空格%10d202.4.1 printf 函数函数float circumference=78.53;printf(%f,circumference);输出结果:78.530000默认情况下精确到六位小数9.4786789;9.478679212.4.1 printf 函数函数double mercury_level=168.
10、2251074;printf(%7.2f,mercury_level);输出结果:168.23宽度,表示所有的数字和小数点所占的位数。不够7位右对齐。%7.2f精度(精确到小数点后多少位)222.4.1 转义序列转义序列输出结果:Name:AudreyHepburnMovie:RomanHoliday代码:printf(“Name:AudreyHepburnnMovie:RomanHoliday”);转义序列允许在输出结果中包括特殊字符转义转义序列序列名称名称描述描述a 警告产生一则警告。b 退格将光标回退一格。f 换页将光标移到下一页的第一格。n 换行将光标移到下一行的第一格。r 回车将光标
11、移到当前行的第一格。t 水平制表 将光标移到下一个水平制表位置。v 垂直制表将光标移到下一个垂直制表位置。单引号产生一个单引号。双引号产生一个双引号。?问号产生一个问号。反斜线产生一条反斜线。0 空产生一个空字符。23scanf(%d,&num);2.4.2 scanf 函数函数scanf 函数从标准输入(键盘)读取信息,按照格式描述把读入的信息转换为指定数据类型的数据,并把这些数据赋给指定的程序变量。转换字符串&符号(附在读取的每个变量上)用于指明变量在内存中的位置变量的名称转换转换字符串字符串参数参数变变量的量的类类型型要求的要求的实际输实际输入入%dint 十进制数字序列%ld long
12、 十进制数字序列%f float 十进制数,可以有小数点及指数部分%lf double 十进制数,可以有小数点及指数部分24内存2.4.2 scanffloattax_rate;scanf(%f,&tax_rate);tax_rate在内存中分配一块 32 位存储空间存储空间使用名称“tax_rate”标识提示用户输入一个值输入的值存储在变量中(因为 scanf 提供此变量的地址)12.234252.5 算术运算符算术运算符算术一元一元二元二元操作数操作数运算符262.5.1 一元算术运算符一元算术运算符算术一元一元-+num+num=num+1num-num=num-1+num-numnum
13、+num-前缀前缀后缀后缀二元二元表达式表达式如何如何计计算算结结果果(num1=5)num2=+num1;num1=num1+1;num2=num1;num2=6;num1=6;num2=num1+;num2=num1;num1=num1+1;num2=5;num1=6;num2=-num1;num1=num1-1;num2=num1;num2=4;num1=4;num2=num1-;num2=num1;num1=num1-1;num2=5;num1=4;27#include void main()int a=5,b=3,c=25,d=12;float qu;int re,in,de;/*使
14、用算术运算符*/qu=a/b;/除法 re=a%b;/求模 in=+c;de=-d;printf(商为%fn,qu);printf(余数为%dn,re);printf(“加 1 后为%dn,in);printf(减 1 后为%dn,de);2.5.1 算术运算符示例算术运算符示例输出:商为 1.000000余数为 2加 1 后为 26减 1 后为 11282.6 类型转换类型转换自动类型转换原则:把表示范围小的类型的值转换到表示范围大的类型的值 short int long float double强制类型转换语法:(类型名)变量或数值 例如:int a=5,b=3;float qu=(flo
15、at)(a)/b;292.7 接受并显示字符接受并显示字符字符型变量字符型数据字符型数据302.7.1 getchar()函数函数charvariablename;variablename=functionname;语法:例如:char c;c=getchar();31#include void main()char a,b;printf(请输入两个字符:n);a=getchar();fflush(stdin);b=getchar();fflush(stdin);putchar(a);putchar(b);putchar(n);getchar()和和putchar()示例示例内存内存abOK输
16、出:请输入两个字符:OKOKPress any key to continue_32总结总结 2-1常量是在程序中不能被更改的值;而变量在程序中可以被更改的,通过变量可以引用存储在内存中的数据C语言中的基本数据类型包括整型、单精度浮点型、双精度浮点型和字符型整型分为短整型、整型、长整型,每种整型又可分为有符号型和无符号型33总结总结 2-2单精度浮点型和双精度浮点型变量可以存储实数,但双精度型取值范围要比单精度型大的多字符型变量可以存储单个字符,其值是该字符的ASCII 码算术运算符提供运算功能,包括+、-、*、/、%、+和-printf()和 scanf()函数属于格式输入输出函数getchar()和 putchar()函数用来输入输出单个字符的函数34