《C语言程序的组成部分ppt课件》由会员分享,可在线阅读,更多相关《C语言程序的组成部分ppt课件(47页珍藏版)》请在金锄头文库上搜索。
1、第2章 C言语程序的组成部分 徐秋红办公地点:信息学院主楼四层411室办公:01062336516:shinestar1129126了解C程序的组成部分一个简短的C言语程序#include int main(void) printf(This is a C program.n); return 0;阐阐明:明:明:明: 假假假假设设运用运用运用运用规规范范范范I/OI/O库库函数函数函数函数, ,那么那么那么那么应该应该在程序开在程序开在程序开在程序开头头参与包含文件的参与包含文件的参与包含文件的参与包含文件的编译预处编译预处置指令置指令置指令置指令每个每个每个每个C C程序必需有一个主函数程
2、序必需有一个主函数程序必需有一个主函数程序必需有一个主函数main()main()mainmain表示主函数名,名字后面一表示主函数名,名字后面一表示主函数名,名字后面一表示主函数名,名字后面一对圆对圆括号中括号中括号中括号中voidvoid表示表示表示表示该该函数无自函数无自函数无自函数无自变变量参数量参数量参数量参数 是函数开是函数开是函数开是函数开场场和和和和终终了的了的了的了的标标志志志志每个每个每个每个C C语语句以分号句以分号句以分号句以分号终终了了了了程序中程序中程序中程序中执执行的最后一条行的最后一条行的最后一条行的最后一条语语句是句是句是句是returnreturn了解C程序
3、的组成部分阐阐明:明:明:明: /*/ /*/ /*/ /*/表示注表示注表示注表示注释释。注。注。注。注释释只起只起只起只起阐阐明作用,水参与程序的明作用,水参与程序的明作用,水参与程序的明作用,水参与程序的编译编译和运和运和运和运转转,所以注,所以注,所以注,所以注释释可以由可以由可以由可以由汉汉字或英文字符表示,可以出字或英文字符表示,可以出字或英文字符表示,可以出字或英文字符表示,可以出如今一行中的最右如今一行中的最右如今一行中的最右如今一行中的最右侧侧,也可以,也可以,也可以,也可以单单独成独成独成独成为为一行。一行。一行。一行。#include int main(void) pri
4、ntf(This is a C program. n); return 0;/*包含文件指令*/*函数头 */*函数体开场*/*输出语句*/*函数前往语句*/*函数体终了*/ 了解C程序的组成部分 1:#include 2: 3:float area(float r); 4: 5:int main(void) 6: float r; 7: printf(“Input radius: ); /*提示输入半径*/ 8: scanf(%f,&r); 9: printf(nThe area is %f . n, area(r); 10: return 0; 11: 12: 13 /* 求圆面积的函数
5、*/ 14:float area(float r) 15: 16: float s; 17: s = 3.14 * r * r; 18: return(s); 19:C程序的组成部分 C C C C程序:程序:程序:程序: (1) C(1) C(1) C(1) C程序是由一个或多个函数构成的,程序是由一个或多个函数构成的,程序是由一个或多个函数构成的,程序是由一个或多个函数构成的,这这使得程序容易使得程序容易使得程序容易使得程序容易实现实现模模模模块块化。化。化。化。 (2) (2) (2) (2) 一个函数由两部分一个函数由两部分一个函数由两部分一个函数由两部分组组成成成成: : : : 函
6、数的首部函数的首部函数的首部函数的首部 例如:例如:例如:例如:int main(void)int main(void)int main(void)int main(void) float area(float r) float area(float r) float area(float r) float area(float r) 函数体函数体函数体函数体 一一一一对对花括号括起的部分。花括号括起的部分。花括号括起的部分。花括号括起的部分。 函数体包括两部分函数体包括两部分函数体包括两部分函数体包括两部分: : : : 声明部分声明部分声明部分声明部分 float s; float s;
7、float s; float s; 可以缺省可以缺省可以缺省可以缺省执执行部分行部分行部分行部分 由假由假由假由假设设干个干个干个干个语语句句句句组组成成成成s = 3.14*r*r;return(s);printf(“Input radius: );scanf(%f,&r);printf(This is a C program. n);return 0;C程序的组成部分 留意:留意:留意:留意:函数的声明部分和函数的声明部分和函数的声明部分和函数的声明部分和执执行部分都可缺省,例如:行部分都可缺省,例如:行部分都可缺省,例如:行部分都可缺省,例如:void dump(void)void du
8、mp(void)void dump(void)void dump(void) 这这是一个空函数是一个空函数是一个空函数是一个空函数, , , ,什么也不做什么也不做什么也不做什么也不做, , , ,但它也是一个合法的函但它也是一个合法的函但它也是一个合法的函但它也是一个合法的函数。数。数。数。 C程序的组成部分 小小结:(1) C(1) C程序程序总是从是从main()main()函数开函数开场执行行, ,与与main()main()函函数的位置无关数的位置无关(2) C(2) C程序程序书写格式自在写格式自在, ,一行内可以写一个或多个一行内可以写一个或多个语句句(3) (3) 每个每个语句
9、的最后必需有一个分号。分号是句的最后必需有一个分号。分号是C C语句的必要句的必要组成部分,即使程序中最后一个成部分,即使程序中最后一个语句,句,也也应该以分号以分号终了了 (4) C(4) C程序没有行号程序没有行号C程序的组成部分小小结:(5) C(5) C言言语本身没有本身没有输入入输出出语句。句。输入和入和输出的出的操作是由操作是由库函数函数scanf()scanf()和和printf()printf()等来完成等来完成的。因此在程序的开的。因此在程序的开场处要参与要参与“#include “#include 指令指令 (6) (6) 可以用可以用 /*/ /*/ 为C C程序添加注程
10、序添加注释信息。一个信息。一个好的、有运用价好的、有运用价值的源程序,的源程序,该当在关当在关键的位的位置参与恰当的注置参与恰当的注释, ,以添加程序的可以添加程序的可读性性变量计算机内存中计算机内存中一个被命名的一个被命名的数据存储位置数据存储位置(或存储单元或存储单元)称作变量称作变量内存内存执行程序的目的是进展数据运算,运算中经常运用一个对象是变量。什么是变量?变量变量的组成变量名变量的值变量名由是一个或假设干个字符组成,其构成方式符合C言语标识符的规定。标识符 标识符 (用户自定义标识符)设计者根据需求本人定义的称号,如变量名、数组名、自定义函数名标识符建立的规那么:由假设干个英文字母
11、、数字和下划线组成头一个字符必需是字母或是下划线“_一样字母的大写和小字是有区别的count、Count、coUNT、CoUnT 都是不同的不能运用关键字做标识符关键字与标识符 关键字关键字C C言语的保管字言语的保管字intsignedexterncharunsignedfloatconstdodefaultwhilecasecontinueelsestaticifautosizeoflongregisterunioninlineforstructbreakgototypedefenumrestrictvoidswitchreturnshortdoubleasmvolatile练习:判别以下
12、的字符组合,哪些是C的标识符: for for_0 int returnz count Score33 a-1 a_29x 9_x _9x x9 x_ _9M.d sudent_name _2021BJy2K $12 c_sum_1变量与内存向变量中存储信息的方法赋值语句:变量量 = = 数据数据 ;赋值运算符不是等号将一个数值存入一个内存单元x = 90;abcde 0a=0;a=6;a=2+a; 6 8d=10;d=d-a;10 2内存的存储单元内存的存储单元假设声明5个变量:a,b,c,d,e变量在内存的存储未赋值的未赋值的变量不能变量不能直接运用直接运用每个变量都有数据类型单精度实型单
13、精度实型双精度实型双精度实型变量的类型变量的类型字符型字符型整型整型实型实型charshort intintfloatdoubleC言语变量的数据类型言语变量的数据类型变量的数据类型决议了该变量存储于内存时将占用内存空间的大小或多少一个字符型char的变量 1个字节一个短整型short变量 2个字节一个根本整型int变量 4个字节一个单数度实型float变量 4个字节一个双数度实型double变量 8个字节不同的数据不同的数据类型的型的变量可以表示的数据大小也不同。量可以表示的数据大小也不同。换句句话说,不同,不同类型的型的变量具有不一量具有不一样的数据范的数据范围。每个变量都有数据类型a$5
14、6char字符型字符型short短整型短整型int、long整型或者整型或者float实型实型double双精度型双精度型-61.33内存区-0.267.2121例如:数据位的不同,能表示数据的大小也不同。数据位的不同,能表示数据的大小也不同。00011011010000010100111001011101110000000000000001000000100000001100000100000001011111110011111101111111101111111100000001001000110100110011011110111178654321类型型关关键字字存存储字字节数数数数值范
15、范围短整型短整型signed short int2-32768 32767根本整型根本整型signed int4-231231-1长整型整型signed long int4-231231-1无符号整型无符号整型unsigned int20 65535无符号短整型无符号短整型unsigned short int20 65535无符号无符号长整型整型unsigned long int40232-1单精度精度实型型float4双精度双精度实型型double8字符型字符型char1-128 127( 存放字符的存放字符的ASCII代代码 )无无值型型void0无无值查看本机运用的C编译器的数据类型#i
16、nclude int main(void)printf(char size: %dn, sizeof(char);printf(short size: %dn, sizeof(short);printf(int size: %dn, sizeof(int);printf(long size: %dn, sizeof(long);printf(float size: %dn, sizeof(float);printf(double size: %dn,sizeof(double);return 0;Size_x.c声明变量变量的性质程序运转过程中,经过执行赋值操作,变量中存储的值可以改动。变量必
17、需声明后才可以援用。声明变量的语句方式:类型名变量名1, 变量名2,;例:int x, y, age = 19; float data1, data2 = 10.009;double price_1, price_2=13.5; char a, b = $;常量常量 在程序在程序执行行过程中其程中其值不不变的数据的数据例如例如 x = y - 100 x = y - 100 a = -0.63 + b a = -0.63 + b 常量在程序中可以直接运用。常量在程序中可以直接运用。常量C程序的数据有两种变量常量常量符号常量:为常量建立一个标识符也就是给它取一个名字。系统商定用大写方式。C程序是
18、经过#define编译预处置指令来定义符号常量。例如,在程序的开场处可以添加假设干行编译预处置指令去为常量建立符号名: #define 符号名 常量值例如:#definePI3.14159 #defineER2 #defineIDCODE 110101199001010583符号常量的运用实例符号常量的运用实例 #include #include #define PI 3.14159 /* PI #define PI 3.14159 /* PI 将代表将代表圆周率圆周率 */ */#define R 6 /* R #define R 6 /* R 将代将代表半径值表半径值6 */6 */int
19、 main(void)int main(void) double girth, area;girth = 2 * R * PI;area = R * R * PI;printf(girth = %f , area = %f n , girth,area);return 0;常量的写法 整型常量十十进制整型制整型 -39、156、0、+708 八八进制整型制整型 -037、0156、+0100 (以数字以数字0开开头 )十六十六进制整型制整型 0x61、-0X2A0C、0x6d (以以0x或或0X开开头)长整型整型 6l -320L 无符号整型无符号整型 15U 760u常量的写法 实型常量十进
20、制小数方式 -8.765、-0.703、-.703、.0005、27.0、27.指数方式 指数方式的实数是由尾数、字母e或E、幂值等三个部分组成。 -1.023e-2 (-1.02310-2)尾数是十进制整数常量或带小数点的实数常量幂值部分为十进制短整型常量;幂值可以带有正号“+或负号“-,正号普通省略不写。 常量的写法 例:0.008的C言语指数表示方式可以写成如下多种方式:8E-3、8.0E-3、8.E-3、0.8E-2、.8E-2 3.33102表示为33.3e1 或者 0.333E3 错误的写法:6.13e-2.0E-6.E75e 常量字符常量由一对单撇号括起的一个字符称为字面常量。如
21、: a T 9 =可以将一个常量字符存入一个字符型变量:char mychar1= T, mychar2= =;ASCII与字符常量常量字符型常量由一对单撇号括起的一个字符专门的 本义字符 字符方式含义阐明字符方式含义阐明n换行LF反斜杠字符t横向跳格HT单引号字符v竖向跳格VT双引号字符b退格BSddd13位八进制数所代表的一个ASCII码字符r回车CRxhh12位十六进制数所代表的一个ASCII码字符f走纸换页FF0空字符NULLa响铃BEL%百分号字符Shu_1.c常见的本义字符表不可变的变量 定义了某一个变量,并向该变量赋初值后,又要求其值在以后运用中不允许改动,即设置一个不可变的变量
22、 。C言语采用在定义变量的数据类型名的前面添加const关键字,例如:const double modulus =1.5233;此语句定义modulus为一个实型变量,但同时又阐明它为const类型,将其定义为常数,所以modulus变量的值在以后程序的运用中是不能改动的。 信息读写根底系统的输入输出函数都属于C编译器的规范库函数2-4.c向屏幕输出文本信息向屏幕输出文本信息向屏幕输出数据、文本信息向屏幕输出数据、文本信息读取键盘输入的数据读取键盘输入的数据printf() printf() 输出函数出函数puts() puts() 输出函数出函数scanf() scanf() 输入函数入函数
23、信息读写根底2-4.c在运用规范库函数时,要用编译预处置指令 “#include将有关的“头文件包括到用户的源文件中。规范输入输出函数对应的头文件是stdio.h,所以在程序的开头应该写有如下文件包含指令: #include 输出文本信息的函数puts()的用法: puts(字符串);#include int main(void) puts(Hello!); return 0;输出字面文本#include int main(void) puts(“I am a student. n); puts(“ID: 079988316. n); puts(“Name: John. n); puts(“:
24、John163 n); return 0;2-4.c例:用程序输出个人信息。程序中输出数据的函数2-4.c输出函数的普通格式为: printf(格式字符串,输出列表);一对双撇号括起的字符串“格式字符串包括三种信息格式字符串包括三种信息: : 字面文本:字面文本:为任何文本信息,它将按本来方式直接任何文本信息,它将按本来方式直接显示示 转换阐明符:由明符:由“和一个字符和一个字符组成,如成,如%d%d、%f%f等。它的等。它的作用是将作用是将输出的数据出的数据转换为指定的格式指定的格式输出。它出。它总是由是由“字字符开符开场。 本本义序列。能提供特殊格式控制的控制符号。序列。能提供特殊格式控制
25、的控制符号。“输出表:出表: 需求需求输出的一些数据,可以是常量、出的一些数据,可以是常量、变量或表达式。量或表达式。输出字面文本#include int main(void) printf(“I am a student. n); printf(“ID: 079988316. n); printf(“Name: John. n); printf(“:John163 n); return 0;2-4.c例:用程序输出个人信息。常用的转换阐明符转换阐明符含义对应的数据类型%c单个字符个字符char%s字符串字符串char数数组%d有符号的十有符号的十进制整数制整数int、short%ld有符号的
26、十有符号的十进制制长整数整数long %f十十进制浮点数制浮点数float %lf十十进制浮点数制浮点数double、long double %e十十进制小数的指数方式制小数的指数方式 float、double 输出格式中援用转换阐明符#include int main(void) int x=1209, y=51; printf(“%d+%d=%d , x, y, x+y); return 0;2-5.c例:在屏幕上显示一个加法运算: 1209+51=?输出格式中经常援用的本义序列本义序列含义阐明本义序列含义阐明n换行LFb退格BSt程度制表符HTr回退到当前行开场处#include int
27、 main(void)int a,b,c,d;a = 3;c = b = a;a = b = c = d = 6;a = c + (d = 3 * (b = 5); printf(a=%d, b=%d, c=%d, d=%d n,a,b,c,d);printf(a=%d, b=%d, r c=%d, d=%d n,a,b,c,d);return 0;程序中数据的输入2-6.cscanf()scanf()函数作用:函数作用: 读取键盘输入的数据,按照变量在内存的地址将读取键盘输入的数据,按照变量在内存的地址将变量的值存进去。变量的值存进去。 普通格式:普通格式:scanf(scanf(格式字符串
28、,地址表格式字符串,地址表););同同printf()printf()函数函数#include int main(void) float x; printf(Input a data: ); scanf(%f, &x); printf(x=%f n, 2*x); return 0;2-6.c“&x是变量x在内存中的地址,&是取地址运算符例 计算: 2x=?字符数据的输入输出用putchar()函数向屏幕上输出一个字符putchar函数字符输出函数的作用是向规范输出设备显示器输出一个字符。 普通方式为 putchar(c);用getchar()函数接纳从键盘输入的一个字符getchar函数字符输
29、入函数的作用是接纳来自规范输入设备键盘输入的一个字符。 getchar函数没有参数,普通方式为 c = getchar();函数执行后,前往一个函数值为从键盘输入的字符#include int main(void) char onec; /*声明一个字符变量*/ printf(请输入一个字符: ); onec = getchar(); /*接纳来自键盘的一个字符*/ printf(由键盘输入的字符是%c. n , onec); return 0;小结C言语程序的组成方式C程序的根本内容:语句用的关键字、标识符定义的变量名运算的表达式输入、输出函数常量和变量不同数据类型的变量的定义表达式和表达式的运算规那么赋值语句、输入输出函数