程序设计基本概念1.ppt_第1页
程序设计基本概念1.ppt_第2页
程序设计基本概念1.ppt_第3页
程序设计基本概念1.ppt_第4页
程序设计基本概念1.ppt_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章 C语言设计的初步知识 本章要点: 标识符命名规则 常量和变量 基本数据类型 常用运算符及表达式 运算符的优先级及结合性 本章难点: 不同类型数据间的混合运算 运算符的优先级 自增(+)自减(-)运算符的使用C语言程序设计 2.1简单语言程序的构成和格式 例2.1 计算两个给定整数的和(P7页) #include main( ) int a,b,sum; /* 这是定义变量 */ a=8; b=10; /* 以下3行为C语句 */ sum=a+b; printf(“Sum is %d n”,sum); 程序的运行结果: Sum is 18 C语言程序设计 说明: C语言程序由函数构成。一个程序必须包含一个 main函数,也可以包含一个main函数和若干个其 它函数,但只能包含一个main函数。 无论main函数位于何处,程序总是从main函数开 始执行。 3.语句必须以分号结束。一行可以写多条语句,一条 语句也可以写在多行。 C语言程序设计 4. C语言的输入输出是通过scanf和printf两个 库函数实现的。 5.可用/*/对C程序中的任何部分作注释, 注释可以写在程序的任何位置上,“/*”与 “*/”也可不在同一行上。 6.在C语言中,大小写字母是有区分(一般用 小写字母)。 7.#include 为命令行(也可写为 #include “stdio.h”),不是语句,行尾不能用 分号。一般可以不写。 C语言程序设计 main ( ) printf (“This is a C program.n“); C语言程序设计 #include “stdio.h” main ( ) int a, b, c; scanf (“%d,%d“, c=max (a,b); printf (“max=%d“,c); int max(int x,int y) int z; if (xy) z=x; else z=y; return (z); C语言程序设计 2.2 标识符、常量和变量 2.2.1 标识符 一、标识符:在C语言中,有许多符号的命名都必须遵守一定的 规则,按照规则命名的符号称为标识符。 二、C语言中的标识符可以分为系统定义标识符和用户定义标符 。 1、系统定义标识符: 关键字 关键字是C语言系统使用的具有特定含义的标识符,不能作为 预定义标识符和用户定义标识符使用。C语言定义了32个关键 字,如表2.1所示。 2) 预定义标识符 预定义标识符也是具有特定含义的标识符,包括系统标准函 数名和编译预处理命令等,如scanf、printf、define和 include 等都是预定义标识符。 C语言程序设计 表2.1 C语言中的关键字(附录4) auto breakcasecharconst continu e defaultdo doubleelse enumexternfloatforgoto if intlongregister return shortsignedsizeofstaticstruct switchtypedefunsigne d unionvoid volatilewhile 关键字必须用小写字母;不允许使用关键字为变量、数组和函数等操作对象 命名。 C语言程序设计 2、用户定义标识符: 用户定义标识符用于对用户使用的变量、数 组和函数等操作对象进行命名。 注意: (1)C语言区分大小写。例如total与Total是 不同的标识符。 (2)标识符必须由字母或下划线开头,并且 除了字母、数字和下划线外,不能含有其他字符 。 (3) 自定义标识符不能与关键字相同。 C语言程序设计 例: number num sum s a b c i j n m3 abc45 max_NUM _xx _abc8 正确 C语言程序设计 例: 1s ab.kk bomb? abc de int 错误 C语言程序设计 考题:以下4组用户定义标识符中,全部 合法的一组是 A) main B) If C) txt D) int enclude -max REAL k_2 sin turbo 3COM _001 C语言程序设计 2.2.2常量 常量是指在程序运行过程中其值不被改变的量。比如程序中的具体数字, 字符等。常量有几种类型: (1)整型常量的形式 十进制整数 :由数字(0-9)和正负号表示 例如:123、-456、0 等 八进制整数:以0开头数是八进制数 例如: 0123 即(123)8 =( 83) 10 (123) 8=182+2 81+3 80 =( 83) 10 十六进制整数:以0x或0X开头 例如: 0x123 即 (123) 16 =( 291) 10 main() int a=0123,b=0x123; /*0123是八进制数,0x123是十六进制*/ printf(“a=%d,b=%d“,a,b); 程序运行结果为: a=83,b=291 C语言程序设计 (2)实型常量:有小数表示形式和指数表现形式两 种 小数形式 例如:45.3,0.000744,-623.0等 指数形式 例如: 45.3e0 ,4.53e-3 ,-453e-1等 (3)字符常量: 一个字符常量代表ASCII码字符集 里的一个字符. 例如: :a,A,p等。 注意:a,A是两个不同的字符常量。 C语言程序设计 2.2.3 符号常量 C语言中,可以用一个符号名来代替一个常量,称为符号常量 例2.2符号常量的使用 #define PI 3.14 main() float area; area=10*10*PI; printf(“area=%f”,area); C语言程序设计 说明 符号常量必须先定义后才能用它表示一 个数值。 符号常量的值在其作用域内不能改变, 也不能再被赋值。 符号常量名习惯用大写字母表示。 C语言程序设计 2.2.4 变量 1. 变量概念:程序执行期间值可以改变的量。 命名规则: 变量名由用户定义,必须符合标识符的命名规则 ,只能由字母、数字和下划线三种字符组成,且第一个字 符必须为字母或下划线。 例如:以下为不合法的变量名: M.D.Jess , 1add ,age int a;/*定义了整型变量a*/ C语言程序设计 3. 变量的初始化 C语言允许在定义变量的同时给变量赋值,这称为变量 的初始化。 变量初始化的一般格式为: 数据类型标识符 变量名1=初值1,变量名2=初值2,变 量名n=初值n; 例如: int a=2; /*指定a为整型变量,初值为2*/ float f=3.45; /*指定f为实型变量,初值为 3.45*/ char c=A; /*指定c为字符变量,初 值A*/ 也可以使被定义的变量的一部分赋初值,如: int a=1, b=-3,c; C语言程序设计 在C语言中,变量必须先定义后使用,其目的是: 1、凡未被事先定义的,不作为变量名。 2、每一个变量被指定为一确定的类型,在编译时就能为 其分配相应的存储单元。 3、指定每一个变量为一确定的类型,在编译时据此检查 该变量所进行的运算是否合法。 * 选变量名时,要做到“见名知意” 例如: max sum * 大小写字母是两个不同的字符,C变量名习惯用小写字 母表示。 * 建议变量名的长度不要超过8个字符。 注意: C语言程序设计 2.3整型数据 基本型:以 int 表示 短整型:以 short int 或 short 表示 1.类型 长整型:以 long int 或 long 表示 (123l、 123L) 无符号基本型(unsigned int) 无符号型 无符号短整型(unsigned short) 无符号长整型(unsigned long) (-3276832767) 一个无符号整型变量中可以存放的正数的范围比一般整型变 量中正数的范围扩大一倍。 int i; /* 变量i 的数值范围: -3276832767 */ unsigned int j; /* 变量j的数值范围:065535 */ 1.整型变量的分类 C语言程序设计 整型变量的字长 short型字长16位(2个字节)。 long 型字长32位(4个字节)。 int 型随编译程序而定(2个字节,VC+是4个字节 ) C要求 long型数据长度不短于int型, short型不长于int型。( short + - (单目)-* / % - + -(双目) C语言程序设计 C语言运算符的优先级与结合性(附录6) C的运算符有以下几类。 (1)算术运算符 ( + - * / %) (2)关系运算符 ( = | float n; double b,d; long e; 计算m*n+24-d/e C语言的执行和其它语言一样,从左到右进行扫描,该表达式的运算次序 是: (1) 先计算m*n,但m和n类型不一样,首先将其转化为double型,然后再进 行计算,m*n的计算结果仍然为double 型。 (2)向右运算,24是整型,所以首先将其转化成double型,将它变为24.0000 。然后再和第二步的计算结果相加,结果当然是double型。 (3)由于“/”比“-”优先,先进行d/e的运算,先将e转化为double型,运算 结果为double型 。 C语言程序设计 float char,shortint double long unsigned 级别低 级别高 图 : 不同数据类型自动转换 C语言程序设计 2. 强制类型转换 格式:(类型)(表达式) 例如:(int)3.5 注意:在进行类型转换时,操作数的值并不发生 改变,改变的只是表达式值的类型。 例如: float x=3.5;i=(int)x; /* i的值为3*/ 使用强制转换类型得到的是一个所需类型的中 间量,原表达式类型并不发生变化。 (int)(x+y); /* 将x+y的值转换为int类型 */ (int)x+y; /* 将x的值转换为int类型,再与y 相加 */ C语言程序设计 2.6 赋值表达式 1、 赋值运算符与赋值表达式 1)形式:变量名=常量或表达式 2)作用:将右边常量或表达式的值赋给左边的变量 例如: a=10; b=a; 3)对赋值表达式求解的过程是: 求赋值运算符右侧的“表达式”的值; 赋给赋值运算符左侧的变量。 例如: a=3; a=a+3; C语言程序设计 注意:如果表达式类型与左边的变量的类型不匹配,自动进 行类型转换。 4) 优先级:低于算术运算符。 5)结合方向:从右向左。 例:“a=b=c=10;”等价于“a=(b=(c=10);”即先将常 量10赋给变量c,然后再将10赋给变量b,最后 将10赋给变量a。 例:a=b=7+1; 正确 a=7+1=b; 错误 C语言程序设计 2、复合赋值运算符 复合赋值运算符:在赋值符“=”之前加上其它运算符 共有10种复合赋值运算符 +=,-=,*=,/=,%= /*复合算术运算符5个*/ k = +j; j = 3; k = +j; j = 3; k = j+; j = 3; k = j+; a = 3; b = 5; c = (+a) * b; a = 3; b = 5; c = (+a) * b; a = 3; b = 5; c = (a+) * b; a = 3; b = 5; c = (a+) * b; C语言程序设计 说明: (1)自增运算符,自减运算符,只能 用于变量,而不能用于常量或表达式。 (2) 和与负号运算符优先级相同,结 合方向是“自右至左”。 例如:i=3;j=- i+; 负号运算符和“+”运算符同优先级,而结合 方向为“自右至左”(右结合性),即它相当于- (i+)。 C语言程序设计 2.7.2 逗号运算符与逗号表达式 形式:表达式,表达式2,表达式n 作用:先计算表达式1的值,再求解表达式2的 值,依次进行,最后计算表达式n。最后一个 表达式的值就是此逗号表达式的值。 例如: x=8*2,x*4; 其计算过程为:先计算x=8*2,其值为 x=16,再计算x*4,其值为64。整个表达式的 值为x*4的值,也就是64 结合方向:从左向右。 C语言程序设计 逗号运算符是所有运算符中级别最低的。 因此,下面两个表达式的作用是不同的 : x=(a=3,6*3) x=a=3,6*a 第个是一个赋值表达式,将一个逗号表 达式的值赋给x,x的值等于18。第个 是逗号表达式,它包括一个赋值表达式 和一个算术表达式,x的值为3。 C语言程序设计 本章常用运算符总结: 1、优先级: ( ) + - * / % + - = += -= *= /= %= , 2、+、- -、以及赋值运算符的结合 方向是自右向左。 C语言程序设计 1、a=b=c=5

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论