版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2022-3-11 Program Design in C LanguagePage C语言程序的基本语句 数据的输入输出 第四讲第四讲第三章第三章 2022-3-12 Program Design in C LanguagePage31 C语言程序的基本语句语言程序的基本语句3.1 C语言程序的基本语句语言程序的基本语句 C语言语句分为六类:声明语句、表达式语句、函数调用语言语句分为六类:声明语句、表达式语句、函数调用语句、控制语句、复合语句、空语句。语句、控制语句、复合语句、空语句。1声明语句声明语句用来定义变量或声明被调用的函数。用来定义变量或声明被调用的函数。 形式:形式:类型说明符类
2、型说明符 变量名表变量名表;或:或: 类型说明符类型说明符 函数名函数名(形参列表形参列表);如:如:int a,b; /*a、b为基本整型变量为基本整型变量*/char c1,c2; /*c1 、 c2为字符型变量为字符型变量*/int max(int x,int y); /*函数函数max包含两个基本整型参数包含两个基本整型参数x、y, 返回值的类型为基本整型返回值的类型为基本整型*/2022-3-13 Program Design in C LanguagePage31 C语言程序的基本语句语言程序的基本语句2表达式语句表达式语句由一个表达式组成一个语句。由一个表达式组成一个语句。 形式
3、:形式:表达式表达式;如:如: +p; /*自增运算表达式加分号构成语句自增运算表达式加分号构成语句*/ N+=10; /*复合赋值表达式加分号构成语句复合赋值表达式加分号构成语句*/ a+b; /* 算术表达式加分号构成语句算术表达式加分号构成语句*/3函数调用语句函数调用语句由一次函数调用加上分号组成。由一次函数调用加上分号组成。形式:形式:函数名函数名(实参列表实参列表);如:如: printf(Very Good!n); /*输出输出Very Good!*/ max(x,y,z); /*调用自定义函数调用自定义函数max*/2022-3-14 Program Design in C L
4、anguagePage5.复合语句复合语句: 用用 括起来多个语句括起来多个语句 如如:if (ab) x=0; b=b+1; x=a; 6.空语句:仅由一个分号构成的语句空语句:仅由一个分号构成的语句4.控制语句:控制程序的流程控制语句:控制程序的流程 如如:ifelse语句,语句,while语句,语句,return语句等。语句等。3.1 C3.1 C语言程序的基本语句语言程序的基本语句 2022-3-15 Program Design in C LanguagePage功能:按格式控制字符串规定的格式,向指定功能:按格式控制字符串规定的格式,向指定的输出设备的输出设备(一般为显示器一般为显
5、示器)输出在输出表列中列输出在输出表列中列出的各输出项。出的各输出项。3.3.1 格式输出:格式输出:printf( )函数和函数和scanf( )函数函数一般形式:一般形式: printf(“格式控制字符串格式控制字符串”, 输出表列输出表列);3.3 3.3 数据输入输出数据输入输出注意:注意:printf函数是一个标准库函数,它的函数函数是一个标准库函数,它的函数原型在头文件原型在头文件“stdio.h”中。中。 1. printf( )函数函数2022-3-16 Program Design in C LanguagePage格式控制字符串格式控制字符串:可以包含三种字符。可以包含三种
6、字符。2)格式说明符:用来指定输出数据的格式,其形式为:)格式说明符:用来指定输出数据的格式,其形式为: %修饰符修饰符格式字符格式字符格式字符用以说明输出数据的类型,形式,长度,格式字符用以说明输出数据的类型,形式,长度,小数位数等。小数位数等。1)普通字符:按原样输出的字符。)普通字符:按原样输出的字符。 输出表列输出表列:需要输出的数据列表,各输出项之间用需要输出的数据列表,各输出项之间用逗号逗号分隔,可以是任意合法的表达式。分隔,可以是任意合法的表达式。3.3.1 3.3.1 格式输出:格式输出:printf( )printf( )函数和函数和scanf( )scanf( )函数函数举
7、例举例:printf(n=%5d,f=%5.2fn, 3, 6.235)普通字符普通字符格式说明符格式说明符转义字符转义字符3)转义字符)转义字符 2022-3-17 Program Design in C LanguagePage用于输出的格式字符用于输出的格式字符3.3.1 3.3.1 格式输出:格式输出:printf( )printf( )函数和函数和scanf( )scanf( )函数函数格式字符格式字符功功 能能d, i以十进制有符号形式输出整数以十进制有符号形式输出整数o以八进制无符号形式输出整数以八进制无符号形式输出整数x, X以十六进制无符号形式输出整数以十六进制无符号形式输出
8、整数u以十进制无符号形式输出整数以十进制无符号形式输出整数f以小数形式输出单、双精度实数以小数形式输出单、双精度实数e, E以指数形式输出单、双精度实数以指数形式输出单、双精度实数g, G以以%f%f或或%e%e中较短的输出宽度输出单、双精度实数中较短的输出宽度输出单、双精度实数c以字符形式输出单个字符以字符形式输出单个字符s输出字符串输出字符串2022-3-18 Program Design in C LanguagePage用于输出的修饰符用于输出的修饰符3.3.1 3.3.1 格式输出:格式输出:printf( )printf( )函数和函数和scanf( )scanf( )函数函数修饰
9、符修饰符意意 义义l, L用于长整型数据的输出,可加在格式字符用于长整型数据的输出,可加在格式字符d d、i i、o o、x x、u u前面。前面。m(正整数)(正整数) 数据最小宽度。数据最小宽度。.n(正整数)(正整数)对于实数,表示输出对于实数,表示输出n n位小数;位小数;对于字符串,表示从左侧截取的字符个数。对于字符串,表示从左侧截取的字符个数。-结果左对齐,右边填空格。结果左对齐,右边填空格。2022-3-19 Program Design in C LanguagePage(1) d格式字符格式字符d:按整型数据的实际长度输出:按整型数据的实际长度输出md:m为指定的输出宽度。如
10、果数据实际宽度为指定的输出宽度。如果数据实际宽度小于小于m,则左端补空格;如果数据实际宽度大于,则左端补空格;如果数据实际宽度大于m,则按实际宽度输出。如果是,则按实际宽度输出。如果是-md的形式,则的形式,则在数据的右边补空格。在数据的右边补空格。例:例:int a=12,b=34567,c=89; printf(%4d,%4d,%-4d, a, b, c);则输出则输出ld:输出长整型数据:输出长整型数据3.3.1 3.3.1 格式输出:格式输出:printf( )printf( )函数和函数和scanf( )scanf( )函数函数 12,34567,892022-3-110 Progr
11、am Design in C LanguagePage(2) c格式字符格式字符 整数值如果在整数值如果在0255之间,也可按照字符形式输出;同样,之间,也可按照字符形式输出;同样,字符也可以按照整数形式输出。字符也可以按照整数形式输出。例:例:char c1=a, c2=142; printf(%ct%cn,c1,c2); 用来输出一个字符。用来输出一个字符。int a=65;printf (%c,a); char c=A;printf (%d,c); 输出输出A输出输出65例:例:printf(%3c, A); 则输出则输出c格式字符也可以指定输出宽度格式字符也可以指定输出宽度 A3.3.
12、1 3.3.1 格式输出:格式输出:printf( )printf( )函数和函数和scanf( )scanf( )函数函数2022-3-111 Program Design in C LanguagePage(3) s格式字符格式字符s:用来输出一个字符串:用来输出一个字符串例:例:printf(%s, Hello!); 输出输出 Hello!ms:输出的字符串占:输出的字符串占m列。如果字符串实际长度小于列。如果字符串实际长度小于m,则左端补以空格;实际长度大于则左端补以空格;实际长度大于m,则输出整个字符串。,则输出整个字符串。-ms:如果串长小于:如果串长小于m,则字符串左对齐,右边补
13、空格。,则字符串左对齐,右边补空格。m.ns:输出的字符串占:输出的字符串占m列,但只取字符串中左端列,但只取字符串中左端n个字符。个字符。-m.ns:其他意义同:其他意义同m.ns,右边补空格。,右边补空格。3.3.1 3.3.1 格式输出:格式输出:printf( )printf( )函数和函数和scanf( )scanf( )函数函数例:例:printf(%3s, Hello!); 输出输出 Hello! printf(%7s, Hello!); 输出输出 Hello!例:例:printf(%4.3s, Hello!); 输出输出 Hel2022-3-112 Program Design
14、 in C LanguagePage(4) f格式字符格式字符f:不指定输出宽度,整数部分全部输出,小数:不指定输出宽度,整数部分全部输出,小数部分输出部分输出6位。位。m.nf:输出数据占:输出数据占m列,保留列,保留n位小数。若实际位小数。若实际宽度小于宽度小于m,则左端补空格。,则左端补空格。-m.nf:功能同上,右端补空格。:功能同上,右端补空格。(5) e格式字符格式字符e:不指定输出宽度,尾数默认保留:不指定输出宽度,尾数默认保留6位小数。指位小数。指数部分占数部分占5位,其中位,其中“e”占占1位,指数符号占位,指数符号占1位,位,指数值占指数值占3位。位。3.3.1 3.3.1
15、 格式输出:格式输出:printf( )printf( )函数和函数和scanf( )scanf( )函数函数2022-3-113 Program Design in C LanguagePage例:例:printf(%e, 123.456);输出:输出:1.234560e+0026 6位小数部分位小数部分5 5位指数部分位指数部分m.ne, -m.ne, me :m、n、-的意义和前相同。的意义和前相同。3.3.1 3.3.1 格式输出:格式输出:printf( )printf( )函数和函数和scanf( )scanf( )函数函数2022-3-114 Program Design in
16、C LanguagePage#include void main() int a=1234; double f1=12.34567, f2=678.9; printf(1) %d,%6d,%-6d,%2dn,a,a,a,a); printf(2) %f,%10.4f,%3.2fn,f1,f1,f1); printf(3) %e,%en,f1,f2); printf(4) %8e,%15en,f1,f1); printf(5) %10.7e,%11.3en,f1,f1);实例:实例:程序运行结果:程序运行结果:1) 1234, 1234,1234 ,12342) 12.345670, 12.34
17、57,12.353) 1.234567e+001,6.789000e+0024) 1.234567e+001, 1.234567e+0015) 1.2345670e+001, 1.235e+0012022-3-115 Program Design in C LanguagePage2. 格式输入:格式输入:scanf( )函数函数 功能:按格式控制字符串规定的格式,从指定的输入设备功能:按格式控制字符串规定的格式,从指定的输入设备读入数据,并存放到地址表读入数据,并存放到地址表列中各地址项指定的变量中。列中各地址项指定的变量中。一般形式:一般形式:scanf(“格式控制字符串格式控制字符串”,
18、 地址表列地址表列);格式控制字符串格式控制字符串:可以包含两种字符。可以包含两种字符。1)普通字符:按原样输入的字符。)普通字符:按原样输入的字符。 2)格式说明符:用来指定输入数据的格式,其形式为:)格式说明符:用来指定输入数据的格式,其形式为: %修饰符修饰符格式字符格式字符3.3.1 3.3.1 格式输出:格式输出:printf( )printf( )函数和函数和scanf( )scanf( )函数函数地址表列地址表列:由若干个变量地址组成的表列,相邻两个变由若干个变量地址组成的表列,相邻两个变量地址之间用逗号分隔。变量地址的一般形式为:量地址之间用逗号分隔。变量地址的一般形式为: &
19、amp;变量名变量名“”是取地址运算符,单目运算符,右结合性。是取地址运算符,单目运算符,右结合性。举例:举例:int a, b; scanf(%d,%d, &a, &b);2022-3-116 Program Design in C LanguagePage3.3.1 3.3.1 格式输出:格式输出:printf( )printf( )函数和函数和scanf( )scanf( )函数函数用于输入的格式字符用于输入的格式字符格式字符格式字符功功 能能d, i以十进制形式输入有符号整数以十进制形式输入有符号整数o以八进制形式输入无符号整数以八进制形式输入无符号整数x, X以十六进
20、制形式输入无符号整数以十六进制形式输入无符号整数u以十进制形式输入无符号整数以十进制形式输入无符号整数f输入实数,可以用小数形式或指数形式输入输入实数,可以用小数形式或指数形式输入e, E, g, G同同f f,它们之间可以互换,它们之间可以互换c输入单个字符输入单个字符s输入字符串输入字符串2022-3-117 Program Design in C LanguagePage3.3.1 3.3.1 格式输出:格式输出:printf( )printf( )函数和函数和scanf( )scanf( )函数函数用于输入的修饰符用于输入的修饰符修饰符修饰符意意 义义l用于输入长整型和双精度实型数据,
21、可加在格用于输入长整型和双精度实型数据,可加在格式字符式字符d d、i i、o o、x x、u u、f f、e e、g g前面。前面。h用于输入短整型数据,可加在格式字符用于输入短整型数据,可加在格式字符d d、i i、o o、x x、u u前面。前面。m(正整数)(正整数) 指定输入数据所占的宽度。指定输入数据所占的宽度。*表示该输入项读入后不赋给任何变量,即跳过表示该输入项读入后不赋给任何变量,即跳过该输入值。该输入值。2022-3-118 Program Design in C LanguagePage格式输入的注意事项:格式输入的注意事项:输入数据时采用的分隔符应与格式控制字符串中指输
22、入数据时采用的分隔符应与格式控制字符串中指定的分隔符一致。定的分隔符一致。 例例: : scanf(%d,%f,%d, &a, &b, &c); 必须采用输入格式:必须采用输入格式:12,3.45,678 格式控制字符串中未指定分隔符时,可用空格、格式控制字符串中未指定分隔符时,可用空格、TabTab键、回车键作分隔符。键、回车键作分隔符。 例例: : scanf(%d%f%d, &a, &b, &c); 可采用输入格式:可采用输入格式:12 3.45 678 或:或:12(tab)3.45(tab)678 或或 :12 3.45 678 3.3
23、.1 3.3.1 格式输出:格式输出:printf( )printf( )函数和函数和scanf( )scanf( )函数函数2022-3-119 Program Design in C LanguagePage格式控制字符串中出现的普通字符(包括转义字符)格式控制字符串中出现的普通字符(包括转义字符)必须原样输入。必须原样输入。 例例: : scanf(a=%d,b=%f,c=%d, &a, &b, &c); 必须采用输入格式:必须采用输入格式: a=12,b=3.45,c=678 思考:思考:scanf(a=%d,b=%f,c=%dn, &a, &b
24、, &c); 应采用什么样的输入格式?应采用什么样的输入格式?格式说明符带有格式说明符带有“* *”表示读入数据但不赋值。表示读入数据但不赋值。 例:例: scanf(%d%*f%f, &a, &b, &c); 输入输入: 12 3.45 678 则则 :a=12,b=678.000000,c未赋值未赋值3.3.1 3.3.1 格式输出:格式输出:printf( )printf( )函数和函数和scanf( )scanf( )函数函数2022-3-120 Program Design in C LanguagePage数据输入时不可规定精度,但可确定宽度。数据输
25、入时不可规定精度,但可确定宽度。 例:例:scanf(%1d%*d%3f%*d%2d, &a, &b, &c); 输入输入: 12 3.45 678 则则 :a=1,b=3.4,c=67 例:例:scanf(%3.1f, &b); 非法非法用用c c格式字符输入时,空格、回车、转义字符均为格式字符输入时,空格、回车、转义字符均为有效字符。有效字符。 例:例:scanf(%c%c%c, &c1, &c2, &c3); 输入:输入:ABC 则:则: c1=A,c2=B,c3=C 输入:输入:A B C 则:则: c1=A,c2= ,c3=B
26、输入:输入:A B 则:则: c1=A,c2= ,c3=B 输入:输入:AnB 则:则: c1=A,c2=,c3=n3.3.1 3.3.1 格式输出:格式输出:printf( )printf( )函数和函数和scanf( )scanf( )函数函数2022-3-121 Program Design in C LanguagePage在下列情况下系统认为某数据输入结束。在下列情况下系统认为某数据输入结束。遇到空格、回车或遇到空格、回车或TabTab键键遇到非法输入遇到非法输入遇到输入域宽度结束遇到输入域宽度结束3.3.1 3.3.1 格式输出:格式输出:printf( )printf( )函数和
27、函数和scanf( )scanf( )函数函数2022-3-122 Program Design in C LanguagePagevoid main( ) int a; float b ; char c ; printf(按格式按格式%d%f%c送数送数n); scanf(%d%f%c, &a, &b, &c); printf(a=%d, b=%.1f, c=%cn,a, b, c); printf(按格式按格式%d,%f,%c送数送数n); scanf(%d,%f,%c, &a, &b, &c); printf(a=%d, b=%.1f, c
28、=%cn,a, b, c); printf(按格式按格式%2d%3f%c送数送数n); scanf(%2d%3f%c, &a, &b, &c); printf(a=%d, b=%.1f, c=%cn,a, b, c);程序运行结果:程序运行结果:按格式按格式%d%f%c送数送数23 4.5p a=23, b=4.5, c=p按格式按格式%d,%f,%c送数送数23,4.5,p a=23, b=4.5, c=p按格式按格式%2d%3f%c送数送数234.5p a=23, b=4.5, c=p程序实例程序实例1 1:2022-3-123 Program Design in C LanguagePagevoid main( ) char a, b, c, d, e ; scanf(%c%c%c, &a, &b, &c); scanf(%3c%3c, &d, &e); printf(%c, %c, %cn, a, b, c); printf(%c, %cn, d, e); printf(Output Endn); 程序实例程序实例2:程序运行结果程序运行结果:1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026南京大学现代工程与应用科学学院科研人员招聘考试参考题库及答案详解
- 2026内蒙古绿能实业发展有限公司更正背景调查要求及入职材料提交考试备考题库及答案详解
- 2026上林县澄泰乡初级中学秋季学期顶岗实习教师招聘9人考试备考题库及答案详解
- 2026榆树市消防救援大队补充招聘合同制消防员13人考试备考题库及答案详解
- 会东县2026年社会工作服务岗位招募的(5人)考试备考题库及答案详解
- 2026上海海洋大学实验技术岗位公开招聘考试备考试题及答案详解
- 2026年烟台职业学院第二批公开招聘高层次、高技能人才(25人)考试模拟试题及答案详解
- 2026山东师大基础教育集团专业技术(数智学习研发)人员招聘3人考试备考题库及答案详解
- 2026聊城高新人力资源有限公司中学(8月第二批)储备教师招聘考试备考题库及答案详解
- 2026万宁市面向社会公开招聘医疗卫生技术人才29人考试备考试题及答案详解
- 2026年8月成都市建筑科学研究院有限公司招聘检测辅助岗笔试备考题库及答案详解
- 2026 高考化学试题评析及教学启示河南卷
- 烟囱加固专项施工方案(3篇)
- 单像素水下成像技术应用研究
- 康复知识培训课件
- 软件造价师试题及答案解析
- 人教部编版五年级语文上册课文原文
- 2025年中国医药工业经济运行报告
- 中国中医科学院西苑医院招聘笔试真题2023
- 2024用电信息采集系统技术规范第1部分:专变采集终端
- GB/T 5270-2024金属基体上的金属覆盖层电沉积和化学沉积层附着强度试验方法评述
评论
0/150
提交评论