您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > c语言程序设计(第二章)1
第2章基本数据及其运算(1)1基本数据类型2常量和变量3赋值运算符#include“stdio.h”main(){intr;//定义一个整型变量floatarea;//定义一个浮点型变量r=10;//给整型变量赋初值area=3.14*r*r;//给浮点型变量赋值printf(“%d\n”,area);//显示结果}目标掌握C语言的几种基本数据类型,int、char、flloat、double了解基本数据类型在计算机里占据的空间掌握数据输出时所用的格式转换符了解转义字符的使用1基本数据类型基本数据类型数据属于不同类别AfricaThequickbrownfoxTRUE数据非数值数值整型非整型9002.129999/12/20032.175123JackieChanchar数据类型非数值数值整型intshortintlongintdoublefloat非整型2常量和变量1.常量在程序运行过程中,值不能被改变的量称为常量。常量用于定义具有如下特点的数据:在程序中保持不变在程序内部频繁使用需要用比较简单的方式替代某些值常量可分为不同的类型,如0,-1为整型常量;0.5,-1.5为实型常量;‘A’,‘#’为字符型常量;“Abc”为字符串常量,这些常量都是直接常量。C语言中也可以用一个标识符代表一个常量。代替常量的标识符称为符号常量,为了区别于一般的变量,符号常量通常使用大写的英文字母。符号常量在使用前必须先声明,其声明的一般格式如下:#define符号常量名常量例如:#defineN102.变量:就是在程序运行过程中值可以发生变化的量程序内存编写程序时,常常需要将数据存储在内存中,方便后面使用这个数据或者修改这个数据的值。通常使用变量来存储数据。使用变量可以引用存储在内存中的数据,并随时根据需要显示数据或执行数据操纵。存储RateRate*5%将值存储为DiscAmtRate-DiscAmt100.5将值存储为Result9.5声明和使用变量声明变量:Datatypevariablename;如:inta,b,c;floatA,B,C;定义时初始化变量:Datatypevariablename=value;如:intb=4;/*声明b为整型变量,初值为4*/定义后初始化变量:variablename=value;如:intb;b=4;给变量赋值,除了给一个直接的值以外,还可以通过计算获得。变量命名在C语言中,变量命名需要遵循一定的规则。变量的命名规则:变量名可以由字母、数字和_(下划线)组合而成变量名不能包含除_以外的任何特殊字符,如:%、#、逗号、空格等变量名必须以字母或_(下划线)开头变量名不能包含空白字符(换行符、空格和制表符称为空白字符)C语言中的某些词(例如int和float等)称为保留字,具有特殊意义,不能用作变量名C语言区分大小写,因此变量price与变量PRICE是两个不同的变量变量命名有效名称principalcost_pricemarks_3lastnamecity无效名称123ratecurrency$discount%zipcode整型数据整型常量C语言中整型常数有3种不同的表示形式:(1)十进制,例如25,789,888。(2)八进制,为了与十进制数有所区别,在八进制整数前加一个标识符“0”,例如0123,0777,-0145。(3)十六进制,为了和其他进制数有所区别,在十六进制整数前面加一个标识符“0X”,例如0X123,0X658。问题:0123=()100x123=()100Xff=()1083291255问题:0123=()100x123=()100Xff=()10整型变量数据在内存中是以二进制形式存放的。声明了一个整型变量k:intk;/*声明为整型变量*/k=12;/*给变量赋以整数值12*/每个整型变量在内存中占2个字节也就是16位,十进制整数12的二进制形式为1100,在内存中以下图形式存放:整型名称全称类型说明符缩写类型说明符位数范围整型intint16-32768至+32767无符号整型unsignedintunsigned160至65,535短整型shortintshort16-32768至+32767无符号短整型unsignedshortintunsignedshort160至65,535长整型longintlong32-2,147,483,648至2,147,483,647无符号长整型unsignedlongintunsignedlong320至4,294,967,295实型数据实型常量C语言中的实型常量如同其他高级语言中的实数,是由整数、小数和指数3部分组成,它的表示方法有两种:(1)十进制小数形式:(必须有小数点)由整数部分和小数部分组成。例如4.87,-89.556。(2)指数形式:(e或E之前必须有数字;指数必须为整数,且不能插入空格)用科学记数法来表示。例如24.13e4,-5.45E9,56.3e-4都是合法的实型数的表示方法。56.3e-4=56.3×10-4实型变量实型数据是按照指数形式存储的,系统把一个实型数据分成小数部分和指数部分,分别存放。指数部分采用规范化的指数形式。实型常量的类型默认double型(双精度)在实型常量后加字母f或F,认为它是float型实数6532.1234在内存中的存放形式可以用下图表示:在线保险单年龄:_____保险总额:_____性别:_____字符型2398340'M'int/floatchar字符型数据字符常量用一对单引号括起来的一个字符,称为字符常量,例如‘a’、‘A’、‘?’都是字符常量。C语言还允许用一种特殊形式的字符常量,就是一个以“\”开头的字符序列,这种反斜杠字符常量又称转义字符。21字符常量•定义:用单引号括起来的单个普通字符或转义字符.•字符常量的值:该字符的ASCII码值转义字符及其含义:转义字符含义\n\v\r\a\‘\ddd\t\b\f\\\“\xhh转义字符含义换行垂直制表回车响铃单引号3位8进制数代表的字符水平制表退格换页反斜线双引号2位16进制数代表的字符如‘\101’-----------‘A’‘\012’-----------’\n’‘\376’-----------’’‘\x61’-----------’a’‘\60’-----------’0’‘\483’----------()例:‘A’-------’\101’-------’\x41’--------65如‘A’——65,‘a’——97,‘0’——48,‘\n’——10如‘a’‘A’‘?’‘\n’‘\101’•转义字符:反斜线后面跟一个字符或一个代码值表示例转义字符举例main(){printf(\101\x42C\n);printf(Isay:\Howareyou?\\n);printf(\\CProgram\\\n);printf(“Turbo\‘C\’\n);}运行结果:(屏幕显示)ABCIsay:”Howareyou?”\CProgram\Turbo‘C’字符变量字符型变量用来存放字符常量,只能放一个字符,不可以放一个字符串。假设有如下声明:charc='A';它表明声明了一个字符型变量c,并把字符常量'A'赋给了c,因为'A'的ASCⅡ码值是97,所以相当于变量c现在的值就是97。字符型占8位内存signed或unsignedSigned-128至+127unsigned0至255chargender;gender='m';chargender='m';•字符常量与字符串常量不同字符串常量•定义:用双引号(“”)括起来的字符序列。例如“a”,“Howareyou”,“5678”都是字符串常量。•存储:每个字符串尾自动加一个‘\0’作为字符串结束标志hello\0例字符串“hello”在内存中aa\0例‘a’“a”例空串“”\0例:charch;ch=“A”;例:charch;ch=‘A’;各种数值间的混合运算不同类型数据间的转换隐式转换•什么情况下发生–运算转换------不同类型数据混合运算时–赋值转换------把一个值赋给与其类型不同的变量时–输出转换------输出时转换成指定的输出格式–函数调用转换------实参与形参类型不一致时转换•运算转换规则:不同类型数据运算时先自动转换成同一类型doublefloatlongunsignedintchar,short低高说明:必定的转换运算对象类型不同时转换例charch;inti;floatf;doubled;ch/i+f*d-(f+i)intintdoubledoubledoubledoubledoubledoubleintintdoubledoubledoubledoubledoubledouble10+‘a’+i*f-d/l例inti;floatf;doubled;longl;显式转换(强制转换)•一般形式:(类型名)(表达式)例(int)(x+y)(int)x+y(int)3.6•说明:强制转换得到所需类型的中间变量,原变量类型不变例main(){floatx;inti;x=3.6;i=(int)x;printf(“x=%f,i=%d”,x,i);}结果:x=3.600000,i=3精度损失问题较高类型向较低类型转换时可能发生3赋值运算符赋值符号“=”就是赋值运算符,它的作用是将一个表达式的值赋给一个变量。赋值运算符的一般形式为:变量=赋值表达式例如,x=5y=(float)5/2如果表达式值的类型,与被赋值变量的类型不一致,但都是数值型或字符型时,系统自动地将表达式的值转换成被赋值变量的数据类型,然后再赋值给变量。
本文标题:c语言程序设计(第二章)1
链接地址:https://www.777doc.com/doc-3357771 .html