中国石油大学曾怡C课件chapter3w_第1页
中国石油大学曾怡C课件chapter3w_第2页
中国石油大学曾怡C课件chapter3w_第3页
中国石油大学曾怡C课件chapter3w_第4页
中国石油大学曾怡C课件chapter3w_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

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

文档简介

1、顺序结构程序设计第三章回顾:了解标识符列出C语言程序中的各种数据类型并使用它们区分变量和常量讨论变量讨论运算符和表达式目标:程序的三种基本控制结构顺序执行语句格式化输出函数printf()格式化输入函数scanf()单个字符的输入/输出函数程序的三种基本控制结构程序的三种基本结构分为:顺序结构选择结构循环结构1.顺序结构是最简单的一种基本结构。其各部分是按书写顺序执行的。如下图。AB2.选择结构又称为分支结构。根据条件表达式的值执行不同的支路。如下图3.循环结构是指重复执行的一个操作集合。有两种形式:当型循环先判断后执行和直到型循环先执行后判断。无论是哪一种结构,它们都只有一个入口和一个出口。

2、C语句概述语句: 用来对数据进行加工完成操作任务。是构成程序的基本单位通常一个c程序由假设干个函数系统、用户组成每个函数由假设干条语句组成。每条语句总是以“;结束。语句的分类:表达式语句、函数调用语句、复合语句、空语句。顺序执行语句1.结构控制语句:控制程序流程 选择语句:ifelse switch 循环语句:for while do.while 转向语句:continue break return goto控制程序的流向语句。顺序执行语句2.表达式语句在表达式的后面跟一个分号就构成一个表达式语句。例:n=10; x*=2;a-1;i+-2;顺序执行语句3.函数调用语句由函数调用加上分号组成。

3、如:a(12,13); /* 调用函数a,但其值并未保存。只是调用一次函数。 如:printf(“Hello worldn);4.空语句指只有一个分号的语句。即; 它是个语句 ,但是不产生任何动作。空语句什么也不做,有时用作被转向点,或为循环语句提供空体如:for(int i=0;i100) sum+=i;i+; 赋值语句即赋值表达式后加一;构成要区分赋值表达式与赋值语句如:if(a=b)0) t=a; 表达式 语句注意:1、赋值表达式可包含在其它表达式之中,而赋值语句不行2、赋值语句只能作为一条单独的语句,或放在复合语句中。3、赋值语句用途很广。格式化输出函数printf()C 语言中的标准

4、库提供了输入和输出函数 标准库提供: 输入/输出函数来处理输入、输出、字符和字符串操作 标准输入通常是指键盘 标准输出通常是指显示器也称控制台 可以用文件代替标准输入和输出设备格式化输出函数printf()#include 这是一个预处理命令 是一个标准输入输出文件,称为头文件 所设计的 printf()、scanf()、putchar()、getchar() 等函数需要引用头文件才能正确执行格式化输出函数printf()向标准输出设备控制台上显示数据,输出假设干个类型任意的数据.语法格式: printf (control string , argument list);控制字符串参数列表 都

5、需要一个格式命令-与参数列表需要在数量、类型和顺序上匹配 需要由“ 括起来。由文本字符和空格、格式命令和非打印字符组成参数列表由逗号分隔的常量、变量、表达式或函数组成。格式化输出函数printf()控制字符串由三类项目中的一项或多项组成:文本字符和空格:由可打印字符组成按原样显示格式命令: 定义参数表中数据项的显示方式。以 % 符号开始,随后紧跟与数据项相应的格式代码特殊字符非打印字符:包括制表符、空格和新行转换成实际的操作格式化输出函数printf()#include void main() int i=5;float f=32.345; printf(“i=%3df=%5.1fn,I,f)

6、; printf(“End.n); 格式控制字符串格式字符串的完成格式有符号的整型数b可以用%u输出无符号的整形数a可以用%d输出注意:对于单精度数,使用f格式符输出时, 仅前7位是有效数字,小数6位 对于双精度,使用lf格式输出时, 前16位是有效数字,小数6位4、“0 修饰符 字段的默认填充符是空格。如果用户希望用零作为填充符, 需要使用此修饰符控制字符串特殊字符格式代码输出约定 输出 字符 输出 字符 % 输出 % 字符由于%和“在控制字符中有特殊用途,因此如果需要输出这些字符,按照上表的方式使用n回车换行 t横向跳格 控制字符串特殊字符v 竖向跳格b 退格r回车 f 走纸换页ddd 1

7、3位8进制数代表的字符 控制字符串与格式代码编号语句控制字符串控制字符串包括的内容参数列表参数列表的说明屏幕显示1. printf(%d,300); %d 仅由格式命令组成300 常量300 2. printf(%d,10+5); %d 仅由格式命令组成10 + 5 表达式15 3. printf(Good Morning Mr. Lee. ); 早上好 李先生.仅由文本字符组成无无Good Morning Mr. Lee.4. int count = 100; printf(%d,count); %d 仅由格式命令组成count 变量100 例:#include void main()pri

8、ntf(“The number 555 in various forms:n);/提示printf(“Without any modifier: n);/提示printf(“%dn,555);/输出printf( With modifier :n); /提示printf(%-dn ,555); /输出printf( With digit string 10 as modifier :n); /提示printf(%10dn ,555); /输出printf( With 0 as modifier : n); /提示printf(%0dn ,555); /输出printf( With 0 and

9、digit string 10 as modifiers :n); /提示printf(%010dn,555); /输出printf( With -, 0 and digit string 10 as modifiers: n ); /提示printf(%-010dn ,555); /输出格式化输入函数scanf()用于接受数据的通用格式,按格式控制的要求将数据从终端传送到变量地址所指定的内存空间。scanf(control string , argument list);控制字符串参数列表1、变量地址 变量的地址通过对变量名“求地址运算得到形式:&变量名#include void mian(

10、)int a; float b; scanf(“%d%f,&a,&f);printf(“%d,%fn,a,b);格式修饰符1.宽度修饰符:指定输入的数据所占列数。例如:scanf(%3d%3d,&a,&b);输入: 123456系统自动将123赋给a,456赋给b格式修饰符抑制修饰符:表示对应的数据读入后,不赋给相应的变量。例如: scanf(%2d %*3d %2d“,&a,&b);如果输入如下信息:12 345 67将12赋给a,%*3d表示读入3位整数但不赋给任何变量。然后再读入2位整数67赋给b。也就是说第2个数据“345被跳过。格式化输入函数scanf()2、输入数据的分隔1、采用隐

11、含的分隔符:空格、回车键、Tab键2、根据格式中指定的宽度分隔数据项不提倡3、采用用户指定的分隔符不提倡#include void main()int a;float b,c;printf(“input a,b,c:);scanf(“%d%f%f,&a,&b,&c);printf(“a=%d,b=%f,c=%fn,a,b,c);input a,b,c:12 3 4 #include void main()int a;float b,c;printf(“input a,b,c:);scanf(“%2d%3f%2f,&a,&b,&c);printf(“a=%d,b=%f,c=%fn,a,b,c);

12、printf() 和 scanf() 参数列表之间的区别 printf() 使用变量名、常量、符号常量和表达式 scanf()使用变量指针使用 scanf()时,对于参数列表应遵循以下规那么: 如果希望读取基本数据类型变量的值,应在变量名的前面加上符号& 当读取指针变量指向的值时,在变量名前不能使用 & printf() 和 scanf() 格式命令之间的区别没有 %g 选项 格式代码 %f 和 %e 在效果上是一样的 #include /头文件void main() int a; /定义变量 float d; char ch, name40; printf(“Please enter the

13、 datan ); /提示 scanf(“%d %f %c %s, &a, &d, &ch, name); /输入语句 printf(nThe values accepted are : %d, %f, %c, %s“, a, d, ch, name);/输出各变量的值 例:注意:1.如果相邻格式指示符之间不指定分隔符如逗号等那么输入数据时至少用一个空格分开,或者用Tab键分开,或者输入一个数据后,按回车,再输入下一个。2.输入数据时不能规定精度,例如,scanf(%72f,&a);是不合法的。注意:3.如果在“格式控制字符串中除了格式说明以外还有其他字符,那么在输入数据时应输入与这些字符相同

14、的字符。例如scanf(%d,%d,&a,&b);输入时应用如下形式:3,44.在用“%c格式输入字符时,空格字符和“转义字符都作为有效字符输入.例如:注意:scanf(%c%c%c,&c1,&c2,&c3);如输入a b c,那么c1=a,c2=“ ,c3=b5. 在输入数据时,遇以下情况时该数据认为结束。 遇空格,或按“回车或“跳格(tab)键。 按指定的宽度结束,如“%3d,只取3列。 遇非法输入。例如:如scanf(%d%c%f,&a,&b,&c); 假设输入1234 a a b c 思考:Scanf(“Enter a number?%d,&n);的输入格式?单个字符的输入/输出函数引

15、言:C语言没有输入/输出语句。I/O操作通过调用系统函数实现,在程序开头要有:#include 默认的输入设备 键盘,默认的输出设备 显示器C 中最简单的控制台输入/输出是: getchar() 从键盘读取一个且仅一个字符 putchar() 在屏幕上输出一个字符 getchar()用于从键盘读取输入数据,方式为一次读一个字符从键盘缓冲区读入一个字符 getchar() 函数没有参数,但仍然必须使用括号 getchar() 例如#include /头文件void main() int c;/定义变量 printf(“nPlease enter any character: ); /提示 c =

16、 getchar();/给变量赋值 printf(“n%c:%d, c,c);/输出变量的值 getchar()的使用例如Pleaser enter any character:aa:97getchar()注意当输入多个字符时,多余字符作废按回车后才可以接收字符用getchar()得到的字符可以赋给字符型变量、整型变量、或作为表达式的一部分如:c=getchar()+32 printf(“%c,c) ; 假设输入是:A 那么输出是:aputchar(C) C 中的字符输出函数 需要参数向显示器上输出一个字符将c的值输出到显示器上C可以是字符型和整型的常量、变量、表达式单字符常量转义序列字符变量

17、putchar() 函数的参数putchar() 的选项和效果参数函数效果字符变量putchar(c) 显示字符变量 c 的内容字符常量putchar(A) 显示字母 A数值常量putchar(5) 显示数字 5转义序列putchar(t) 在光标位置插入制表符转义序列putchar(n) 在光标位置插入回车putchar()#include void main() char c1,c2; c1=b;c2=98; putchar(c1);putchar(c2); putchar(b);putchar(98);#include void main()putchar(101);putchar(n)

18、; putchar();#include /头文件void main() putchar(H); putchar(n);/输出字符常量,转义字符 putchar(t); putchar(E); putchar(n); putchar(t); putchar(t); putchar(L); putchar(n); putchar(t); putchar(t); putchar(t); putchar(L); putchar(n); putchar(t); putchar(t); putchar(t); putchar(t); putchar(O); putchar()#include void main()putchar(g

温馨提示

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

评论

0/150

提交评论