资源描述:
《基本结构程序设计主要内容C语言的基本语句程序.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第3章基本结构程序设计主要内容:C语言的基本语句、程序的基本结构。3.1基本程序结构和结构化程序设计科学家沃思(NikiklausWirth)提出一个公式:数据结构+算法=程序数据结构:指对数据(操作对象)的描述。算法:指对操作步骤的描述。编写程序的本质:对哪些数据进行什么样的一系列加工就可以达到目标。3.1.1算法1.算法:是解决问题的一系列操作步骤的集合。例3.1求解一元二次方程ax2+bx+c=0(a≠0)的两个根。s1:输入数据a,b,cs2:求根x1,x2s3:输出结果可以将求解算法(s2)进行细化设计如下:s2_1:输入数据a,b,cs2_2:求判别式d的值,d=
2、b*b-4*a*cs2_3:判断:如果d>=0,则按实根求法计算:x1=(-b+sqrt(d))/(2*a)x2=(-b-sqrt(d))/(2*a)否则,按复根求法计算:实部r=-b/(2*a)虚部p=±sqrt(-d)/(2*a)例3.2依次读入30个学生成绩,输出平均成绩及最高成绩具体算法描述:s1:0=>Is2:0=>sum,0=>maxs3:读入一个学生成绩存入scores4:I+1=>Is5;sum+score=>sums6:如果score大于max,则score=>maxs7:如果I小于30,转移至s3s8:sum/30=>averages9:打印average
3、,maxs3,s4,s5,s6,s7这些步骤会被重复执行30次,变量I用于统计已处理的学生人数当I值小于30时,流程转至s3读下一个学生成绩当I值等于30时,所有学生成绩处理完毕,到s8,s9输出结果。3.算法的特性算法是解决问题逻辑思路的表述。同一个问题有不同的解题方法和步骤,设计出不同的算法。正确的算法应该具备以下特性。有穷性:包含有限的操作步骤,不能无限制地执行下去。确定性:算法中所描述的每个步骤都应该是明确的有若干个输入数据(0~n)输入是指在算法执行过程中需要用户输入的信息。有若干个输出数据(1~n)一般地,算法都有一个或多个输出数据,因为设计算法的目的就是进行数值
4、运算或进行某种数据处理,给用户输出处理结果是必然的要求。有效性在一个算法中,要求每个步骤都能被有效地执行3.2顺序结构程序设计3.2.1顺序执行语句概述C程序是由语句组成,每个语句以分号结束。语句分类:⃟控制语句空:控制程序执行流程⃟表达式语句⃟函数调用语句:调用函数⃟空语句:执行空操作⃟复合语句:执行一组语句用{}把一些语句括起来,相当于一个语句如:{x1=-(-b+sqrt(d))/(2*a);x2=-(-b-sqrt(d))/(2*a);}3.2.2数据的输入输出输入:指将数据送入计算机输出:指将计算机处理的结果数据送出保存或显示出来。◆C语言中,数据输入/输出是由库函
5、数完成。◆使用库函数时,用预编译命令将有关“头文件”包括到源文件中。◆标准输入输出库函数:“stdio.h”文件◆源文件开头应有以下预编译命令:#include#include"stdio.h"1.putchar函数(字符输出函数)格式:putchar(c)参数:c为字符常量、变量或表达式功能:把字符c输出到显示器上返值:正常,为显示的代码值;出错,为EOF(-1)#includemain(){intc;chara;c=65;a='B';putchar(c);putchar('');putchar(a);}运行结果:AB例输出表:要输出
6、的数据(可以没有,多个时以“,”分隔)格式控制串:包含两种信息◆格式说明:%[修饰符]格式字符,用于指定输出格式◆普通字符或转义序列:原样输出格式字符★d格式符:按十进制格式输出★f格式符:按实数格式输出★c格式符:以字符形式输出一个字符格式:printf(“格式控制串”,输出表)功能:按指定格式向显示器输出数据返值:正常,返回输出字节数;出错,返回EOF(-1)说明:标准库函数,函数原型在头文件“stdio.h”中例chara=‘3’,b=‘4’;printf(“%c%c”,a,b);printf(“a=%c,b=%c”,a,b);输出结果:34a=3,b=4输出结
7、果:34a=3,b=4例inta=3,b=4;printf(“%d%d”,a,b);printf(“a=%d,b=%d”,a,b);例floata=3.14,b=2.1828;printf(“%f%f”,a,b);printf(“a=%f,b=%cf”,a,b);输出结果:3.1400002.182800a=3.140000,b=2.1828002.printf函数(格式输出函数)格式:getchar()功能:从键盘读一字符返值:正常,返回读取的代码值;出错,返回EOF(-1)3.getc