版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
最简单的c程序设计――顺序程序设计-第第页最简单的c程序设计――顺序程序设计-全文共8页,当前为第1页。最简单的c程序设计――顺序程序设计最简单的c程序设计――顺序程序设计-全文共8页,当前为第1页。1、C程序设计:第四章最简洁的C程序设计――顺序程序设计第四章最简洁的C程序设计――顺序程序设计4.1C语句概述一个C程序应由两部分组成,即数据描述和数据操作。数据描述:用来定义数据结构和预置数据初值,由声明部分实现。如:inta=3;数据操作:对已提供的数据进行加工,由语句来实现。所以,语句是C程序的主体。C语句可以分为5大类。4.1.1程序掌握语句if()~else~for()~while()~do~while()continuebreakswitchgotoreturn其中:〔〕表示一个条件。~表示内嵌的语句。如:if(xy)z=x;elsez=y;4.1.2函数
2、调用语句由函数加上一个分号构成。如:printf(“hellow”);4.1.3表达式语句表达式加上一个分号即可组成一个表达式语句。如:i=1;x=sin(y);等。4.1.4空语句一个分号就是一个空语句,表示什么都不做。4.1.5复合语句用{}括起的一个语句序列。如:{z=x+y;t=z/100;printf(“%f”,t);}4.1.6赋值语句1、构成:赋值语句由赋值表达式加上一个分号构成。如a=b;。2、说明1〕C语言中的赋值号是一个运算符,这是与其它高级语言相区分的。2〕赋值表达式作为表达式可以出如今其它任何表达式中,而作为语句则不能。如:if〔〔a=b〕0
3、〕t=a;,表示先将b赋给a,且假如a0则将a赋给t。但:if〔〔a=b;〕0〕t=a;,则是错误的。4.2数据输入输出的概念及在C中的应用4.2.1数据输入输出的概念1、输入:相对于计算机主机而最简单的c程序设计――顺序程序设计-全文共8页,当前为第2页。言,从外设读入数据。如:键盘、磁盘、光盘等。2、输出:相对于计算机主机而言,向外设输出数据。如:显示器、磁盘、打印机。4.2.2数据输入输出的实现1、C本身并不提供输入输出语句,输入输出操作是由函数来实现的。函数已编译成OBJ文件以库的形式存放在系统中,在源程序编译后由连接程序将它和库进行连接生成可执行文件。2、在使用输入输出函数之前,在程序的开头应加上包含了与标准I/O库
4、有关的变量定义和宏定义的头文件。格式为:#include“stdio.h”或#includestdio.h但标准的输入输出操作scanf和printf由于使用频繁,可以不加#include指令。4.3字符数据的输入输出4.3.1单个字符的输出1、格式putchar〔字符型数据〕;2、功能向标准输出设备输出一个字符。3、说明1〕也可以输出整型数据,此时,该数据作为字符的ASCII码值。2〕该函数使用前需用#include“stdio.h”或#includestdio.h。例1:#includestdio.hmain(){charc;/*定义字符变量*/c=B;/*给字
5、符变量赋值*/putchar(c);/*输出该字符*/putchar(x42);/*输出字母B*/putchar(0x42);/*直接用ASCII码值输出字母B*/}4.3.2单个字符的输入1、格式getchar〔〕;2、功能等待从键盘上读入字符,直到按回车结束,回车前的全部输入字符都会逐个显示在屏幕上,但只有第一个字符作为函数的返回值。3、说明1〕该函数的返回值可以赋给整型或字符型变量,也可作为表达式的一部分。如:putchar〔getchar〔〕〕;2〕该函数使用前需用最简单的c程序设计――顺序程序设计-全文共8页,当前为第3页。#include“stdio.h”或#includestdio.h。例2:#includes
6、tdio.hmain(){charc;c=getchar();/*从键盘读入字符直到回车结束*/putchar(c);/*显示输入的第一个字符*/}4.4格式输入与输出TurboC2.0标准库提供了两个掌握台格式化输入、输出函数printf()和scanf(),这两个函数可以在标准输入输出设备上以各种不同的格式读写数据。printf()函数用来向标准输出设备(屏幕)写数据;scanf()函数用来从标准输入设备(键盘)上读数据。下面具体介绍这两个函数的用法。4.4.1格式输出函数1、格式printf(格式掌握,输出表列);其中:格式掌握包括两部分内容:一部分是正常字符
7、,这些字符将按原样输出;另一部分是格式化掌握字符,以%开始,后跟一个或几个规定字符,用来确定输出内容格式。输出表列是需要输出的一系列参数,其参数必需与格式化字符串所说明的输出参数个数一样多,各参数之间用,分开,且顺序一一对应,否则将会出现错误。2、功能以指定的格式向显示器输出“输出表列”的内容,“输出表列”可以是任意类型的数据。3、商量1〕格式化掌握符TurboC2.0提供的格式化规定符如下:━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━符号作用────────────────────────────────────%d,%i带符号十进制形
8、式输出整数〔正号不输出〕%u无符号十进制形式输出整数%f最简单的c程序设计――顺序程序设计-全文共8页,当前为第4页。小数形式输出单、双精度数,隐含6位小数%s输出字符串%c输出单个字符%e,%E指数形式输出单、双精度数,隐含6位小数%x,%X无符号十六进制形式输出整数〔不输出前导符“0”〕%x:小写输出a-f;%X:大写输出A-F%o无符号八进制形式输出整数〔不输出前导符“0”〕%g,%G选择%f、%e中输出宽度较短的格式,不输出无意义的“0”用%G时,若以指数形式输出,则指数大写表示━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━2〕特别规定字符━━━━━━━━━━━━━━━━━━━━━━━━━━字
9、符作用──────────────────────────n换行f清屏并换页r回车tTab符ddd八进制表示的ASCII码xhh十六进制表示的ASCII码━━━━━━━━━━━━━━━━━━━━━━━━━━3〕说明在%和字母之间可以插进数字表示最大场宽。例如:%3d――表示输出3位整型数,不够3位右对齐。%9.2f――表示输出9位实数,其中小数2位,整数6位,小数点1位,不够9位右对齐。%8s――表示输出8个字符的字符串,不够8个字符右对齐。假如字符串的长度、或整型数位数超过说明的场宽,将按其实际长度输出。但对实数,若整数部分位数超过了说明的整数位宽度,
10、将按实际整数位输出;若小数部分位数超过了说明的小数位宽度,则按说明的宽度以四舍五入输出。另外,若想在输出值前加一些最简单的c程序设计――顺序程序设计-全文共8页,当前为第5页。0,就应在场宽项前加一个0。例如:%04d表示在输出一个小于4位的数值时,将在前面补0使其总宽度为4位。假如用实数表示字符或整型量的输出格式,小数点后的数字代表最大宽度,小数点前的数字代表最小宽度。例如:%6.9s表示显示一个长度不小于6且不大于9的字符串。若大于9,则第9个字符以后的内容将被删除。可以在%和字母之间加小写字母l,表示输出的是长型数。例如:%ld――表示输出long整数%lf――表示输出double实数输出默认为右对齐,但假如在%和字母之
11、间加入一个-号则输出为左对齐。例如:%-7d――表示输出7位整数左对齐%-10s――表示输出10个字符左对齐4、例子#includestdio.h#includestring.hintmain(){charc,s[]=Hello,Comrade;inta=1234;floatf=3.141592653589;doublex=0.12345678987654321;c=x41;printf(a=%dn,a);/*结果输出十进制整数a=1234*/printf(a=%6dn,a);/*结果输出6位十进制数a=1234*/printf(a=%06dn,a);/*结
12、果输出6位十进制数a=001234*/printf(a=%2dn,a);/*a超过2位,按实际值输出a=1234*/printf(*i=%4dn,*i);/*输出4位十进制整数*i=12*/printf(f=%fn,f);/*输出浮点数f=3.141593*/printf(f=6.4fn,f);/*输出6位其中小数点后4位的浮点数f=3.1416*/printf(x=%lfn,x);/*输出长浮点数x=0.123457*/printf(x=%18.16lfn,x);/*输出18位其中小数点后16位的长数x=0.1234567898765432*/prin
最简单的c程序设计――顺序程序设计-全文共8页,当前为第6页。13、tf(c=%cn,c);/*输出字符c=A*/printf(c=%xn,c);/*输出字符的ASCII码值c=41*/printf(s[]=%sn,s);/*输出数组字符串s[]=Hello,Comrade*/printf(s[]=%6.9sn,s);/*输出最多9个字符的字符串s[]=Hello,Co*/}4.4.2格式输入函数1、格式scanf(格式掌握,地址表);其中:格式掌握包括三部分内容:一部分是格式化掌握字符,以%开始,与printf()的用法基本相同;第二部分是“空格”,其作用是在读操作时略去输入数据中的一个或多个空格字符;第三部分是非空格字符
14、,其作用是在读操作时剔除与该字符相同的字符。输出表列是需要输出的一系列参数,其参数必需与格式化字符串所说明的输出参数个数一样多,各参数之间用,分开,且顺序一一对应,否则将会出现错误。地址表是需要读入的全部变量的地址,而不是变量本身。这与printf()函数完全不同,要特殊留意。各个变量的地址之间同,分开。2、功能以指定的格式从键盘读入数据,并顺序存放到“地址表”指定的存储单元中,并剔除掉“格式掌握”中指定的字符。例:main(){inti,j;printf(i,j=?n);scanf(%d,%d,i,j);}上例中的scanf()函数先读一个整型数,然后把接着输入
15、的逗号剔除掉,最终读入另一个整型数。假如,这一特定字符没有找到,scanf()函数就终止。若参数之间的分隔符为空格,则参数之间必需输入一个或多个空格。3、商量1〕对于字符串数组或字符串指针变量,由于数组名和指针变量名本身就是地址,因此使用scanf()函数时,不需要在它们前面加上操作符。最简单的c程序设计――顺序程序设计-全文共8页,当前为第7页。mian(){char*p,str[20];scanf(%s,p);/*从健盘输入字符串*/scanf(%s,str);printf(%sn,p);/*向屏幕输出字符串*/printf(%sn,str);}2〕可以在格式化掌握字符中的%和规定字符之间加一个整数,表示读操作中数的最
16、大位数。如:scanf(%10s,p);,程序运行时一旦输入字符个数大于10,p就不再继续读入,而后面的一个输入函数即scanf(%s,str)就会从第11个字符开始读入。3〕在用“%c”输入字符时,空格字符和转义字符都作为有效字符。4〕数据输入的结束标志是回车键,但遇到以下符号也视为输入结束,即该符号后的数据无效,但整个输入过程仍是按下回车键结束。空格键Tab键非法输入超过指定的数据宽度4.5顺序结构程序设计举例例1:输入三角形的条边长,求三角形的面积。#include“math.h”main(){floata,b,c,s,aera;scanf(“%f,%f,%f
17、”,a,b,c);s=1.0/2*(a+b+c);aera=sprt(s*(s-a)*(s-b)*(s-c));printf(“a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2f,aera=%7.2fn”,a,b,c,s,aera);}例2:求方程ax2+bx+c=0的根,a,b,c的值由键盘上输入,设b2-4ac0。#include”math.h”main(){floata,b,c,disc,x1,x2,p,q;scanf(“a=%f,b=%f,c=%f”,a,b,c);disc=b*b-4*a*c;p=-b/(2*a);q=sqrt(disc)/(
18、2*a);x1=p+q;x2=p-q;最简单的c程序设
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 温州市中医院项目管理基础理论与方法试题
- 连云港市中医院言语治疗师执业资格认证
- 合肥市中医院常规脑电图操作规范考核
- 景德镇市中医院酶联免疫技术专项考核
- 宜春市中医院血液寄生虫识别与鉴定技能考核
- 舟山市人民医院破伤风预防规范考核
- 扬州市中医院遗传性神经病诊断考核
- 厦门市人民医院血型鉴定技术考核
- 赣州市中医院血管外科疼痛管理考核
- 萍乡市人民医院单倍体移植技术管理考核
- 脓毒血症患者的护理业务学习
- 2022危险性较大的分部分项工程专项施工方案编制与管理指南
- 水泥厂产品召回流程制度
- 湘美版(2024)一年级上册美术全册教案
- 2024-2025中国滑雪产业白皮书
- 消防排烟系统安装施工方案
- 鸿蒙教学课程课件
- 2025年航空光电吊舱行业当前发展趋势与投资机遇洞察报告
- 第2课《中国人首次进入自己的空间站》教学设计统编版八年级语文上册
- 2025年变电运行工值班员测试试题含答案
- 2024年衢州职业技术学院单招《语文》能力检测试卷附参考答案详解【基础题】
评论
0/150
提交评论