顺序结构程序设计(精)
- 格式:doc
- 大小:65.50 KB
- 文档页数:4
实验二顺序结构程序设计2.1实验要求与目的1.掌握程序设计的基本思想2.熟悉及掌握C语言基本数据类型(int,long,float,double)的说明3.掌握C语言程序设计中格式输入和输出函数的灵活应用4.算术表达式在实际问题中应用5.掌握算法:两数的交换、一个整数的拆数6.数学头文件的包含7.格式输入/输出函数scanf/printf的正确使用2.2 实验指导程序设计的学习过程也是算法积累的过程。
算法是在有限步内求解某一问题所使用的基本运算及规定的运算顺序所构成的完整的解题步骤。
也就是说是计算机解题的过程。
程序设计的基本思想:1)分析问题,理解题意、提出问题;2)建立模型,确立算法,寻找解决问题的有效算法或直接公式;4)编写程序,根据C语言程序结构编程;5)调试程序,若结果正确,结束。
否则检查程序,修改程序,重新调试程序,依次类推,直到调试结果正确为止。
初次自已动手编程,先要建立程序设计的基本思想,结构化程序设计的基本思想就是模块化。
即构成C语言程序的基本单位是函数,函数也是C程序中模块化程序程序设计的基础。
我们将程序设计比拟成“搭积木”,每个模块或每个算法都看成是一个形状及功能不同的“积木”,然后根据设计要求取材,搭建成完美的成品。
C语言是有且仅有一个主函数和若干个子函数组成。
从一个简单的程序设计开始学习,即先学习主函数(main)模块框架。
主函数(main)模块的基本框架设计。
#include <stdio.h>int main(){ 所有数据的数据类型定义说明;数据输入;算法或公式;数据输出;}首次编程,先来熟记2个编程时常用提示信息。
1) 每条语句之后必须有分号“;”。
若程序语句的某一条漏写了分号,在编译时会报如下的错误:error C2146: syntax error : missing ';' before identifier 'scanf'含义: C2146错误:语法错误: 标识符 “scanf” 之前缺少“;”。
实验三顺序结构程序设计(参考答案)[实验任务一]:程序分析实例3-1:assignment.c参考答案程序分析实例3-2:参考答案程序分析实例3-3:参考答案问题1:scan0.c参考答案#include <stdio.h>void main(){char a,b;int c;scanf("%c%c%d",&a,&b,&c);printf("%c,%c,%d\n",a,b,c);}程序运行时输入数据的格式为:12 34↙问题2:scan1.c参考答案#include <stdio.h>void main(){char a, b;int c;scanf("%c%c%d", &a, &b, &c);printf("%-2c%-2c%d\n", a, b, c);}问题3:scan2.c参考答案#include <stdio.h>void main(){char a, b;int c;scanf("%c,%c,%d", &a, &b, &c);printf("%c,%c,%d\n", a, b, c);}问题4:scan3.c参考答案#include <stdio.h>void main(){char a, b;int c;scanf("%c,%c,%d", &a, &b, &c);printf("\'%c\',\'%c\',%d\n", a, b, c);}问题5:scan4.c参考答案#include <stdio.h>void main(){char a, b;int c;scanf("%c%*c%c%*c%d", &a, &b, &c);printf("\'%c\',\'%c\',%d\n", a, b, c);}程序改错实例3-1:correct1.c参考答案程序改错实例3-2:correct2.c参考答案程序改错实例3-3:sin.c参考答案程序改错实例3-3:macro.c参考答案[实验任务四]:编程练习3-1:area.c参考答案编程练习3-2:change.c参考答案编程练习3-3:swap.c参考答案编程练习3-4:interchange.c参考答案编程练习3-5:print.c参考答案。
2.3.1程序的顺序结构教学设计教师活动:一、复习导入1、复习流程图的相关内容:(1)、流程图是算法的一种图形化表示,与自然语言相比,用流程图描述算法能更加直观、形象、更容易理解。
(2)、常用的流程图符号复习完成转入问题1,要求学生写出问题1 的流程图。
学生活动:学生小组合作学习,每两人一组,把问题1 的流程图写在学案上,写好后相互交换讨论。
师生活动:抽取部分同学的学案通过实物展台展示,师生共同学习评价。
问题1:输入长方形的长和宽,输出长方形的周长和面积,写出算法流程图和vb 程序。
(1)请写出问题1 的流程图(2)请写出问题1 的vb 程序教师活动:2、复习常用语句和函数ϖ变量的的定义:Dim 变量名As 数据类型ϖ输入函数:InputBox()ϖ赋值语句:用“=”实现,左边是变量名右边可以是常量、变量、表达式ϖ输出语句:print””,Print 变量名学生活动:学生根据已写出的流程图,在复习vb 常用语句和函数的基础上,尝试写出问题1 的vb 程序,对学生来说可能稍微有点难度,属于拔高练习,主要为了激发学生的求知欲。
师生活动:学生尝试书写程序,教师评价点拨,最后师生共同书写程序。
教师分析讲解已书写完成的程序的执行过程,讲解程序的顺序结构。
顺序结构是一种最基本的程序结构。
ϖ按书写顺序由上到下一条一条执行ϖ没有分支ϖ没有重复ϖ没有跳转最后抛出问题,让学生思考,做到举一反三。
思考?你能不能写出输入正方形的边长,输出正方形的周长和面积的算法?(学生思考回答)问题2:读下面的流程图,编写出相应的vb 程序。
师生共同阅读分析流程图,学生以小组为单位写出程序,教师巡视指导,最后根据学生情况,教师评价总结,再次点题(像这样按书写顺序从上往下一条一条的执行,没有分支、没有跳转的程序,称为顺序结构。
)最后教师抛出问题,这个程序完成了什么功能,学生思考(完成了两个变量的数据交换)。
教师活动:教师再引导学生思考,还有没有实现两个变量的数据交换的其他算法,提示学生阅读课本33 页,看课本是用什么算法来实现两个变量的数据交换的,完成问题 3 的流程图和程序,从而让学生明确对于同一个问题,解决方法也不是唯一的,提高他们分析问题和解决问题的能力。
实验3 顺序结构程序设计一、实验目的:1、熟悉基本数据类型(int、char、float、double)占用的字节数和存储形式,能够定义基本数据类型的变量,使用这些类型的数据;2、熟悉赋值、整数相处、取余运算符的使用,能根据需要构建相应的表达式;3、通过样例加深对printf()常用格式控制符功能的理解,掌握printf()函数的使用;4、掌握scanf()函数的使用,能正确输入数据;5、掌握顺序结构程序设计的方法。
二、实验内容1、(基础题)运行下列程序,体会printf()中“格式控制符”的用法,并回答相关问题:#include<stdio.h>int main(){int k=1234;double f=12345.0123456789;printf("%8d\n",k);printf("%08d\n",k);printf("%15.4f\n",f);printf("%e\n",f);printf("%.4e\n",f);return0;}问题:已知int k=2569;double f=12345.0123456789;根据上面的代码,在原有printf 语句的基础上修改数据输出格式,使得程序运行结果如下图所示。
程序代码:#include <stdio.h>int main( ){int k=2569;double f=12345.0123456789;printf ("%6d\n",k);printf ("%06d\n",k);printf ("%.4f\n",f);printf ("%.2f\n",f);printf ("%.4e\n",f);printf ("%.2e\n",f);return 0;}2、(基础题)改错题:以下程序有多处错误,若按下列截图所示格式输入、输出数据,请在程序的相应位置上改正错误。
实验三数据类型和顺序结构程序设计(4学时)[实验任务一]:通过调试、分析程序运行结果,掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符;掌握各种运算符尤其是复合赋值运算符和除法及求余运算符。
程序分析实例3-1:输入、运行下面的程序,并分析、验证运行结果。
并以文件名assignment.c最终保存在实验3文件夹里:(需要存盘)【分析】程序运行结果为:在此基础上,做以下改动:(1)将程序第9~14行改为:a=61; b=62;c1=a; c2=b;f=3157.890121; g=0.123456789;d=f; e=g;p=a=m=50000; q=b=n=-60000;运行程序,分析结果。
【分析】修改后程序运行结果为:(2)在(1)的基础上将printf语句改为:printf("a=%d,b=%d,c1=%c,c2=%c,d=%15.6f,e=%15.12f\n",a,b,c1,c2,d,e);printf("f=%f,g=%f,m=%d\n",f,g,m);printf("n=%d\n”,n);printf(“p=%d,q=%d\n",p,q);运行程序。
(3)将p, q改用%o格式符输出。
注意是字母o而不是数字0。
(4)改用scanf函数输入数据而不用赋值语句,scanf函数如下:scanf("%d,%d,%c,%c,%f,%f,%lf,%lf,%ld,%ld,%u,%u",&a,&b,&c1,&c2,&d,&e,&f,&g,&m,&n,&p,&q);输入的数据入下:61, 62, a, b, 3.56,-6.87, 3,157.890121, 0.123456789, 50000,-60000, 40000(说明:lf,ld格式符分别用于输入double型和long型数据)分析运行结果。