1 / 41

语言程序设计

福州职业技术学院 计算机系. 21 世纪高职高专计算机系列规划教材. 语言程序设计. 中国铁道出版社. 第 2 章 C 语言的编程元素. 2.1 标识符、常量和变量 2.2 C 语言的数据类型 ( 整型数据 实型数据 字符型数据 ). 第 2 章 C 语言的编程元素. 2.1 标识符、常量和变量. 2.1.1 标识符 标识符是用来标识变量名、符号常量名、函数名、文件名以及一些具有专门含义的有效字符序列。

Download Presentation

语言程序设计

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 福州职业技术学院 计算机系 21世纪高职高专计算机系列规划教材 语言程序设计 中国铁道出版社

  2. 第2章 C语言的编程元素 • 2.1 标识符、常量和变量 • 2.2 C语言的数据类型 (整型数据 实型数据 字符型数据 )

  3. 第2章 C语言的编程元素 2.1 标识符、常量和变量 2.1.1 标识符 标识符是用来标识变量名、符号常量名、函数名、文件名以及一些具有专门含义的有效字符序列。 C语言规定:合法的标识符只能由字母、数字和下划线组成,第一个字符必须为字母或下划线。大写字母和小写字母被视为两个不同的字符。标识符的长度规定取前8个字符为有效字符。例如: sum、area、aver.PI、_above、L_1_2_3、S12 合法的标识符 A.B.C、A.123、13、3area、a+b 不合法的标识符

  4. 第2章 C语言的编程元素 1. 关键字 关键字是背保留用作专门用途的特殊标识符。一共有32 个,分别是 auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while

  5. 第2章 C语言的编程元素 2. 预定义标识符 预定义标识符是指C语言提供的库函数名和预编译处理命令(如printf、scanf、define)等。

  6. 第2章 C语言的编程元素 3. 用户标识符 由用户根据需要自定义的标识符称为用户标识符。使用用户自定义标识符时,应注意: (1) 最好根据其含义选用英文缩写及汉语拼音作标识符,这样便于阅读程序。 (2) 不能与关键字相同。 (3) 如果与预定义标识符相同系统并不报错,程序仍能运行,只是预定义标识符失去原来的含义,代之以用户确认的含义。

  7. 第2章 C语言的编程元素 2.2 常量和变量 1. 常量 在程序运行过程中,其值不能被修改的固定量称为常量,C语言中有3种常量: (1) 算术型运算常量(如整型常量、实型常量等); (2) 字符型常量(如字符常量、字符串常量); (3) 标识符所定义的常量(符号常量)。

  8. 第2章 C语言的编程元素 符号常量的定义方法与用处 #define PI 3.14 main() { int r,s; r=3; s=PI*r*r; printf(“s=%d”,s); } (1) 修改程序方便 (2) 为阅读程序提供了方便

  9. 第2章 C语言的编程元素 2. 变量 程序运行过程中,其值可以改变的量叫变量;程序中使用的变量,属于用户自定义标识符,任何一个变量名必须先定义(即确定变量名和变量的类型)后使用。 变量也有类型之分,常用的有整型变量、实型变量、字符型变量等。

  10. 第2章 C语言的编程元素 1.先定义,后使用 2.定义不同的变量是为了分配不同的存储空间 3.不同类型的变量有不同的运算,可以在编译时检查该变量所进行的运算是否合法

  11. 无符号型(unsigned) 长整型(long) 短整型(short) 整型(int) 单精度型(float) 双精度型(double) 指针类型 枚举类型 第2章 C语言的编程元素 2.3 C语言的数据类型 整型 C语言中的数据类型,如图2.1所示。 数值类型 基本数据类型 字符型(char) 实型 自定义类型 数据类型 数组类型 结构体类型(struct) 联合体类型(union) 复杂数据类型 图2.1 C语言中的数据类型

  12. 第2章 C语言的编程元素 2.4 整型数据 1. 整型常量 整型常量,即整型常数。C语言整型常量可用以下3种形式表示: (1) 十进制整型常数, 例如1325, -432, 0。 (2) 八进制数。以0开头的数, 如0123。 (3) 十六进制整数。以0x开头的数为十六进制数, 0x123即十进制数291。 短整型占2个字节,长整型占4个字节

  13. 第2章 C语言的编程元素 2. 整型变量 1) 整型变量的分类 整型变量可分为以下4种整型类型: a. 基本型,以int表示 2个字节表示; b. 短整型,以short int 表示 2个字节表示; c. 长整型,以long int 表示 4个字节表示; d. 无符号整型,以unsigned int 表示 。

  14. 第2章 C语言的编程元素 2) 整型变量的定义、使用变量必须先定义,后使用。定义整型变量的格式为: int i , j ; /* 定义i , j为整型变量 */ long int e , f ; /* 定义e , f为长整型变量 */ int a=3 , b=4 ; /* 定义a , b为整型变量同 时将3和4分别赋予a和b */ 3. 整型数据在内存中的存放形式 在C语言中,一个整型数通常占用2个字节,低位在前一个字节,高位在后一个字节。

  15. 第2章 C语言的编程元素 整型变量的定义方法: main() { int a,b,c,d; unsigned u; a=-15; b=23; u=9; c=a+b;d=c+u; printf(“a+b=%d, c+u=%d\n”,c,d); } 运行结果: a+b=8,c+u=17 问题:运算数据结果不可超过界限

  16. 第2章 C语言的编程元素 4 如何输入整型数据 【语法格式】 scanf(格式控制 , 地址1 , 地址2 , …); 【功能】将输入数据转换为指定格式后存入到由地址表所指的相应变量中 整型数据输入格式字符 d 输入十进制整数 o 输入八进制整数 x 输入十六进制整数 u 输入无符号整数 ld, lo,lx 输入长整数数据

  17. 第2章 C语言的编程元素 整型数据输入格式举例 main() { int a,b,c; printf(“please input a,b,c\n”); scanf(“%d%d%d”,&a,&b,&c); printf(“a=%d, b=%d,c=%d”,a,b,c); } 使用, ‘\t’ ‘\n’ 作为分隔符 输入7 8 9或者7,8,9 试试

  18. 第2章 C语言的编程元素 4 如何输出整型数据 【语法格式】 printf ( 格式控制, 输出项1, 输出项2, … ) 【功能】将要输出的数据转换为指定格式输出 整型数据输出格式字符 d 输入十进制整数 ld o 输入八进制整数 lo x 输入十六进制整数 lx u 输入无符号整数 lu m 按照宽度m输出,右对齐 -m 按照宽度m输出,左对齐

  19. 第2章 C语言的编程元素 整型数据输入格式举例 main() { int num1=123; long num2=123456; printf("num1=%d,num1=%5d,num1=%-5d,num1=%2d\n",num1,num1,num1,num1); printf("num2=%ld,num2=%8ld,num2=%5ld\n", num2,num2,num2); }

  20. 第2章 C语言的编程元素 答案 num1=123,num1= 123,num1=123 ,num1=123 num2=123456,num2= 123456,num2=123456 另:书本p19/例2.5

  21. 第2章 C语言的编程元素 整型数据输入格式举例2 main() { int a=-1; char b=-1; long int c=-1; printf("%d,%u,%o,%x\n",a,a,a,a); printf("%d,%u,%o,%x\n",b,b,b,b); printf("%d,%u,%o,%x\n",c,c,c,c); }

  22. 第2章 C语言的编程元素 答案2 -1,65535,177777,ffff -1,65535,177777,ffff -1,65535,177777,ffff

  23. 第2章 C语言的编程元素 2.2.2 实型数据 1. 实型常量 在C语言中实型表示实数的集合,实型常量又称实数。实型常量有两种表现形式。 1) 十进制数形式 十进制数形式和数学中的实数形式类同,由数字和小数点组成,小数点是实数的标志。 -9.999 2) 指数形式 实数的指数形式类似于数学中的指数形式。组成格式如下: 数字[小数]E[±]整数 ([ ]内为可省项)

  24. 第2章 C语言的编程元素 2. 实型变量 在C语言中实型变量分为单精度(float)和双精度(double)两类。单精度占4个字节 提供7位有效数字,数值范围-3.4*10p-38~3.4*10p38 双精度占8个字节 提供15~16位有效数字,数值范围-3.4*10p-308~3.4*10p308 实型变量的定义: float a , b ; /* 定义a , b为单精度实型变量 */ double x , y ; /* 定义x , y为双精度实型变量 */

  25. 第2章 C语言的编程元素 举例说明实数数值精度的保留 main() { float f1=444.4444444444444; printf("\n\n %.13f",f1); } 观察结果发现只能保留前七位的精度 思考如何保留16位的精度?

  26. 第2章 C语言的编程元素 3 如何输入实型数据 【语法格式】 scanf(格式控制 , 地址1 , 地址2 , …); 【功能】将输入数据转换为指定格式后存入到由地址表所指的相应变量中 整型数据输入格式字符 f或e 用于输入单精度实数,小数或者指数形式 lf或le用于输入双精度实数,小数或者指数形式

  27. 第2章 C语言的编程元素 实型数据输入格式举例 main() { double x; scanf("%f",&x); printf("%f,%e",x,x); } 由于格式字符和定义类型不匹配,因此输出结果不正确

  28. 第2章 C语言的编程元素 4 如何输出实型数据 【语法格式】 printf ( 格式控制 , 输出项1 , 输出项2 , … ) 【功能】将要输出的数据转换为指定格式输出 实型数据输出格式字符 f 按照十进制形式输出单、双进制浮点数 e 按照指数形式输出单、双进制浮点数 m.n 按照宽度m, 其中n为小数,右对齐 -m.n 按照宽度m, 其中n为小数,左对齐 g 选用%f或%e格式中输出宽度较短的一种格式

  29. 第2章 C语言的编程元素 实型数据输入格式举例1 main() { float b=3.141592653589; double c=1234567898765.432; printf("b=%f\n",b); printf("c=%f\n",c); } 答案: b=3.141593 c=1234567898765.431880

  30. 第2章 C语言的编程元素 实型数据输入格式举例2 main() { float x=138.35; double y=35648256.3645687; printf("x=%11f, %-14.4f, %5.4f\n",x,x,x,x); printf("y=%4f,%16.4f,%.1f\n",y,y,y); } 答案: x= 138.350006, 138.3500 , 138.3500 y=35648256.364569, 35648256.3646,35648256.4

  31. 第2章 C语言的编程元素 2.2.3 字符型数据 1. 字符型常量 字符型常量(简称字符常量)是一个字符,在表示时由两个单引号括起来。例如'A'、'a'、'+'、'2'等。 字符型常量在内存中占用一个字节,存放的是字符的ASCII码值,如字符'A'的值为65;'B'的值为66。所有字符常量还可作为整型量进行运算,以及参与相应的各种操作。

  32. 第2章 C语言的编程元素 2. 转义字符 C语言中有一种特殊的字符常量——转义字符,这类字符常量是以反斜杠字符“\”开头的字符序列,它表示某个特定的ASCII码字符。在程序中,转义字符要放在一对单引号内。 常用的转义字符及其含义: '\n' 回车换行至下一行开头 '\r' 回车至本行开头 '\b' 退格符 '\ \' 反斜杠字符\ '\′' 单引号字符′

  33. 第2章 C语言的编程元素 \n 换行,将当前位置移到下一行开头 \t 横向跳格(跳到下一个输出区) \v 竖向跳格 \b 退格 \r 回车,将当前位置移动到本行的开头 \f 走纸换页 \\ 反斜杠字符\ \ '单引号(撇号)字符 \ddd 1~3位8进制数所代表的字符 \xhh 1~2位16进制数所代表的字符

  34. 第2章 C语言的编程元素 字符‘ a ’的不同输入方法 #include "stdio.h" #include "stdlib.h" main() { /* char ch='a'; */ /* char ch=(char)97; or ch=97 */ /* char ch='A'+32; or 'b'-1 */ /* char ch='\x61'; */ /* char ch='\141'; */ /* char ch; ch=getchar(); or scanf("%c",&ch); */ printf("\n\nthe character is %c",ch); }

  35. 第2章 C语言的编程元素 3. 字符变量 字符变量用于存放一个字符常量。字符变量的定义格式为: char c1 , c2; 其中c1和c2分别被定义为字符型变量。 一个字符型变量在内存中占一个字节,字符型变量可以参加任何整型运算。

  36. 第2章 C语言的编程元素 转义字符举例 main() { printf("\101 \x42 C\n"); printf("I say:\How are you?\"\n"); printf("\\c Program\\\n"); printf("Turboc\'c\'"); }

  37. 第2章 C语言的编程元素 如何输入字符型数据 • 用scanf函数输入字符 char cha,chb; scanf("%c%c",&cha,&chb); • 用getchar函数输入字符 ch=getchar(); 有时候用于程序暂停

  38. 第2章 C语言的编程元素 如何输出字符型数据 • 用printf函数输入字符 scanf(“cha=%c,chb=%c",&cha,&chb); • 用putchar函数输入字符 putchar(cha);

  39. 第2章 C语言的编程元素 字符串常量 是由一对双引号括起来的字符序列。 如“Hello”, “B”, “How do you do”等 双引号仅起定界符的作用,并不是字符串中的字符。 C语言中没有专门的字符串变量。 C语言中规定在每个字符串的结尾加一个字符‘\0’作为字符串结束的标志。

  40. 第2章 C语言的编程元素 S格式输出字符串的几种用法 (1) %ms: m为输出字符串所占的列数,字符串右对齐 (2) %-ms: m为输出字符串所占的列数,字符串左对齐 (3) %m.ns: 输出m列,但只取字符串左端的m个字符,右对齐 (4) %-m.ns: 输出m列,但只取字符串左端的m个字符,左对齐

  41. 本节完 作业:p27/二、三、四、五

More Related