欢迎来到天天文库
浏览记录
ID:36840790
大小:844.50 KB
页数:22页
时间:2019-05-10
《C语言程序的基本结构及上机步骤》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第2讲C语言程序的基本结构、上机步骤1.4C语言程序的基本结构#includevoidmain()/*求两数之和*/{inta,b,sum;/*这是定义变量*/a=123;b=456;sum=a+b;printf(“sumis%d”,sum);}函数是C程序的基本单位。一个C源程序至少包含一个函数(main函数)。为增加程序的可读性,源程序中应当加上必要的注释。C程序中可用/*……*/对程序的任何部分作注释。注释对程序的执行没有任何影响。例1.7C语言程序的基本结构#includevoidmain()/*主函数*/{inta,
2、b,c;/*定义变量*/scanf(“%d,%d”,&a,&b);/*输入变量a和b的值*/c=max(a,b);/*调用max函数,将得到的值赋给c*/printf(“max=%d”,c);/*输出c的值*/}intmax(intx,inty)/*定义max函数,函数值为整型,x,y为形式参数*/{intz;/*max函数中用到的变量z,也要加以定义*/if(x>y)z=x;elsez=y;return(z);/*将z返回,通过max带回调用处*/}C程序中必须有一个而且只能有一个main()函数,不论main()函数处于程序中的什么位置,C程序执行时总是从mai
3、n()函数开始。C程序的执行与函数位置无关。被调用的函数可以由系统提供(库函数),也可以根据需要自己编制。例1.8通过以上几个例子,我们对C程序的组成和形式有一个初步的了解:1.C程序是由函数构成的。main函数printf和scanf库函数2.一个函数由函数的首部和函数体两个部分组成:(1)函数的首部包括函数名、函数类型、函数属性、函数参数(形参)名、形式参数类型,例如例1.8中的max函数的说明部分为:intmax(intx,inty)函数类型函数名参数类型参数名函数名后面必须跟一对圆括号,但括号中的函数参数可以没有,如main()。(2)函数体。即函数说明部分
4、下面的花括弧{……}内的内容。如果一个函数内有多个花括弧,则最外层的一对{}为函数体的范围。3.一个C程序总是从main函数开始执行的,而不论main函数在整个程序中的位置如何。4.C程序书写格式自由,一行内可以写多个语句,一个语句也可以分写在多行上。5.每个语句和数据定义的最后必须有一个分号。分号是C语句的必要组成部分。例如:c=a+b;非常重要的一点是什么是一个语句6.C语言本身没有输入输出语句。输入和输出操作都是由库函数scanf和printf等函数来完成的。C对输入输出实行“函数化”。7.可以用/*……*/对C程序中的任何部分作注释。一个好的,有使用价值的源
5、程序都应当加上必要的注释,以增加程序的可读性。本章难点再分析算法设计举例问题:开发一个程序求全班学生某门课程的平均成绩。要求程序每次运行时班级人数可为任意。设计方法用结构化程序设计方法(“自顶向下、逐步求精”的方法)来解决这个问题并用伪代码来表示求精过程中得到的算法。首先,顶层描述程序的整个功能,然后将其分解为一系列较小的任务,并按照执行顺序列出这些任务。每一步的求精都是一个完整的算法说明,只是每层的细节在变化。重复上述求精过程直到表示每一任务的伪代码能够转化为程序设计语言(如C)指令或程序段为止。算法设计举例问题描述求未知人数班级的平均成绩数据设计(数据及其存储
6、)总成绩(记为total)成绩个数计数器(记为counter)每次输入的成绩(记为score)全班平均成绩(记为average)算法设计举例—逐步求精设计步骤1、初始化阶段(对程序变量初始化);2、处理阶段(输入数据值并对程序中的变量作相应调整);3、终止阶段(计算和打印最终结果)。任务分解初始化变量;输入、求和及对输入的成绩计数;计算并打印班级平均成绩;初始化总成绩total为0;初始化计数器counter为0;读入第一个成绩放到score中;当score不等于标记值时,重复以下工作:{将score加到total中;计数器值counter加1;读入下一个数据放到s
7、core中;}如果counter≠0,那么执行以下工作:{将total除以counter的结果放到average中;打印average;}否则执行打印信息“没有输入成绩”算法设计举例—C程序printf(“输入下一个成绩,-1表示输入结束”);/*屏幕提示*/scanf(“%d”,&score);}/*终止阶段*/if(counter!=0){average=total/counter;printf(“全班平均成绩为%.2f”,average);}elseprintf(“没有输入成绩”);}/*用标记值控制循环求全班平均成绩*/#include
此文档下载收益归作者所有