第3章顺序结构程序设计_第1页
第3章顺序结构程序设计_第2页
第3章顺序结构程序设计_第3页
第3章顺序结构程序设计_第4页
第3章顺序结构程序设计_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

04二月20231第3章顺序结构程序设计教学要求:

掌握表达式语句的格式,理解表达式与表达式语句的区别;掌握格式输入/输出函数和字符输入/输出函数的使用方法。教学内容:

3.1程序设计的基本概念

3.2C语言语句

3.3格式化输入/输出函数

3.4字符输入/输出函数

3.5程序设计举例04二月20232

程序:就是一系列遵循一定规则和思想并能正确完成指定工作的代码序列。描述问题的对象及其之间的关系描述这些对象进行处理的规则数据结构算法程序

程序设计:是根据计算机要完成的任务,提出相应的需求,设计程序对象的数据结构和处理算法,编写相应的程序代码并测试代码的正确性,通过运行得到合理的结果的过程。3.1程序设计的基本概念04二月20233程序设计从两方面进行数据结构设计对象操作设计声明变量数据类型、完成数据初始化完成操作代码,实现对数据加工和流程控制例如:对任意的两个整数进行求余运算并输出其结果首先声明两个变量:a和b;并完成对a和b的赋值。其次完成a和b的加工处理:a%b并输出结果。程序设计要求:结构清晰、存储空间小、执行速度快。3.1程序设计的基本概念04二月20234

算法:是为完成一项任务所应遵循的一步一步的、规则的、精确的、无歧义的描述,它的总步数是有限的。

算法特点:有穷性;确定性;有零个或多个输入;有一个或多个输出;有效性。算法的描述:自然语言;流程图;N-S图;伪代码等判断开始结束处理流线输入/输出3.1程序设计的基本概念04二月202353.2C语言的基本语句C语言程序的基本组成单位是函数,而函数是由语句构成的,语句分数据设计语句;语句分操作设计语句。在C中共有以下五类语句。C语言的语句表达式语句函数调用语句控制语句复合语句空语句表达式加分号“;”组成。如:i++;函数名(实际参数);构成。条件判断、循环执行、转向语句。多条语句用{}括起来,构成新语句。只有一个;组成的语句。04二月202363.3格式化输出/输入函数 C语言没有专门的输入/输出语句,实现输入/输出通过调用C语言输入/输出库函数,调用输入/输出库函数,必须用包含命令将其头文件stdio.h包含到用户程序中。3.3.1格式化输出函数printf()格式:printf("格式字符串",输出列表);1.格式字符串:由格式说明符、普通字符和转义字符构成。2.输出列表:若干输出项构成,输出项间用逗号隔开。如:printf("i=%d,j=%d,m=%d,n=%d\n",i,j,m,n);04二月20237#include<stdio.h>intmain(){inti,j,m,n;i=5;j=15;m=i++;n=++j;printf("i=%d,j=%d,m=%d,n=%d\n",i,j,m,n);return0;}【例题3.1】阅读下列程序,认识格式输出函数的用法,写结果格式控制字符串输出列表项

练习:要求编写输出a=12,b=12.3456,ch=‘a’的程序。04二月20238格式说明

格式说明由“%”与不同的格式字符组成,用来说明各输出项的数据类型、长度和小数点位数。常用的几种格式符如下:※%d:按十进制数形式输出。※

%o:按八进制数形式输出。※

%u:按十进制数形式输出无符号型数据。※

%c:输出一个字符。※

%s:输出一个字符串。※

%f:按实型数据输出且有6位的小数点。※

%e:按实型数据输出且按指数形式※

%g:按实型数据输出由系统自动选择f格式或e格式。04二月202393.3.2格式输入函数scanf#include<stdio.h>intmain(){ inta,b,c; floataver; printf("请输入三个数a,b,c:"); scanf("%d%d%d",&a,&b,&c); aver=(a+b+c)/3; printf("aver=%f\n",aver); return0;}阅读下列程序,认识scanf()函数的用法格式控制字符串(注意表示形式)输入地址列表04二月202310格式:scanf("格式控制字符串",输入地址列表);格式控制字符串形式:%[*][输入数据宽度][长度]类型※

类型:输入数据的类型,同printf的类型一致。※

*:表示输入项,输入后不赋给相应的变量跳过输入值※

输入数据宽度:用十进制整数指定输入宽度即字符数如:scanf("%4d%4d",&a,&b);

输入:12345678↙则执行后a=1234b=5678※长度:长度格式符用l和h表示。如:%ld表示输入长整型;%lf表示双精度浮点型。输入地址:由地址运算符&和变量名组成。04二月202311输入数据格式与输入方法1.相邻两个格式符间没指出分隔符,则输入数据时用空格或回车(除%c外)。2.格式字符串中出现普通字符,输入时原样输入。3.实型数据输入时不能规定其精度。4.使用格式符%c时,输入空格或回车符都被接收5.整型、实型和字符型数据混合输入,要注意输入格式如:scanf("%d%f%c",&a,&b,&c);scanf("a=%d,b=%f,c=%c",&a,&b,&c);scanf("%d%c%f",&a,&b,&c);1223aa=12,b=23,c=a12a2342014.9.2413建筑本3-404二月202312使用scanf()函数注意的几个问题※输入时不能规定精度。如:scanf("%7.3f",&a);※要求给出地址不能是变量名。如:scanf("%f",a);※输入多个数据时要注意间隔符的运用。如:scanf("%d%d%d",&a,&b,&c);则间隔符为空格如:scanf(“%d,%d,%d”,&a,&b,&c);则间隔符为逗号如:scanf(“%d;%d;%d”,&a,&b,&c);则间隔符为分号※

使用%s格式符时,读入字符串,若输入字符串有空格或Tab键,只将其前的字符读入,之后的字符串并不读入。※

不能使用%u。04二月202313【例题3.3】阅读程序,按规定格式输入,分析程序结果#include"stdio.h"intmain(){ inti,j; floatf1,f2; charch1,ch2; printf("请输入i,f1,ch1,ch2的值:\n"); scanf("%d%f%c%c",&i,&f1,&ch1,&ch2); j=i++; f2=++f1; printf("i=%d;j=%d\n",i,j); printf("f1=%3.3f;f2=%4.2f\n",f1,f2); printf("ch1=%c;ch2=%c\n",ch1,ch2); return0;}第1个同学输入:18□26.9□B□b回车第2个同学输入:18 26.9Bb第3个同学输入:18 26.9Bb04二月2023143.4字符输入/输出函数【例题3.4.1】通过键盘输入一个小写字母,输出该字母的大写。分析:输入可采用格式输入函数scanf()实现,输出可采用格式输出函数printf()实现,使用格式符%c。小写字母与大写字母的ASCII码值相差32。思考:不用格式输入/输出函数能不能完成?能,用C语言提供的另一类函数即字符输入/输出函数。04二月2023151.字符输出函数putchar()格式:putchar(ch)函数功能:向标准输出设备输出一个字符。其中,ch可以是一个字符常量或变量,也可以是一个整型常量或变量。说明:ch是字符常量或变量,输出的是ch的值;ch是整型常量或变量,输出的是ch的ASCII字符。inta=98;charch='a';putchar(ch);putchar('\n');putchar(a);输出结果:a输出结果:换行输出结果:b04二月2023162.字符输入函数getchar()格式:getchar()函数功能:从输入设备(通常是键盘)上输入一个字符,函数返回值是该字符的ASCII码值,函数返回值可以赋值给一个字符型变量,也可赋给一个整型变量。说明:输入字符后以回车确认;若只输入回车符则将其读入。charch;ch=getchae();功能:等待用户从键盘输入一字符赋给ch04二月202317【例题3.4】编写程序输出以下格式的数据形式。要求对i,j,a,b采用格式输入/输出函数实现输入/输出;对ch1,ch2采用字符函数实现输入/输出。 a=10.23;b=2.781 i=12;j=48 ch1=A,ch2=a算法分析:按要求在程序中定义实型变量a,b并按格式符%f实现输入,但在输出时要控制输出小数位数;在程序中定义整型变量i,j并按格式符%d实现输入/输出;在程序中定义字符变量ch1,ch2用字符函数实现输入,但在输出时用多条字符输出函数实现。

程序代码:04二月2023183.5程序设计举例【例题3.5】编写程序:输入任意的3个数,求它们的和及平均数。算法分析:定义3个实型数据num1,num2,num3,采用格式输入函数scanf()输入3变量的值(注意输入格式)。定义一个存放和的实型数据sum和存放平均数的实型数据average。利用数学的求和公式、求平均数公式求出(注意数学表达式与C语言表达式书写上的区别)。采用格式输出函数进行输出。

程序代码:04二月202319

【例题3.6】编写程序:输入矩形的长、宽,输出矩形的周长和面积。算法分析:定义实型变量long、wide、girth、area分别表示长、宽、周长和面积。调用输入函数,输入long、wide。利用数学周长公式、面积公式求出girth、area。调用输出函数输出周长和面积。

程序代码:04二月202320【例题3.7】编写程序,从键盘输入一个三位整数,逆序输出。算法分析:定义一个整型数据num,调用输入函数,输入一个三位整数。如果能将这三位数的个位、十位、百位拆分开来,则可用数学公式重组一个新的三位数。调用输出函数,输出新的三位数。拆分三位数的方法可用C语言提供求余运算和整除运算来实现。具体过程是:百位数=num/100;十位数=num/10%10;个位数=num%10。要体会程序中输出项是表达式的用法。

程序代码:62014.9.2813建筑本3-404二月202321【例题3.8】编写程序:求方程ax2+bx+c=0的实根。算法分析:定义三个实型数据a、b、c,调用输入函数分别输入a、b、c的值。定义方程的两个根x1、x2和判别式dise,本题要求输入数据满足a≠0且b2-4ac>0。按数学方法求解方程的根并输出。要注意数学求方程根的表达式要符合C语言表达式的要求,C语言求平方根是通过调用平方根函数sqrt()完成,而平方根函数sqrt()的声明放在头文件math.h中。

程序代码:52014.9.2813建筑本3-404二月202322【例题3.9】编写程序,从键盘输入两个整数给变量a和b,然后交换a和b的值,再输出a和b。算法分析:交换两变量的值的方法有两种。第一种是通过第三变量来实现,其过程是先将a的值保存到c变量中,再将b变量赋给a即此时a就是b的值,最后c变量的值赋给b变量即此

温馨提示

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

评论

0/150

提交评论