欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    C程序设计基础知识.ppt

    • 资源ID:6503613       资源大小:267.49KB        全文页数:35页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C程序设计基础知识.ppt

    计算机高级语言(C语言)第1章C程序设计基础知识,柯凡教三楼206,第1章C程序设计基础知识,1.1 变量1.2 常量1.3 算术运算符与算术表达式1.4 赋值运算符与赋值表达式1.5 自加、自减、逗号运算符1.6*位运算,1.1 变量,变量:在程序运行过程中值可以改变的量定义变量的目的是要求计算机在内存中为数据开辟存储空间假设内存是512MB,既有512*1024*1024个存储单元(每个字节为一个单元),每个存储单元都有一个编号,里面可以存放数据不同类型的数据所占据空间的大小也不同数据与内存的关系如同房客与宾馆之间的关系每个变量要具备3个要素:变量名变量的数据类型变量的值,标识符,标识符:为函数、变量等取的符号化的名称标识符的命名规则:1)由字母,数字,下划线组成,以字母或下划线开头。(不同的系统对标识符的长度的规定不同)例如:sum,_t1_2,n5 等 2)C语言的关键字不能作为标识符32个关键字,如int、long、if等详见教材3)C的标识符区分大小写,如Sum和sum是不同的4)变量名取名尽量做到“见名知意”,变量名,变量名名除了遵循标识符规定外,还需要注意以下规则:1)在同一个函数体内,变量名不能重复定义2)所有变量的定义语句必须放在函数体的最开始处3)变量要强制定义,即变量要先定义后使用4)尽量避免定义与库函数中函数名同名的变量,如printf、scanf等,容易造成混乱,变量的定义方法,变量定义的语法格式:变量类型 变量名列表;例如:int a,b;unsigned int c,d;long f;变量定义的同时还可以为变量指定初始值例如:int a=5;,数据类型,示例1-1:求计算式35+80的值#includevoid main(),整形变量,int a,b,c;a=35;b=80;c=a+b;printf(value=%dn,c);,本程序的其他写法:,int a=35,b=80;a=a+b;printf(value=%dn,a);,int a;a=35+80;printf(value=%dn,a);,int a,b;a=35;b=80;a=a+b;printf(value=%dn,a);,int a=35,b=80,c;c=a+b;printf(%d+%d=%dn,a,b,c);,使用int型数据,要注意允许值的范围,当超过取值范围后会发生溢出例1-2:整形变量的溢出#includevoid main()short int a;a=32767;a=a+1;printf(Result is:%dn,a);,运行结果为:Result is:-32768,char每一个字符变量只能存放一个字符 在内存中存放的是该字符的ASCII码值字符数据的运算字符数据可以进行加减乘除等各种运算,参加运算的数据是该字符对应的ASCII码值。字符数据可以和整型数据相互通用,可以彼此赋值,字符变量,示例1-3:#include void main()char c1,c2;c1=a;c2=b+1;printf(%c,%cn,c1,c2);printf(%d,%dn,c1,c2);,输出结果:a,c 97,99,1.2 常量,常量:在程序运行过程中值不变的量。包括:1)整型常量2)实型常量 3)字符常量4)字符串常量5)符号常量6)const常量(新的C标准适用),1)整型常量,默认为十进制:如123,-456八进制:以0开头,如012 十六进制:以0 x或0X开头,如0X12、0 x7B默认为int型末尾加l或L表示long型,如:123L、0 x7AL默认为signed型末尾加u或U表示unsigned型,如:123u、0 x7AU,2)实型常量,只能用十进制表示:1)小数方式:如12.3,-4.56,.252)指数方式:数+e或E+指数,如1.2e3,23.4E-4,而1.2e2.3,.e2,E4均不合法3)默认为双精度类型末尾加f或F表示单精度,如1.2f,-2.3F,3)字符常量,1)由一对单引号括起来的一个字符如:a,A注意区分:5和5:5表示字符5,5表示整数52)转义字符:单引号括起来的是以开头加其他字符,用来表示特殊字符如:n表示换行 t表示水平制表符 一个单引号 一个双引号 一个反斜线 0空字符 ddd八进制ASCII码代表的字符,如101 xhh十六进制ASCII码代表的字符,如x41,4)字符串常量,一对双引号括起来的多个字符如:hello、How are you!区分字符串和字符:字符串常量除了包含双引号中的所有字符,还隐含一个特殊字符0如a实际包含a和0两个字符,其中0用来标识一个字符串的结束,输出时没有任何显示。请思考0、0、0的区别,5)符号常量,给常量值取名(遵循标识符的命名规则)增加了程序的可维护性和可读性符号常量仍然是常量,值在程序运行中不可改变为区别变量,符号常量通常用大写字母表示“定义”符号常量使用编译预处理指令#define格式:#define 符号常量名 常量值如:#define MAX_VALUE 35编译预处理命令在编译时完成,将符号常量用值来替换,因此常量值后面不要加分号,例1-4:求圆的面积#include#define PI 3.1415926void main()float r,area;printf(Input the circles radius:);scanf(%f,6)const常量,新的C语言规范中,允许在定义变量之前加上const修饰符,将定义一个具有特定数据类型、具有符号化名称的常量程序在运行时,系统在内存中为const常量分配存储空间const常量的定义格式:const 数据类型 常量名=常量值;例如:const float PI=3.1415926;const常量通过C语句来定义,只能在定义的时候赋初值,在程序运行过程中,不能修改该常量的值,1.3 算术运算符与算术表达式,算术表达式 用算术运算符和扩号将运算对象连接起来并且符合C语言规则的式子叫算术表达式 运算对象包括常量,变量,函数 例如:a*b/c-1.5+a 算术运算符的优先级和结合性 优先级:先*/%、再+-如x-y%4尽量通过添加括号()明确优先级关系结合性左结合,即对同等优先级的运算符,从左向右,1.4 赋值运算符与赋值表达式,赋值运算符:=作用:将右边的数据、变量或表达式的值赋给左边的变量 赋值表达式:赋值运算符前加上其它运算符构成的运算符 赋值方法:变量=表达式 注意:左侧必须是变量,不能是表达式例如:a=a+1;合法,含义是将变量a所对应的值取出来,加1运算后,将运算结果写回a对应的内存单元;赋值表达式的值为a的值例如:a+1=2;不合法,=左边是表达式,优先级:低于算术运算符 先计算=右边的表达式,再执行赋值运算结合性:右结合(自右至左)例如:a=b=c=5;合法例如:a=b=3=c=5;不合法变量赋值与变量赋初值是不同的,比较:变量赋初值:int a=5;变量赋值:int a;a=5;类型转换 若赋值运算符两侧数据类型不一致,系统要自动进行类型转换:赋值运算符右边的类型向左边的类型转换 表达式计算时也存在数据类型转换,各种数值型数据间的混合运算,整型、实型、字符型(与整型数据通用)数据间可以进行混合运算。但在进行运算时,不同类型的两个数据运算前要先转换成同一类型,再运算。这种转换是系统自动进行的,称为自动类型转换(隐含转换)。转换规则如图,说明:图中横向向左的箭头表示必定进行的转换。例如:两个float 型数据进行运算时,要先转换为double型数据。两个char 型数据进行运算时,要先转换为int型数据纵向的箭头表示当参加运算的对象类型不同时进行类型转换的方向 例如:double型数据和int型数据进行运算时,int型数据要转换为double型再运算不同类型的数据转换是从低级向高级数据类型转化的。多个类型不同的数据进行运算时,不是一次性的将所有数据全部转化为同一类型后运算,而是按照运算顺序的需要一步一步进行的 例如:有double d;float f;int i;long e;表达式 10+a+i*f-d/e 的求解方式在自动类型转换过程中,数据在转换过程中,精度不提高,也不改变原变量的类型,只是改变了值的表现形式,强制类型转换,为了解决自动类型转换所带来的“不确定性”,可以采用强制类型转换,在赋值之前将表达式的计算结果强制转换为某种类型,再赋值给某个变量形式:(类型名)(表达式)例如:(double)a/*将a的值转换成double类型*/(int)(x+y)/*将x+y的值转换成int类型*/(float)(5%3)/*将5%3的值转换成float类型*/说明:类型转换,仅仅是为了本次运算或赋值的需要而对变量的数据长度进行一时性的转换,并不能改变数据说明时对该变量规定的数据类型,复合算数赋值运算符,赋值运算符与算术运算符的组合,有5个:+=、-=、*=、/=、%=基本使用格式为:变量 算术运算符=表达式它等价于:变量=变量 算术运算符 表达式例如:表达式a+=2等价于a=a+2例如:表达式a*=3+5 相当于a=a*(3+5),1.5 自加、自减、逗号运算符,自加+和自减-是独特高效的运算符,也很容易混淆使变量的值加一或加一单目运算符,操作对象只能是变量不能是表达式或常量常用于整型数据的运算前缀方式:将+或-放在变量的前面功能:先执行变量与1相加或相减的运算,将运算结果写回变量,最后取该变量的值参与运算例如:x=+y;等价于y=y+1;x=y;后缀方式:将+或-放在变量的后面功能:先取出变量的值参与运算,运算完成后,再执行变量与1加或减的运算,最后将运算结果写回变量中例如:x=y+;等价于x=y;y=y+1;,逗号运算符,逗号,用于连接多个表达式组合成一个表达式,整个表达式称为逗号表达式逗号表达式的一般形式为:表达式1,表达式2,表达式3结合性:左结合逗号表达式从左至右,逐个计算每个表达式的值,直到完成最后一个表达式的计算,最后一个表达式的值作为整个逗号表达式的值优先级:最低例如:3+5,6+8 a=3*5,a*4(a=3*5,a*4),a+5,练习:阅读下面程序写出可能的运行结果,并与程序运行的实际情况对照,注意变量的初始化、赋值引起的值的变化#includevoid main()int n1,n2=80;char c1,c2=n2;float f=80.678;double d=1.234;printf(n1=%d,n2=%dn,n1,n2);printf(c1=%c,c2=%cn,c1,c2);printf(f=%f,d=%fn,f,d);c1=f;n1=f+d;f=(n1,n2,d,c1);/*逗号表达式的值,就是最后一个表达式的值*/printf(n1=%d,n2=%dn,n1,n2);printf(c1=%c,c2=%cn,c1,c2);printf(f=%f,d=%fn,f,d);,1.6*位运算,是对某个字节内的二进制位进行逐位操作操作对象只能是int型和char型数据6个位运算符:&(按位与)|(按位或)(按位异或)(按位取反)(右移位),按优先级由高到低为:&|,位运算规则:,位运算符的计算方法及应用场合,1按位与运算符:&用于将某些二进制位保留不变,而将其它二进制位清零如:11&1的结果是保留11的最低位不变,其余各位清零,结果为1 00001011&00000001 所以11&1结果为1 000000012按位或运算符:|用于将某些二进制位保留不变,而将其它二进制为置1如10|1的结果是保留10的高15位不变,将最低位置1,结果为11 00001010|00000001 所以10&1结果为11 00001011,3按位异或运算符:用来翻转若干二进制位,而保留其它位不变如:3115将保留高12位不变,而低4位被翻转(取反),结果为16 00011111 00001111 所以31&15结果为16 000100004按位取反运算符:对所有的二进制位逐位取反,将1变为0,将0变为1。如:1将高15位变成1,而最低位变成0,即-2的补码,结果为-2。00000000 00000001 所以1结果为-211111111 11111110由于int类型在不同系统中占用的存储空间不同,取反运算的结果也会有所差别。,5左移位运算符:右移位将数据中的每一个二进制位向右平移指定位,移出的部分被丢弃,左侧补充的内容为0或1(数据为无符号数时,填0;数据为带符号数时,填充为符号位,即正数填0负数填1)右移相当于除2的效果。如152的结果为3,-152的结果为-22 00000000 00001111 所以152结果为3 00000000 000000112 11111111 11110001 所以-152结果为-2 11111111 11111110,

    注意事项

    本文(C程序设计基础知识.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开