实验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); } 调试并查找以上程序的语法错误并分析原因并改正。

《C语言程序设计实验》指导书

《C语言程序设计实验》指导书

《C语言程序设计实验》指导书以下是为大家整理的《c语言程序设计实验》指导书的相关范文,本文关键词为c语言程序设计实验,指导书,c语言程序设计实验,简明版,中北,您可以从右上方搜索框检索更多相关文章,如果您觉得有用,请继续关注我们并推荐给您的好友,您可以在教育文库中查看更多范文。

《c语言程序设计实验》指导书(简明版)中北大学软件学院20XX年10月实验一顺序结构程序设计(2学时)一、实验目的1、熟悉c编译环境、简单c程序结构及书写方式、以及c程序的编辑、编译、连接、运行、调试的步骤;2、掌握c语言的基本数据类型及其输入输出格式,以及输入输出函数的使用方法;3、掌握c语言的算术运算符(特别是自增、自减运算符)、赋值运算符、关系运算符、逻辑运算符、条件运算符、逗号运算符的使用;4、掌握c语言顺序结构程序的执行流程、设计方法,能够根据实际问题灵活使用顺序结构,画出程序的算法流程图,设计出逻辑合理、思路清晰、结果正确的顺序结构程序。

二、实验内容及要求1、实验内容包括8道题目,分为基本内容和选做内容两部分。

要求:(1)基本内容中的实验题目是必须要完成的,选做内容中的实验题目可以根据自己的情况选做或全做(越多越好,适当加分);(2)在实验之前编写出基本内容、选做内容中的所有程序,实验前检查(视未完成情况适当扣分);(3)对于设计型题目,要求画出程序流程图(传统流程图和n-s 图);(4)在上机实验过程中,注意总结和体会上机步骤(编辑、编译、连接、运行、调试、结果分析),注意培养观察、分析和排除编译错误、连接错误和程序逻辑错误的初步能力;(5)上机结束后,应按要求认真书写实验报告(格式见附件)。

2、基本内容(1)[验证型]编辑下列程序,然后进行编译、连接和运行,观察结果,并简要总结简单c程序的结构、书写格式以及上机过程;#includeintmain(){printf(\return0;}(2)[验证型]通过运行下列程序,分析各种格式符的使用方法。

C语言上机实验1-18

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程序控制结构

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语句编程,从键盘键入三个整数,然后按照从小到大的顺序将其输出。

实验二顺序结构程序设计

实验二顺序结构程序设计

实验⼆顺序结构程序设计实验⼆顺序结构程序设计(验证性实验)
【实验⽬的】
(1)掌握数据的输⼊输出的⽅法;
(2)熟悉顺序结构程序中语句的执⾏过程;
(3)掌握顺序结构程序的设计⽅法。

【实验条件】
PC机或者远程编程环境
【实验内容】
1、完成三个编程题。

( python123)
(1)计算圆⾯积的计算 S
问题描述:
根据圆的半径计算圆⾯积,半径为25。

请编写并运⾏如下代码:
radius = 25 #圆的半径是25
area = 3.1415 * radius * radius #根据公式计算圆的⾯积
print("{:.2f}".format(area)) #仅输出两位⼩数结果
输⼊输出:
输⼊:⽆输出:1963.44
(2)求和
问题问题:
编写程序,从键盘上输⼊两个数x,y,求x,y之和并将其赋值给s,最后输出s。

输⼊输出:
(3)求球体积
问题描述:
输⼊球的半径,计算球体体积。

输⼊输出:
输⼊:⼀个正数
输出:球的体积,结果保留两位⼩数
【实验记录与分析】
(请在填写实验记录与分析结果)
【思考题】(注意不要漏答)
1、影响题1和题3计算准确性的因素有哪些?如何让1和3得到的值更准确?(可以本地计算机上尝试,或者在python123上⾃⾏编程)注意输⼊格式,将字符串的形式要转化为⼀个数字;注意题⽬条件,将题⽬要求的保留⼩数点后俩位精准的表达出来。

信息技术教案二——探究顺序结构程序设计方法

信息技术教案二——探究顺序结构程序设计方法

信息技术教案二——探究顺序结构程序设计方法探究顺序结构程序设计方法一、前言计算机科学和编程技术是现代社会中非常重要的一部分,许多行业都需要使用它们。

学好程序设计方法对于计算机科学和编程技术的学习至关重要。

在本文中,我们将探究顺序结构程序设计方法。

二、什么是顺序结构程序设计方法?顺序结构程序设计方法是指程序逻辑从上到下、从左到右地执行。

当程序执行时间长、运算量大时,适宜采用该方法。

程序执行时,计算机按顺序执行每个步骤直至结束。

其基本结构是顺序执行结构,也就是执行一段指令后,继续执行下一段指令,直到最后完成整个任务。

顺序结构程序设计方法最基本的要求是:每个任务都必须有明确的开始和结束,且在该任务完成之前,程序必须顺序执行前面的任务。

在实现过程中,应注意步骤的连贯性,以保证程序能够正确、有效地执行。

三、如何使用顺序结构程序设计方法?在程序设计中,使用顺序结构程序设计方法需要严格按照步骤执行。

以下是一些方法:1.确定任务在程序设计时,首先需要确定任务,明确自己所要做的事情,这样才能够为程序的设计提供有效的指导。

2.划分步骤一般情况下,程序需要进行多个步骤的处理,因此在编写程序时需要将任务划分成若干个步骤,以便逐步实现最终的设计目标。

3.定义数据类型在使用程序设计时,需要定义数据类型。

这是程序设计的基础,用来定义所需的数据类型,以确保在程序执行过程中不会出现任何类型错误。

4.编写程序在编写程序时,应注意每个步骤的顺序,确保程序可以按正确的顺序执行每个步骤,并最终完成全部任务。

5.调试程序编写程序之后需要测试和调试,进行程序调试是非常必要的,以确保程序的正确性和稳定性四、案例分析:使用顺序结构程序设计方法实现登录功能下面我们将通过使用顺序结构程序设计方法实现一个基本的登录功能。

1.确定任务我们需要确定登录的“任务”,它的目标是允许用户通过输入用户名和密码来登录系统。

2.划分步骤登录功能包括以下步骤:(1)输入用户名和密码;(2)验证用户名和密码是否正确;(3)如果验证成功,跳转至登录成功页面,否则报错并继续等待用户输入。

程序设计基础(C语言)实验报告

程序设计基础(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↙通过此题,总结输入数据的规律和容易出错的地方。

顺序结构程序设计实训报告

顺序结构程序设计实训报告

顺序结构程序设计实训报告一、引言计算机编程是当今社会中普及的一项技能,对于想要从事软件开发等IT行业的人士来说,掌握编程技能是必不可少的。

而要成为真正的程序员,需要具备良好的程序设计能力,尤其是顺序结构程序设计能力。

顺序结构程序设计是基础,也是必修课程中重要的一部分,正是我们本次实训所涉及的内容。

本文将详细介绍本次实训的具体内容、设计思路和实现过程,同时也会对遇到的问题及解决方案进行说明,希望能对学习者有所帮助。

二、实训内容本次实训的主要内容是制作一份简单的学生信息管理系统,其中包含对学生信息的添加、删除、修改和查询操作。

具体实现的功能如下:1.添加学生信息:用户通过键入学生的姓名、性别、年龄等信息来添加学生信息。

添加成功后,会提示用户添加成功,并返回主菜单。

2.删除学生信息:用户可以通过学生的学号或姓名来删除指定的学生信息。

删除成功后,会提示用户删除成功,并返回主菜单。

3.修改学生信息:用户可以在程序中选择要修改的学生信息,并修改学生的各项信息。

修改成功后,会提示用户修改成功,并返回主菜单。

4.查询学生信息:用户可以通过学生的学号或姓名来查询指定的学生信息。

查询结果将显示在屏幕上,并在查询完毕后返回主菜单。

三、设计思路本次实训主要是基于顺序结构程序设计的实现,因此我们需要明确四个基本元素:输入、输出、处理和控制。

在程序中,数据的输入主要是通过键盘录入来完成,而输出则是通过屏幕输出来呈现给用户。

程序中的处理部分是指对输入的数据进行操作和计算的过程,而控制部分则是指控制程序的运行流程和调用相应的处理程序。

为了更好地进行程序设计,我们还需要明确程序的整体架构和功能模块,具体如下:1.主菜单:程序一开始会输出主菜单,用户可以选择对应的功能模块来进行操作。

2.添加学生信息:当用户选择添加学生信息时,程序会提示用户输入学生的相关信息,然后将新的学生信息保存至文件中。

3.删除学生信息:当用户选择删除学生信息时,程序会提示用户输入需要删除的学生学号或姓名,并将指定学生的信息从文件中删除。

微机实验二

微机实验二

实验二:汇编语言(三种基本结构程序)设计与调试一、实验目的1.学习汇编语言(三种基本结构程序)设计与调试。

2.掌握多分支结构程序设计的方法。

3.掌握循环结构程序设计的方法。

4.熟悉在PC机上建立、汇编、连接和调试程序的方法。

二、实验内容(顺序结构的程序设计)程序一:设W、X、Y、Z均为16位带符号数。

要求完成计算表达式(W-(X*Y+Z-220))/X。

将表达式的商和余数存入数据区RESULT单元开始的区域中。

编程思路:该题目要求掌握乘除法运算中带符号数和无符号数运算的区别。

为了实现指定功能,应从以下几个方面考虑:(1)带符号数的乘除法运算应选用的指令。

(2)乘、除法运算中操作数的长度问题。

(3)带符号数的扩展问题。

参考程序清单DATA SEGMENTW DW -304X DW 1000Y DW -12Z DW 20RESULT DW 2 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV AX,XIMUL YMOV CX,AxMOV BX,DXMOV AX,ZCWDADD CX,AXADC BX,DXSUB CX,220SBB BX,0MOV AX,WCWDSUB AX,CXSBB DX,BXIDIV XMOV RESULT,AXMOV RESULT+2,DXMOV AH,4CHINT 21HCODE ENDSEND START三、实验内容(分支结构的程序设计)程序二:在数据区中定义三个带符号字节变量,编写程序将其中的最大数找出送到MAX单元中。

该题目要求掌握多分支程序设计方法。

编程思路:为了实现指定功能,应从以下几个方面考虑:(1) 确定编程的算法思想。

(2) 确定带符号数比较大小转移应选择哪一组条件转移指令。

参考程序清单:DATA SEGMENTX DB 115Y DB 23Z DB -20MAX DB ?DATA ENDSCODE SEGMENTASSUME DS:DATA,CS:CODESTART:MOV AX,DATAMOV DS,AXMOV AL,XCMP AL,YJG NEXTMOV AL, YCMP AL,ZJG EXITMOV AL,ZJMP EXITNEXT:CMP AL,ZJG EXITMOV AL,ZEXIT:MOV MAX,ALMOV AH,4CHINT 21HCODE ENDSEND START ;返回DOS四、实验内容(循环结构的程序设计)程序三:编写程序实现将数据段STR1单元开始的20个字符移到STR2开始的存储区。

C语言程序设计实验讲解

C语言程序设计实验讲解

实验一顺序结构程序设计一、实验目的1. 掌握C语言中使用最多的一种语句——赋值语句的使用方法。

2. 掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符。

二、实验的内容和步骤1.以下程序多处有错。

要按下面指定的形式输入数据和输出数据时,请对该程序做相应的修改。

#include <stdio.h>void main ( ){ double a,b,c,s,v;printf(input a,b,c:\n);scanf("%d%d%d",a,b,c);s=a*b;v=a*b*c;printf("%d %d %d",a,b,c);printf("s=%f\n",s,"v=%d\n",v);}当程序执行时,屏幕的显示和要求输入形式如下:input a,b,c:1.0 2.0 3.0 →此处的1.0 2.0 3.0是用户输入的数据a=1.000000 b=2.000000,c=3.000000 →此处是要求的输出格式s=2.000000,v=6.000000相关知识:①检查程序错误时应注意几点:a)有时程序中一个错误会引发一系列错误信息,工作中不应被这种情况所迷惑,改正了一些错误后应及时对源程序重新进行编译;b)如果修改错误时增删了行,或是一个行里有多个错误,更正前面错误时增删了字符,就可能导致系统对错误定位不准,此时应该重新编译;c)系统给出的警告信息一般都说明程序中有问题,因为系统发现了可疑情况。

对于警告信息同样要逐个仔细分析。

除非明确认定不是问题,否则绝不能简单地认为不是错误而不予理睬。

实际上,很多警告都是因为程序中确实有严重的隐含错误。

d) 在连接中发现新错误也需要仔细检查和修改程序。

连接时发现的错误一般是由于函数名或外部变量名字写错,或者一些函数、外部变量没有定义引起的。

系统不能对连接错误给以自动定位,只能提供有关的名字信息等。

C语言实验学生版(最新版)

C语言实验学生版(最新版)

实验一:简单的C程序设计(2学时)一、实验方式:一人一机二、实验目的:1、了解C语言程序的编译环境和编写过程。

2、掌握C语言程序在Visual C++ 6.0环境下的调试过程。

3、初步了解C语言程序的特点。

4、掌握C语言的数据类型。

三、实验内容:1、计算两个数x和y的和。

(教材P5【例1-2】)2、从键盘输入华氏温度h,输出摄氏温度c(摄氏温度=5/9*(华氏温度-32))。

(实验教材P18)3、给定圆环,输入内圆环半径r1、外圆环半径r2,求出圆环的面积。

(实验教材P27)4、从键盘上输入两个整数x、y,实现两个数的交换,并求出最大值、最小值和两个数的平均值。

(实验教材P21)5、输入并运行以下程序,分析运行结果。

(实验教材P27)#include <stdio.h>void main( ){int i,j;i=8; j=10;printf(“%d,%d\n”,++i,++j);i=8; j=10;printf(“%d,%d\n”,i++,j++);i=8; j=10;printf(“%d,%d\n”,++i,i);i=8; j=10;printf(“%d,%d\n”,i++,i);}四、实验程序代码:五、实验运行结果(截图):实验二:顺序结构程序设计(2学时)一、实验方式:一人一机二、实验目的:1、掌握标识符、常量、变量的定义及使用。

2、掌握C语言的常用运算符及表达式。

3、掌握单分支if语句的使用方法。

4、掌握双分支if-else语句的使用方法。

三、实验内容:1、从键盘输入一个3位整数,请输出该数的逆序数。

(实验教材P27)2、输入3个字符型数据,将其转换成相应的整数后,求它们的平均值并输出。

(实验教材P27)3、判断箱子是正方体还是长方体。

(实验教材P33)4、有一函数: x (x<1)y= 2x-1 (1≤x<10)3x-11 (x≥10) 编写程序,输入x值,输出y值。

第二章 顺序结构程序设计

第二章 顺序结构程序设计

printf("c1+200=%c\n",c1+200);
printf("c1+256=%d\n",c1+256);
printf("c1+256=%c\n",c1+256);
}
11
2.2.2 各种类型数据的输出设计
4.字符串的输出
字符串可以用格式说明符%s输出。
【例2-7】字符串的输出。 #include <stdio.h>
2.2.2 各种类型数据的输出设计
3)对不同类型的数据,要用不同的格式字符提供输出格式。
常用的格式说明,见表2-1。
格式说明
功能
%d 以带符号的十进制形式输出整数(正数不输出符号) %f 以小数形式输出单、双精度数,隐含输出6位小数 %e 按指数格式输出浮点数(规格化表示) %c 以字符形式输出,只输出一个字符 %s 输出字符串
}
%d,按整数的实际长度进行输出,整数有几位就输出几位。
%md,m为指定的输出宽度。如果整数的位数小于m,则左补空格, 如果整数的位数大于m,则按实际的位数输出。
%ld,输出长整型。长整型的输出也可以指定宽度,即%mld。
14
2.2.2 各种类型数据的输出设计
【程例 序2运-行9】结f果格如式下符:使用修饰符 #1d2=i31n.2c43l54u6506d07e18,9<0□s12□t3d1.i42o43..4h45>6001,□□□□123.46,123.46□□□□,123.46 main( )
{ float f=123.456;
double d=1234567890123.11111,d=%f\n",f,d);

顺序结构程序设计实验报告

顺序结构程序设计实验报告

《汇编语言程序设计》实验报告实验名顺序结构程序设计实验室实验楼实验日期2014-05-05add ax,Zmov W,ax ;X,Y,Z之和存入W中retmain endpcode ends ;代码段结束end start3.调试过程:(1).用masm程序产生mwn1.obj文件,编译没有错误,如下图:(2).用link程序产生mwn1.exe文件,连接没有错误,如下图:(3).进入debug调试,用u命令反汇编,查看代码段,数据段所在的内存单元;(4).由(3)可知,数据段在144A段,如下图,用d命令查看数据段的值,依次为5,6,7,接着下一个字的内容为0:(5).用t命令单步执行,前三次为初始化,具体的如下图:(6)用t命令执行,如下图,将[0000]单元中的内容05h传给ax,ax中的内容为0005,将[0002]单元中的内容和ax相加,并把结果存放在ax中,ax中的内容为000b=(5+6)(7)用t命令执行,如下图,将[0004]单元中的内容0bh和ax相加,并把结果存放在W中,W 中的内容为0012=(0b+7)题目二:1.设计:首先,在数据段中,定义字符串存放在变量s1中,同时申请一个字单元,用标号s2来表示,用来存放计数次数;在代码段中,首先初始化,然后,根据cld与rep的组合递减,将字符一个一个根据地址的指示按顺序输出。

2.源程序清单data segments1 db 'This is a program!$'count equ $-s1 ;变量count代替$-s1s2 db count dup(?)data ends ;定义数据段,变量s1为字符串'This is a program!$',;变量s2是重复计数次数code segment ;代码段assume cs:code,ds:data,es:datastart:mov ax,datamov gtmov es,ax ;初始化mov si,offset s1 ;将变量s1的偏移地址放入寄存器si中mov di,offset s2 ;将变量s2的偏移地址放入寄存器di中mov cx,count ;将计数次数存入寄存器cx中Cldrep movsb ;在字符串的比较,di或si是可以自动增减,即si,di向前移动mov dx,offset s2mov ah,9int 21hmov ax,4c00hint 21h ;输出结果code endsend star t3.调试过程:(1).用masm程序产生mwn2.obj文件,编译没有错误,如下图:(2).用link程序产生mwn1.exe文件,连接没有错误,如下图:(3).进入debug调试,用u命令反汇编,查看代码段,数据段所在的内存单元;(4).由(3)可知,数据段在144A段,如下图,用d命令查看数据段的值,依次为This is a program!$,接着下一个字的内容为0:(5)用t命令单步执行,前三次为初始化,具体的如下图:(6)用t命令执行,如下图,将偏移地址存入si,di;(7)用t命令执行,如下图,命令执行count次数;(8)执行结果,如下图:题目三:查表法,实现一位16进制数转换为ASCII码显示1.设计:首先,在数据段中,定义0~9的ASCII码、A~F的ASCII码,并设定一个待转换的数;(1)用masm程序产生mwn3.obj文件,编译没有错误,如下图:(2)用link程序产生mwn3.exe文件,没有错误,如下图:(3)进入debug调试,用u命令反汇编,查看代码段,数据段所在的内存单元;(4).由(3)可知,数据段在144A段,如下图,用d命令查看数据段的值,依次为5,6,7,接着下一个字的内容为0:(5).用t命令单步执行,前三次为初始化,具体的如下图:(6)用t命令执行,如下图,将BX指向ASCII码表;(7)用t命令执行,如下图,AL取得一位16进制数,即ASCII码表中位移;(8)用t命令执行,如下图,高4位清0,只有低4位有效;(9)用t命令执行,如下图,换码过程;(10)用t命令执行,输出结果B,如下图:。

实验二选择结构程序设计实验报告

实验二选择结构程序设计实验报告

实验二选择结构程序设计一、实验目的和要求1. 掌握关系表达式和逻辑表达式的使用。

2. 熟悉选择结构程序设计。

3. 熟练使用if语句进行程序设计。

4. 使用switch语句实现多分支选择结构。

二、实验设备PC机 Visual C++6.0三、实验内容(一)实验准备1.从程序流程的角度来看,程序可以分为三种基本结构,即顺序结构、分支(选择)结构、循环结构。

2.If-else语句:一般形式为: if(表达式)语句1;else语句2;该语句用于实现分支结构,根据表达式的值选择语句1或语句2中的一条执行。

首先求解表达式,如果表达式的值为“真”,则执行语句1;如果表达式的值为“假”,则执行语句2.2.switch语句switch语句可以处理多分支选择问题,根据其中break语句的使用方法,一般分为三种情况。

(二)实验项目1. 计算a+|b|#include<stdio.h>int main(void){int a,b,z;printf("Please enter a,b:\n");scanf("%d,%d",&a,&b);if (b>=0){b=b;}else{b=-b;}z=a+b;printf("%d+%d=%d\n",a,b,z);return 0 ;}2 判断一个整数是否可以被3和5整除#include<stdio.h>int main(void){int a ;printf("Please enter a:\n");scanf("%d",&a);if (a%3==0){printf("a可以被3整除:\n");}else{if (a%5==0){printf("a可以被5整除:\n");}else {printf("a不可以被5整除,也不可以被3整除:\n");}}3.从键盘输入一个字符型数据,若输入一个数字字符('0'-'9'),则将其转换成相应的整数显示出来;若输入其它字符,则显示出错信息。

C语言实验报告-实验2 顺序结构程序设计

C语言实验报告-实验2 顺序结构程序设计

实验2 顺序结构程序设计一、实验目的1. 学会使用自然语言或伪代码描述算法2. 掌握变量、运算符、表达式的使用3. 熟悉顺序结构程序中语句的执行过程4. 掌握标准输入流对象cin及标准输出流对象二、实验内容编写程序在屏幕上显示如图2-1所示的菜单。

图2-1 学生选课管理系统主界面实验步骤:范例:1)在VS2008中新建项目,在项目中新建C++源文件,输入下面程序,并且编译、连接。

//***************************************************************//* 程序名:实训2_1.cp *//* 主要功能: *//* 显示主菜单,并获取用户输入的模块编号 *//***************************************************************#include <iostream> // 包含输入输出接口文件using namespace std; // 引用标准命名空间void mainMenu();int main() // 定义主函数{ // 主函数开始mainMenu();return 0;}void mainMenu(){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):";}2)运行范例所示程序,观察输出结果实训1要求编写程序在屏幕上显示如图2-2所示的菜单。

实验2_顺序结构与输入输出方法

实验2_顺序结构与输入输出方法

实验二顺序结构与输入/输出方法实验目的掌握C语言中赋值语句的使用掌握C语言中各种数据的输入/输出方法能正确使用各种格式转换符实验要点C语言中的基本输入/输出语句✧scanf()输出函数一般格式:scanf(“格式串”,地址表达式1[,地址表达式2,……,地址表达式n]);✧printf()输入函数一般格式:printf(“格式串”,[表达式1,表达式2,……,表达式n]);实验要求上机前编写好以下程序(1-4为填空,5为程序改错) 。

上机输入和调试自己所编的程序并存在自己的软盘上。

检查实验结果是否正确。

上机结束后,整理实验报告。

实验内容上机调通以下程序。

1.以下程序的输出结果是【】main(){short i;i=-2;printf("\n i: dec=%d,oct=%o,hex=%x,unsigned=%u\n",i,i,i,i);}2.以下程序的输出结果是【】main(){float f;f=3.1415;printf("\n %f,%4.3f,%5.3f,%-10.3f,%10.3f\n",f,f,f,f,f);}3.以下程序的输出结果是【】main(){int a,b;float c,d;char c1,c2;a=61;b=62;c=31.5;d=-68.87;c1='a';c2='A';printf("\n");printf("a=%d,b=%d\n",a,b);printf("c=%f,d=%f\n",c,d);printf("c=%e,d=%e\n",c,d);printf("c1=%c,%c\n",c1,c2);}4.以下程序的功能是从键盘输入一个整型数,一个实型数和一个字符型数,并把他们在屏幕上输出,完成以下填空,并把程序调通,写出运行结果。

《C语言程序设计实验》指导书(实验1~6)

《C语言程序设计实验》指导书(实验1~6)

《C语言程序设计实验》指导书(简明版)**大学软件学院**年**月实验一顺序结构程序设计(2学时)一、实验目的1、熟悉C编译环境、简单C程序结构及书写方式、以及C程序的编辑、编译、连接、运行、调试的步骤;2、掌握C语言的基本数据类型及其输入输出格式,以及输入输出函数的使用方法;3、掌握C语言的算术运算符(特别是自增、自减运算符)、赋值运算符、关系运算符、逻辑运算符、条件运算符、逗号运算符的使用;4、掌握C语言顺序结构程序的执行流程、设计方法,能够根据实际问题灵活使用顺序结构,画出程序的算法流程图,设计出逻辑合理、思路清晰、结果正确的顺序结构程序。

二、实验内容及要求1、实验内容包括8道题目,分为基本内容和选做内容两部分。

要求:(1)基本内容中的实验题目是必须要完成的,选做内容中的实验题目可以根据自己的情况选做或全做(越多越好,适当加分);(2)在实验之前编写出基本内容、选做内容中的所有程序,实验前检查(视未完成情况适当扣分);(3)对于设计型题目,要求画出程序流程图(传统流程图和N-S图);(4)在上机实验过程中,注意总结和体会上机步骤(编辑、编译、连接、运行、调试、结果分析),注意培养观察、分析和排除编译错误、连接错误和程序逻辑错误的初步能力;(5)上机结束后,应按要求认真书写实验报告(格式见附件)。

2、基本内容(1)[验证型]编辑下列程序,然后进行编译、连接和运行,观察结果,并简要总结简单C程序的结构、书写格式以及上机过程;#include <stdio.h>int main( ){printf("Hello, world!\n");return 0;}(2)[验证型]通过运行下列程序,分析各种格式符的使用方法。

#include <stdio.h>int main( ){int a = 9, b = 2;float x = 32.8459, y = -792.451;char d = 'R';long n = 5461237;unsigned u = 65535;printf("%d,%d\n", a, b);printf("%3d,%3d\n", a, b);printf("%f,%f\n", x, y);printf("%-10f,%-10f\n", x, y);printf("%8.2f,%8.2\n", x, y);printf("%.4f,%.4f\n", x, y);printf("%3f,%3f\n", x, y);printf("%e,%10.2e\n", x, y);putchar(d);putchar('\n');printf("%c,%d,%o,%x\n", d, d, d, d);printf("%ld,%lo,%x\n", n, n, n);printf("%u,%o,%x,%d\n", u, u, u, u);return 0;}(3)[验证型]编辑下列程序,进行编译、连接和运行。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验 2
顺序结构程序设计
2.1 基本数据类型和表达式 【实验目的】
1. 2. 3. 掌握 C 语言程序的基本数据类型,变量定义; 掌握赋值语句的使用方法; 熟悉各种运算的含义和功能,正确使用运算符书写各类表达式。
【相关知识点】
1. 基本数据类型及变量的定义 C 语言中基本的数据类型有三种:整型(int) ,实型(单精度浮点型 float,双精度浮点 型 double) ,字符型(char) 。 变量代表内存中具有特定属性的一个存储单元,它用来存放数据,也就是变量的值。C 语言规定,所有要用到的变量都必须先定义其类型,然后才使用。 变量定义(声明)的一般形式: 类型名 变量列表; 示例: int a,b; float x,y; double m,n; char c1,c2; /*定义两个整型变量 a 和 b,用于存放整数*/ /*定义两个单精度浮点型变量 x 和 y,用于存放实数*/ /*定义两个双精度浮点型变量 m 和 n,用于存放实数*/ /*定义两个字符型变量 c1 和 c2,用于存放字符*/
图 2.1.2 变量窗口中的变量值
在变量窗口的观察区中发现,变量 a 已被赋初值为 3,变量 b 的值是个随机值,表示变 量 b 没有被赋初值,从而使得最后的求和结果 s 的值也发生错误。 改正程序后的运行结果示例如图 2.1.3 所示。
图 2.1.3 pg2101_ok.cpp 的运行结果
2.打开 C:\c-programming\2\pg2102.cpp,该程序中有一处错误,修改程序,使其能够正 确运行,并观察变量 i, j 的结果值。修改后的程序以 pg2102_ok.cpp 保存。该源程序内容如 下: #include<stdio.h>
} 提示:如何发现问题? 编译、链接和运行后,出现错误结果,如图 2.1.1 所示。
图 2.1.1 pg2101.cpp 的错误运行结果
关闭运行窗口,使用工具栏上的 行单步调试,当单步运行到 printf("s=%d\n",s);
ቤተ መጻሕፍቲ ባይዱ
按钮或者快捷键 F10 命令,启用单步运行程序,进
语句时,变量窗口的变量值如图 2.1.2 所示。
图 2.2.1 pg2103.cpp 的错误运行结果
关闭运行窗口,使用工具栏上的 行单步调试,当单步执行到 scanf("%d%d",x,y);
按钮或者快捷键 F10 命令,启用单步运行程序,进
语句时,程序的执行流程切换到运行窗口,要求输入两个数,如图 2.2.2 所示。
图 2.2.2 运行窗口中输入数据
也可以只对部分变量初始化。 示例 2: float x=2.57,y; /*定义实型变量 x 和 y,只给 x 赋初值 2.57*/
对字符变量赋初值时,要用一对单引号将单个字符括起来,组成字符常量。 示例 3: char c1=′m′,c2=′n′; /*给两个字符型变量 c1 和 c2,分别赋初值 m 和 n*/ 如果需要给几个变量赋予相同的值,则需要给每个变量都单独赋值。 示例: int i=2,j=2,k=2; 3. 运算符和表达式 C 语言的算术运算符有多种,应用范围很广,几乎所有的基本操作都作为运算符处理。 这里介绍如下常用的几种: 算术运算符和表达式。算术运算符包括: “+” 、 “-” 、 “*” 、 “/” 、 “%” 、 “++”(自增运算) 和“--” (自减运算) 。 示例 1: a*k+7/4+5%3+′b′; i++; ++i 上述表达式中,7/4 的结果值为 1,因为两个整数相除结果为整数;i++或++i 的结果是 将 i 的值增 1,相当于 i=i+1;′b′是将字符 b 转换成它的 ASCII 码,再进行计算。 赋值运算符和表达式。赋值运算符包括: “=” 、 “+=” 、 “-=” 、 “*=” 、 “/=” 、 “%=” 。 示例 2: a=2+(b=5); j+=3; /*相当于两个赋值语句:b=5; a=2+b; */ /*相当于赋值语句:j=j+3; */ /*给三个变量 i,j,k 都赋初值 2*/
针对上面的问题,查找下面程序中存在的错误并改正。 1.打开 C:\c-programming\2\pg2103.cpp,该程序是从键盘输入两个数,在屏幕上输出这 两个数。 程序中有几处错误, 修改程序, 使其能够正确运行。 修改后的程序以 pg2103_ok.cpp 保存。该源程序内容如下: #include<stdio.h> void main(void) { int x,y; printf("请输入两个数 x,y(以空格或回车间隔) : "); scanf("%d%d",x,y); printf("x=%d,y=%d\n",&x,&y); printf("\n"); } 提示:如何发现问题? 编译、链接和运行后,出现错误结果,如图 2.2.1 所示。
【实验任务】
一、读程序改错
该部分实验主要训练学生读简单程序的能力, 并在理解程序的基础上, 改正程序中出现 的问题,这些问题都是初学者经常容易犯的错误,针对顺序结构程序设计这一章,主要有如 下问题: 1) 2) 输入和输出函数中,变量列表和地址列表表示不正确; 字符常量的赋值格式不正确,字符函数的引用错误。
图 2.1.4 pg2102_ok.cpp 的运行结果
二、编写程序
1.定义三个整型变量,如 a, b, c,计算逗号表达式:c=(a=7,b=a+2,b+1),并输出变量 a, b, c 的值。编写的源程序以 pg2301.cpp 保存。 训练要点:掌握整型数据的定义方法,了解逗号表达式的运算规则,并能正确使用逗号 表达式,输出正确结果。 提示:整型数据的输出格式为:printf("%d",a); 程序运行结果参考示例如图 2.1.5 所示。
void main(void) { int i; i=3; j=++i; printf("i=%d, j=%d\n",i,j); i=3; j=i++; printf("i=%d, j=%d\n",i,j); printf("\n"); } 提示:如何发现问题? 编译后,信息窗口出现如下错误: C:\c-programming\2\pg2102.cpp(7) : error C2065: 'j' : undeclared identifier 发现问题所在,是变量 j 没有定义。 改正程序后的运行结果示例如图 2.1.4 所示。
变量定义的类型名必须是有效的数据类型, 变量列表中可以有一个变量名或由逗号隔开 的多个变量名。 2. 变量赋初值 变量定义后,常常需要对某些变量预先赋初值。C 语言中可以在变量定义的同时给变量 初始化。 示例 1:
int a=5; 相当于: int a; a=5;
/*定义整型变量a,给a赋初值 5*/
字符输入函数 getchar 的一般形式为: getchar(); 此函数的作用是从输入设备(键盘)输入单个字符。getchar 函数得到的字符可以赋给
一个字符变量或整型变量,也可以作为表达式的一部分。 示例 2: ch=getchar( ); putchar(getchar()); /*从键盘读入一个字符给字符变量 ch*/ /*从键盘读入一个字符,,并输出到显示器屏幕上*/
逗号运算符和表达式。逗号运算符为: “,” ,逗号表达式是把多个表达式用逗号连接 起来,按顺序求值,整个逗号表达式的值,就是最后一个表达式的值。 示例: x=2*3, x=x+4, y=x+1; /*逗号表达式的值是 11,此时 x=10, y=11 */
【实验任务】
一、读程序改错
该部分实验主要训练学生读简单程序的能力, 并在理解程序的基础上, 改正程序中出现 的问题,这些问题都是初学者经常容易犯的错误,针对顺序结构程序设计这一章,主要有如 下问题: 1) 2) 没有正确定义变量; 变量没有初始化;
输入数据 3 和 5 后,按回车,程序无法向下执行,表示 scanf 函数有错误,仔细观察发 现问题所在,是 scanf 函数中的地址列表有错误,修改该语句。 再次编译、链接和运行后,仍然出现错误结果,如图 2.2.3 所示。
输出列表是需要输出的数据,可以是常量、变量、表达式、函数返回值等。如果有多个 输出项,则以逗号分隔。 示例 1: printf("%d, %d, %d",a, b, c); printf("%.3f, %.3f",x, y); printf("Welcome to you! "); printf("\n"); /*格式字符串,输出三个整型变量*/ /*格式字符串,输出两个实型变量,保留 3 位小数*/ /*非格式字符串,直接输出此语句*/ /*转义字符,输出回车换行符*/
图 2.1.5 pg2301.cpp 的运行结果
2.定义三个实型变量,如 x,y,z,并对 x,y 赋初值:x=11.5,y=24.6,计算表达式: z=3x+2y+1,并输出 z 的值。编写的源程序以 pg2302.cpp 保存。 训练要点:掌握实型数据的定义方法,正确使用运算符书写表达式。 提示:实型数据的输出格式为:printf("%f",z); 程序运行结果参考示例如图 2.1.6 所示
条件运算符和表达式。条件表达式的一般形式: 表达式①?表达式②:表达式③
如果表达式①的值为 1(真) ,则整个条件表达式的计算结果为表达式②的值,如果表 达式①的值为 0(假) ,则整个条件表达式的计算结果为表达式③的值。 示例 3: a>b ?a : b; /*当 a=2, b=5 时,条件表达式的值为 5 */
相关文档
最新文档