实验2 顺序结构程序设计
第二章顺序结构程序设计教案

一、实验准备实验准备实验准备实验准备1、C语言程序的上机操作语言程序的上机操作语言程序的上机操作语言程序的上机操作C是编译型语言,设计好一个C源程序后,需要经过编译生成目标文件(扩展名.obj)、连接生成可执行文件(扩展名.exe),然后执行。
一个C程序的具体开发步骤如下: (1) 启动启动启动启动VC++ 6.0:“开始”“程序”“Microsoft Visual C++ 6.0” (2) 新建文件新建文件新建文件新建文件:“文件”“新建”在“新建”对话框中选择“文件”标签列表框中选“C++ Source File”,在右边指定文件名和保存位置。
(3) 编辑编辑编辑编辑:录入或修改源程序并保存(Ctrl+S) (4) 调试运行调试运行调试运行调试运行:编译(Ctrl+F7)连接(F7)运行(Ctrl+F5),若有错需修改源程序后再调试程序 (5) 关闭工作区关闭工作区关闭工作区关闭工作区:“文件”“关闭工作空间”,一个程序调试结束后需关闭当前工作空间,再从第(2)步开始下一个程序的调试 2、、、、C程序的调试程序的调试程序的调试程序的调试调试即是在源程序中查找错误并修改错误的过程。
程序的错误一般分为两类:语法错误和逻辑错误语法错误和逻辑错误语法错误和逻辑错误语法错误和逻辑错误。
①语法错误语法错误语法错误语法错误:指不符合C语言语法规则而产生的错误。
语法错误系统能检测出来并告之原因及位置,设计者可参考修改。
②逻辑错误逻辑错误逻辑错误逻辑错误:指程序的运行结果与预期的结果不符而产生的错误。
这类错误拔除难度较大,一般需祥细分析算法或在程序运行过程中设置断点、追踪程序的运行来纠错。
(1)语法错误调试案例(建立程序名为ex1-1.c)# include <stdio.h> void main() { int i=0 //错误原因:语句结束位置缺分号printf("i=%d\n",i); } 调试并查找以上程序的语法错误并分析原因并改正。
Python程序设计实验报告二顺序结构程序设计

Python程序设计实验报告二顺序结构程序设计Python程序设计实验报告二:顺序结构程序设计一、实验目的本实验旨在通过编写Python程序,熟悉和掌握顺序结构程序设计的基本方法和技巧,加深对变量、表达式、数据类型以及基本输入输出的理解。
二、实验内容本次实验要求编写一个Python程序,实现以下功能:1. 提示用户输入一个年份,并将其存储到一个变量中。
2. 根据给定年份,计算该年份是否为闰年,并将计算结果存储到一个变量中。
3. 提示用户输入一个月份,并将其存储到一个变量中。
4. 根据给定月份,计算该月份有多少天,并将计算结果存储到一个变量中。
5. 输出计算结果,告诉用户给定年份是否为闰年,以及给定月份有多少天。
三、实验步骤下面是程序的详细步骤:1. 使用input函数提示用户输入一个年份,并将用户输入的值存储到一个名为year的变量中。
2. 根据闰年的定义,判断年份是否为闰年。
判断的条件是:年份能够被4整除但不能被100整除,或者能够被400整除。
如果年份是闰年,则将一个名为is_leap_year的变量设为True,否则设为False。
3. 使用input函数提示用户输入一个月份,并将用户输入的值存储到一个名为month的变量中。
4. 使用if语句判断月份,根据月份的不同,设置一个名为days的变量,表示给定月份的天数。
根据不同的情况,设置不同的值。
5. 使用print函数输出计算结果,告诉用户给定年份是否为闰年以及给定月份有多少天。
输出的格式为:“给定的年份XX是闰年/不是闰年,给定的月份XX有XX天。
”四、实验代码下面是按照顺序结构程序设计的要求,编写的Python程序:```# 提示用户输入年份year = int(input("请输入一个年份:"))# 判断年份是否为闰年if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:is_leap_year = Trueelse:is_leap_year = False# 提示用户输入月份month = int(input("请输入一个月份:"))# 根据月份计算天数if month in [1, 3, 5, 7, 8, 10, 12]:days = 31elif month == 2:if is_leap_year:days = 29else:days = 28else:days = 30# 输出计算结果print("给定的年份", year, "是闰年" if is_leap_year else "不是闰年", ",给定的月份", month, "有", days, "天。
C语言上机实验1-18

实验一C程序的运行环境及简单程序编写一、实验目的1.了解tc2.0编译系统的基本操作方法,学会独立使用该系统。
2.了解在该系统上如何编辑、编译、连接和运行一个C程序。
3.通过运行简单的C程序,初步了解C源程序的特点。
二、实验内容1.编写一个计算球体体积的程序,要求用户自行录入球体的半径。
参考公式V=4/3πr3.。
2.编写一个程序,要求用户输入一个美金数量,然后显示出如何用最少的20美元、10美元、5美元和1美元来付款。
运行结果:Ener a dollar amount:93$20 bills:4$10 bills:1$5 bills:0$1 bills:3实验二顺序结构程序设计一、实验目的1.熟悉C语言中的基本数据类型,掌握定义常量和变量以及对它们赋值的方法,了解数据输出时所用格式转换符。
2.掌握格式输入/输出函数的用法。
3.学会简单顺序程序的设计。
4.养成良好的程序设计习惯。
二、实验内容1.编写一个程序,对用户录入的产品信息进行格式化。
Enter item number:583Enter unit price:13.5Enter purchase date(mm/dd/yyyy):3/24/2010Item Unit PurchasePrice date583 $ 13.50 3/24/20102.编写一个程序,要求用户输入一个两位数,然后按数位的逆序打印出这个数。
Enter a two-digit number:28The reversal is :82实验三选择结构程序设计一、实验目的1.熟练使用if、switch编写程序。
二、实验内容1.编写一个程序,确定一个数的位数。
Enter a number:374The number 374 has 3 digits假设输入的数最多不超过4位。
提示:利用if语句进行数的判定。
例如,如果数在0到9之间,那么位数为1;如果数在10到99之间,那么位数为2。
实验二-顺序结构程序设计

实验二顺序结构程序设计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” 之前缺少“;”。
Java语言实验2程序控制结构

一、实验目的1.理解定义变量的作用,掌握定义变量的方法。
2.掌握顺序结构程序控制。
3.掌握算法与程序设计的基本方法。
4.掌握if语句、if-else-if结构的使用。
5.掌握switch语句的使用。
6.掌握使用while语句实现循环。
7.了解使用do-while语句实现循环。
8.掌握使用for语句实现循环。
9.了解continue语句和break语句的使用。
10.掌握一维数组的概念、定义和使用。
二、实验内容及步骤1.顺序结构(1)任务写一个程序,读入三个整数并打印他们的平均值。
源代码:public class renwu1 {public static void main(String[] args) {int sum = 0;int aver = 0;Scanner scanner = new Scanner(System.in);for(int i = 1;i <= 3; i++) {System.out.print("请输入第" + i +"个数:");sum +=scanner.nextInt();aver = sum / i;}System.out.println("平均数是:" + aver);}}运行结果:写一个程序,读入两个浮点数并打印他们的和、差和积。
源代码:public static void main(String[] args) {float sum = 0;float cha = 0;float ji = 0;Scanner scanner = new Scanner(System.in);System.out.println("请输入第一个浮点数:");float num1 = scanner.nextFloat();System.out.println("请输入第二个浮点数:");float num2 = scanner.nextFloat();sum = num1 + num2;cha = num1 - num2;ji = num1 * num2;System.out.println("和是:" + sum);System.out.println("差是:" + cha);System.out.println("积是:" + ji);}}运行结果:2.分支结构(1)任务任务1:使用简单if语句编程,从键盘键入三个整数,然后按照从小到大的顺序将其输出。
实验2顺序结构程序设计

实验2 顺序结构程序设计一、实验目的1. 学会使用自然语言或伪代码描述算法2. 掌握变量、运算符、表达式的使用3. 熟悉C语言的表达式语句、空语句和复合语句4. 熟悉顺序结构程序中语句的执行过程5. 掌握标准输入流对象cin及标准输出流对象cout二、实验内容实训1编写程序在屏幕上显示如图2-1所示的菜单。
图2-1 学生选课管理系统主界面实验步骤:1) 在VS2008中新建项目,在项目中新建C++源文件,输入下面程序,并且编译、连接。
//***************************************************************//* 程序名:实训_1.cp *//* 主要功能: *//* 显示主菜单,并获取用户输入的模块编号 *//***************************************************************#include <iostream> // 包含输入输出接口文件using namespace std; // 引用标准命名空间int main() // 定义主函数{ // 主函数开始system("cls");cout<<"\n\n\n\n\n";cout<<"\t\t|---------------学生选课系统(学生版)------------|\n";cout<<"\t\t|\t 0. 退出 |\n";cout<<"\t\t|\t 1. 学生信息管理 |\n";cout<<"\t\t|\t 2. 教师信息管理 |\n";cout<<"\t\t|\t 3. 课程信息管理 |\n";cout<<"\t\t|\t 4. 学生选课管理 |\n";cout<<"\t\t|\t 5. 学生成绩管理 |\n";cout<<"\t\t|\t 6. 信息统计模块 |\n";cout<<"\t\t|-----------------------------------------------|\n\n";cout<<"\t\t\t请输入模块编号(0-6):";return 0;}2) 运行实训1,观察输出结果。
程序设计基础(C语言)实验报告

程序设计基础(C语言)实验报告课程名称:程序设计基础(C语言)姓名:学号:年级:专业:指导教师:实验地点:目录实验一顺序结构程序设计实验二选择结构程序设计实验三循环结构程序设计实验四数组及其应用实验五函数及其应用实验六指针及其应用实验(一)顺序结构程序设计一、实验目的1.掌握顺序结构程序的设计思想,领会顺序结构的程序执行时顺次执行的特点。
2.掌握赋值语句的特点、功能。
3.掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符。
4.掌握编写程序和调试程序的方法。
二、实验内容及要求1.用下面的scanf函数输入数据使a=3,b=7,x=8.5,y=71.82,c1=’A’,c2=’a’。
#include <stdio.h>int main(){int a,b;float x,y;char c1,c2;scanf("a=%db=%d",&a,&b);scanf("%f%e",&x,&y);scanf("%c%c",&c1,&c2);printf("a=%d,b=%d,x=%.1f,y=%.2f,c1=%c,c2=%c\n",a,b,x,y,c1,c2);return 0;}运行时分别按以下方式输入数据,观察输出结果,分析原因(□表示空格,↙表示回车)。
(1)a=3,b=7,x=8.5,y=71.82,A,a↙(2)a=3□b=7□x=8.5□y=71.82□A□a↙(3)a=3□b=7□8.5□71.82□A□a↙(4)a=3□b=7□8.5□71.82Aa↙(5)3□7□8.5□71.82Aa↙(6)a=3□b=7↙8.5□71.82↙A↙a↙(7)a=3□b=7↙8.5□71.82↙Aa↙(8)a=3□b=7↙8.5□71.82Aa↙通过此题,总结输入数据的规律和容易出错的地方。
顺序结构的实验报告

顺序结构的实验报告引言顺序结构是计算机程序设计中最基础的程序控制结构之一。
它表示程序按照给定的顺序逐步执行,并按照编码的顺序依次处理每一个语句或指令。
本实验旨在通过实践理解和掌握顺序结构的基本原则和应用。
实验目的1. 了解顺序结构的概念和特点;2. 学习运用顺序结构编写简单的程序;3. 掌握基本的数据输入和输出操作。
实验设备与环境- 计算机- 编程软件(例如Python、C++等)- 文本编辑器实验步骤步骤一:程序设计1. 打开编程软件,创建一个新的程序文件;2. 编写程序代码,实现以下功能:- 输入用户的姓名;- 输入用户的年龄;- 输入用户的性别;- 输出用户的信息。
示例Python代码如下:name = input("请输入您的姓名:")age = int(input("请输入您的年龄:"))gender = input("请输入您的性别:")print("您的姓名是:" + name)print("您的年龄是:" + str(age))print("您的性别是:" + gender)步骤二:程序调试1. 保存程序文件,并命名为`sequence_structure.py`;2. 运行程序,查看运行结果;3. 检查输出结果是否符合预期。
步骤三:实验总结通过本次实验,我深入了解了顺序结构的概念和特点。
顺序结构的程序代码按照给定的顺序一步步执行,我们可以通过输入来获取用户的信息,并通过输出打印出来。
在本次实验中,我运用顺序结构的特点,按照输入-处理-输出的顺序设计和实现了一个简单的用户信息展示程序。
通过输入函数,我接收了用户的姓名、年龄和性别信息,然后通过输出函数将这些信息打印出来。
需要注意的是,为了确保程序能正常运行,我们需要按照正确的顺序编写代码,确保每条语句都被正确执行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【实验2.10】下面程序的功能是:给定梯形的上底a、下底b和高h,求梯形面积。请改正程序中的错误,并调试。
注意:改错时不允许增加及删除语句,只允许修改或移动语句的位置。
【含有错误的程序代码】
#include <stdio.h>
main()
{
float a,b,h,area;
printf("Enter a,b,h=");
printf("%5d,%-5d\n",a,a);/*分别按右对齐、左对齐格式输出*/
printf("%10ld,%3u\n",b,c);/*指定宽度输出*/
}
说明:
1.程序的运行结果为:(︺代表一个空格)
126,176,7e
︺︺126,126︺︺
︺︺-1234567,50000
2.数据按八进制、十六进制形式输出时,不显示进制标记(o、0x、0X等前缀)。
c=a*b;
printf("%d,%o,%x\n",c,c,c);/* */
}
说明:
1.“%o”表示从键盘上输入八进制数据,输入时各位数字只能在0~7范围内。“%x”表示从键盘上输入十六进制数据,输入时各位数字只能在0~9、a~f范围内。
2.运行程序,输入“12,1a”输出的结果为:
分析上述输出结果。
实验2顺序结构程序设计
2.1实验目的
1.掌握C语言数据类型的概念,熟悉如何定义一个整型、实型和字符型的变量,以及对它们赋值的方法。
2.掌握输出函数printf()及输入函数scanf()的各种格式控制符的用法。
3.掌握顺序结构程序设计方法及执行过程。
4.进一步熟悉C程序的编辑、编译、连接、运行的过程。
3.当输出数据的位数超出指定的宽度时,会突破指定的宽度限制,以确保输出数据的正确性。
【实验2.4】写出下面程序的输出结果。
#include <stdio.h>
main( )
{
int a;
floatb;
printf("Enter a and b:",a,b);/*输出提示*/
scanf("%d%f",&a,&b);/*输入a、b的值*/
注意:改错时不允许增加及删除语句,只允许修改或移动语句的位置。
【含有错误的程序代码】
#include <stdio.h>
main()
{
float a;
double area;
printf("Enter a,h=");
scanf("%f %f",a,h);
area=a*h/2;
printf("area=%d\n",area);
2.4完善程序
【实验2.7】输入并完善以下程序,使程序在两行输出。
#include <stdio.h>
main( )
{
int a,b;
a=8;
b=9;
printf("__________",a,a,a*a);/*输出8*8=64*/
printf("%d*%d=%d\n",___________);/*输出8*9=72*/
printf("\na=%d,b=%f\n",a,b);/*输出a、b的值*/
}
说明:
1.运行程序,若输入为“10︺22”,则输出的结果为:
a=10,b=22.000000
2.将输入语句改为“scanf("%3d%5f",&a,&b);”,运行程序,若输入“1︺123.4”,则输出结果为:
a=10,b=123.400002
2.2示例程序
【实验2.1】输入并运行以下程序。
#include<stdio.h>
main()
{
printf("What's ");/*输出What's*/
printf("your ");/*输出your*/
printf("name?\n");/*’\n’是换行符*/
}
说明:
1.程序的运行结果为“What’s your name?”。
}
说明:
1.运行程序,输出的第一行结果为:
2.输出的第二行结果为:
3.输出的第三行结果为:
分析上述三行输出结果。
【实验2.6】输入并运行以下程序。给出注释和运行结果。
#include <stdio.h>
main( )
{
int a,b,c;
printf("Enter a,b=");/* */
scanf("%o,%x",&a,&b);/* */
提示:实现交换两个变量的值的方法有两种(请对两种方法进行比较):
(1)中间变量法。设t为中间变量,利用如下三条语句来交换变量a和b的值。
t = a: a = b: b = t
(2)算术方法。利用如下三条语句来交换变量a和b的值。
a = a + b: b = a – b: a = a - b
#include <stdio.h>
#define PI 3.14159/*定义符号常量PI*/
main()
{
float radius,area;/*定义浮点型变量radius,area*/
radius=15.0;/*给半径radius赋值*/
area=PI*radius*radius;/*计算圆面积area */
【实验2.3】整型变量的输出程序。
#include<stdio.h>
main( )
{
int a=126;/*定义整型变量a并赋值*/
longb=-1234567;/*定义浮点型变量a并赋值*/
unsignedc=50000;/*定义无符号变量c并赋值*/
printf("%d,%o,%x\n",a,a,a);/*分别按十进制、八进制及十六进制输出*/
2.printf()函数中只有“格式控制字符串”部分,且只包含普通字符,所以会原样输出。
3.前两行的printf()函数中无换行符’\n’,不进行换行操作,第3行的printf()函数中包含换行符’\n’,字符串输出后换行,这样3个字符串输出到一行上。
【实验2.2】编写已知半径r为15求圆面积的程序。
从运行结果看,浮点数在输出时存在误差。
3.输入语句仍为“scanf("%3d%5f",&a,&b);”,运行程序,若输入为“123456”,则输出的结果为:
a=123,b=456.000000
变量a取3位得到123,变量f取5位,由4开始取出3位456,小数部分为6个0。
2.3阅读程序
【实验2.5】输入并运行以下程序。给出注释和运行结果。
}
【实验2.8】程序实现从键盘输入3个变量的值,其中a=5,b=6,c=7,将3个变量的值进行交换,使得a=6,b=7,c=5。输入并完善以下程序。
#include <stdio.h>
main()
{
int a,b,c,__________;/*定义4个变量*/
printf("Enter a,b,c=");/*输出提示*/
printf("area=%f\n",area);/*输出圆面积*/
}
说明:
1.程序的运行结果为“area=706.857727”。
2.程序的第2行定义了符号常量PI。这样做的好处是程序中出现的所有PI,其值均为3.14159,既简化了程序,又提高了阅读性。
3.注意printf()函数中的“格式控制字符串”部分,area=为普通字符,所以会原样输出。
scanf("%f%f%f",&a,&b,&h);
area=1/2*(a+b)*h;
printf("area=%8.2f\n",area);
}
2.6自己练习
1.编写程序,从键盘输入两个整数542561689和1351387245,计算并输出它们的和。
2.编写程序,从键盘输入四个整数a、b、c、d,a和d交换,b和c交换,输出交换后的值_);/*输入3个变量的值*/
temp=a;
__________;
b=c;
__________;
printf("a=%d b=%d c=%d\n",a,b,c);/*输出处理后的数据*/
}
2.5改错程序
【实验2.9】下面程序的功能是:给定三角形的底a和高h,求三角形面积。请改正程序中的错误,并调试。
#include <stdio.h>
main( )
{
int a=123;/* */
float b=123.456;/* */
printf("%d,%5d\n",a,a);
printf("%f,%13f,%e,%15e,%g,%6g\n",b,b,b,b,b,b);
printf("%9.5f,%8.2f,%.0f,%-10.2f\n",b,b,b,b);