




已阅读5页,还剩23页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
高级语言程序设计实验指导书实验1 C语言的编程环境一实验目的1初步了解C程序的编译、连接和运行的过程。2掌握和理解C程序的结构。二实验内容1使用TC2运行一个简单的C程序三实验环境PC微机;DOS操作系统或 Windows 操作系统;Turbo C 程序集成环境。四实验步骤1启动Turbo C如果用户计算机系统已经安装了Turbo C编译系统,则在DOS命令状态下键入命令tc。进入Turbo C集成环境后,首先在屏幕上显示Turbo C主菜单窗口。 在该窗口,有8个菜单条目。每一个菜单的意义如下:File 处理文件(包括装入、存盘、选择、建立、换名写盘),目录操作(包括列表、改变工作目录),退出系统及调用DOS 。Edit 建立、编辑源文件。Run 控制运行程序。如果程序已经编译连接好,且Debug/Source Debugging以及Option/Compiler/Code generation/OBJ Debug Information开关置为On,则可以用此菜单初始化调试阶段。Compile 编译并生成目标程序与可执行文件。Project 允许说明程序中包含哪些文件的管理条目。Options 可以选择集成环境任选项(如存储模式、编译时的任选项、诊断及连接任选项)及定义宏;也可以记录Include Output及Library文件目录,保存编译任选项和从配置文件加载任选。Debug 检查、改变变量的值,查找函数,程序运行时查看调用栈。选择程序编译时是否在执行行代码中插入调试信息。Break/Watch 增加、删除、编辑监视表达式,及设置、清除、执行至断点。特别要指出的是,除了Edit项外,每一个菜单又有对应的子菜单。而选择Edit项目后,只是进入编辑器。为了从主菜单中选择所需要的功能,可以用以下两种方式之一:(1)按F10键后,可以看到屏幕上部主菜单中有反白显示,此时,利用左、右光标移动键(与)选择需要的菜单,然后按回车(Enter)键。(2)直接按Alt+主菜单条目中的首字母(分别为F,E,R,C,P,O,D,B),此时就会出现相应的子菜单。例如,按Alt+F表示选择文件子菜单(File)。当出现子菜单时,其中某个条目是高亮度的,此时可以利用上、下光标移动键(与)来移动该高亮度线,从而选择所需要的功能。在菜单调用时,按Esc键后将直接返回到活动窗口。2输入程序 输入以下程序main()printf(“How are you!”);3运行程序按Ctrl+F9运行程序,如果没有报错,可以按Alt+F5查看运行结果,再按空格键回到编辑窗口。4保存文件按F2键,弹出一个对话框,在对话框中输入文件名,如:exam1c。5退出TC程序按Alt+X键,弹出对话框,提示是否真的要退出TC,如果输入Y就会退出TC。6打开已经存在的文件(1)首选启动TC。(2)按F3,弹出对话框。(3)在该对话框中,输入文件名即可。五思考题总结实验中在编辑、编译、运行等各环节中所出现的问题及解决方法。2高级语言程序设计实验指导书3.63.73.8 可以,输出字符范围内,用整型和用字符型作用相同。3.9 2.5 3.53.103.12实验2 数据类型、运算符和表达式一实验目的1了解语言中数据类型的意义;2掌握不同数据类型之间的赋值的规律;3学会有关C语言的有关运算符,以及包含这些运算符的表达式,特别是是+和运算符的使用。4进一步熟悉C程序的编辑环境。二实验内容1用printf函数来输入表达式运行结果2观察实验步骤中表达式的结果三实验环境PC微机DOS操作系统或 Windows 操作系统Turbo C 程序集成环境四实验步骤1当x=5,y=6,z=7时xxx!=yx=z-2x=x-2x=zxn、mn、mn和m=n 的情况各取一组数据进行测试,检查程序的正确性。 (3)修改程序,把两个函数分别放在两个程序文件中,作为两个文件进行编译、链接和运行。 5整数a,b的最大公约数是指既能被a整除又能被b整除的最大整数。整数a,b的最小公倍数是指既是a的倍数又是b的倍数的最小整数。编写两个函数,一个函数gcd()的功能是求两个整数的最大公约数,另一个函数mul()的功能是求两个整数的最小公倍数。 要求:(1)两个整数在主函数中输入,并在主函数中输出求得的最大公约数和最小公倍数。 (2)首先将两个整数a和b作为实参传递给函数gcd(),求出的最大公约数后,由函数gcd()带值返回主函数,然后将最大公约数与两个整数a、b一起作为实参传递给函数mul(),以此求出最小公倍数,再由函数mul()带值返回主函数。 (3)修改函数gcd(),函数gcd()采用递归调用的编写方法,两个整数a和b的最大公约数的递归公式是:如果b=0,那么gcd(a,b)=x,否则gcd(a,b)= gcd(b,a%b)。 然后将最大公约数与两个整数a、b一起传递给函数mul(),求出最小公倍数,再由函数mul()将最小公倍数返回主函数。 (4)修改程序,采用全局变量的处理方法,将最大公约数和最小公倍数都设为全局变量,分别用函数gcd()和函数mul()求最大公约数和最小公倍数,但其值不是由函数返回,而是通过全局变量在函数之间传递的特性将结果反映在主函数中。五思考题1 小结函数的定义及调用方法;函数的定义是指对函数功能的确立,包括指定函数名,函数值类型,形参及其类型。函数体等,它是一个完整的,独立的函数单位。函数的调用方式有函数语句,函数表达式,函数参数。2 小结函数中形参和实参的结合规则;C语言规定,实参变量对形参变量的数据传递是“值传递”,即单向传递,只由实参传给形参,而不能由形参传给实参,这是和FORTRAN不同的。在内存中,实参单元与形参单元是不同的单元。 南昌大学实验报告-实验5 数 组学生代号: 信 念 学号:5215201314 专业班级: 网络间谍088 实验类型: 验证 综合 设计 创新 实验日期: 实验成绩: 一实验目的1掌握数组的基本概念,包括:数组的定义、数组的类型、数组的初始化、数组的赋值、数组元素下标的范围、数组元素的正确以及引用数组元素的输入/输出。 2掌握字符数组与字符串的使用方法。理解字符数组与其它数组的区别、理解字符串及其特点。掌握常用的字符串处理库函数的用法并清楚对字符串的简单处理。 3掌握与数组相关的算法,包括排序算法和查找算法等。 二实验内容有关数组的程序设计三实验环境PC微机DOS操作系统或 Windows 操作系统Turbo C 程序集成环境四实验步骤1编程实现:对任意一个一维数组,从中找出数组元素的最大值和最小值。 要求:(1)数组为整型数组(10个元素)。(2)使用scanf函数实现数组元素的输入。在输入前给出必要的提示。(3)输出时给出必要的说明,首先输出原始的10个元素,换行后输出最大值以及最大值在数组中的位置、最小值以及最小值在数组中的位置。 (4)如果现改为20个元素的数组,怎样修改程序?修改程序后,运行程序进行检查。如果需要数组元素不断改变,应怎样修改程序? (4)如果现改为20个元素的数组,应该将10改为20。如果需要数组元素不断改变,则应该重新输入。2编程实现:在给定的字符串中查找满足条件的第一个字符。要求:(1)字符串采用初始化的方式处理。(2)通过scanf函数读入一个任意字符。(3)在字符串中查找该字符,如果存在该字符,输出该字符在字符串中的位置以及相应的说明。如果不存在该字符,则要给出相应的信息。3编程实现:首先任意输入一个大于2且小于10的整数n,再输入一个由n决定的二维整型数组(n n),形成n n阶矩阵,将矩阵中最大元素所在的行和最小元素所在的行对调后,再输出该矩阵(注意:数组不允许动态定义)。 例如:原始数据: n=4 结果数据:1 2 3 4 8 11 14 163 5 9 10 3 5 9 10 8 11 14 16 1 2 3 4 15 2 7 6 15 2 7 6 要求: (1)本题中所涉及到的循环都采用for语句。 (2)在输入/输出时进行必要的说明。(3)对输入的210之间的整数(例如4)以n=4的格式输出。(4)输入一个n n矩阵(假定最大值与最小值不在同一行上),输出原始矩阵数据(按上述矩阵形式)。(5)查找最大值与最小值,将矩阵中最大元素所在的行和最小元素所在的行对调,输出对调后的矩阵数据。 (6)修改程序,对最大值与最小值可能出现在一行上的情况做出说明。 (7)对n为3,4,5时,输入数组元素是要注意哪些问题?执行程序,检查程序的正确性。 南昌大学实验报告-实验6 指针 学生代号: 信 念 学号:5215201314 专业班级: 网络间谍088 实验类型: 验证 综合 设计 创新 实验日期: 实验成绩: 一实验目的1掌握指针的基本概念和基本用法。包括:变量的地址和变量的值,指针变量的说明、指针变量的初始化、指针的内容与定义格式、指针的基本运算等;2掌握数组与指针的关系并能够利用指针解决数组的相关问题;3掌握字符串与指针的关系并能够利用指针处理字符串的问题;4掌握指针与函数的关系并能够利用指针处理函数问题;5了解指向指针的指针的概念及其使用方法;6能够使用指针进行程序设计。二实验内容有关指针的程序设计三实验环境PC微机DOS操作系统或 Windows 操作系统Turbo C 程序集成环境四实验步骤1编程实现:任意输入的10个数,求其平均值。 要求: (1)10个数采用scanf语句读入。 (2)利用指针实现对这10个数的访问。 (3)要求平均值的精度为小数后面2位。 2编程实现:将一个任意整数插入到一个已排序的整数数组中,插入后数组中的数仍然保持有序。 要求: (1)整数数组由初始化方式输入。任意整数由scanf函数输入;(2)实现过程采用指针处理;(3)输出原始数组数据以及插入数据后的数组数据并加以相应说明。3编写函数newcopy(char *new,char *old),它的功能是删除old所指向的字符串中的小写字母,并将所得到的新串存入new中。 要求: (1)在主函数中以初始化方式输入一个字符串;(2)调用newcopy()函数;(3)在主函数中输出处理后的结果。4编程实现:输入三个整数,按由大到小的顺序输出。 要求: (1)通过scanf函数输入三个数据并存入三个变量中;(2)利用指针实现从大到小输出;(3)修改程序,将三个整型数据改为字符型数据,输入三个字符,按从大到小数顺序输出;(4)修改程序,将三个字符型数据改为字符串数据,输入三个字符串,按从小到大顺序输出;(5)体会指针对不同数据处理的特点。 五思考题小结函数指针、数组指针、字符串指针的使用。实验7 结构体与公用体一实验目的1理解结构体类型的含义;掌握结构体类型变量的定义方法和使用;结构体类型变量的说明以及初始化方法。2理解结构体与数组的区别;掌握结构体类型数组的概念、定义和使用方法。 3掌握链表的概念,初步学会对链表进行操作,包括建立链表、输出链表。 4掌握共用体的概念与使用。 二实验内容有关结构与共同体的程序设计三实验环境PC微机DOS操作系统或 Windows 操作系统Turbo C 程序集成环境四实验步骤1编写程序,输入今天的日期,计算今天在本年中是第几天。 要求: (1)建立结构体变量;(2)利用scanf函数输入年、月、日; (3)输出格式是:The day is the ?day;(4)修改程序,判断某天是某年的第几天。(提示:需要对闰年做判定) 2编程实现:在一个结构数组中,存有三个人的姓名和年龄,输出三人中年龄居中者的姓名和年龄。 要求: (1)利用指针实现处理过程。 (2)三个人的数据采用初始化方式输入。 (3)修改程序,将(2)改为采用scanf函数读入方式。 3编写一个函数inGrade(),其功能是输入学生数据;编写函数aveGrade(),其功能是计算学生的平均成绩;编写函数maxGrade(),其功能是查找平均成绩最高的学生的数据;编写函数out Grade(),其功能是输出学生的成绩数据。现有15名学生的数据信息,每个学生的数据信息包括学号、姓名、4门课程(programmer、database、network、operat-system)的成绩。 要求: (1)首先在主函数中调用函数inGrade()从键盘输入15个学生数据;(2)其次在主函数中调用函数aveGrade()计算15名学生的4门课程的平均成绩。 (3)然后在主函数中调用maxGrade()查找平均成绩最高的学生的数据(包括学号、姓名、4门课的成绩、平均分)。 (4)最后在主函数中调用函数out Grade(),输出该学生的数据信息。 (5)修改程序,将函数maxGrade()的功能改为对所有学生按平均成绩进行排序。并在主函数中调用它,之后输出所有学生的已排序的数据表。4编写程序:建立一个学生数据链表,每个结点信息包括如下内容:学号、姓名、性别、年龄和专业。对该链表作如下处理:(1)输入一个学号,如果链表中的结点中包含该学号,则将此结点删去(最多只有一个节点)。(2)输入一个专业,如果链表中的结点包含该专业,则将此结点删去(可能有多个节点)。五思考题叙述链表的概念,小结对链表的各种操作。实验8 文 件一实验目的1掌握文件的基本概念,包括:文件与文件输入/输出的基本概念、C语言中文件的组织形式、文件的一般操作步骤、文件的基本操作及其特点。2掌握常用文件操作函数的使用,如文件的打开/关闭、文件的读/写等操作。3掌握对文件的简单操作,应用文件系统进行程序设计。二实验内容有关文件的程序设计三实验环境PC微机DOS操作系统或 Windows 操作系统Turbo C 程序集成环境四实验步骤1编程实现:将一个实数f=555678和一个整型数组a5的数据写到磁盘文件TEXTdat中,然后再读回到另一个实型变量ff及另一个整型数组b5中。 要求: (1)对整型数组a5采用初始化方式,对一个实数赋初值f=555678。 (2)建立一个磁盘文件TEXTdat。将上述初始化的数据写入该文件。 (3)重新打开文件TEXTdat,将该文件中的数据读入到一个实型变量ff和一个整型
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版安置房买卖合同范本与专项服务保障
- 2025版智能设备研发合作购销合同范本
- 2025版研学旅行合同范本知识拓展之旅
- 二零二五版快递物流包装运输优化升级合同
- 二零二五年度数字经济担保合同投标授权保证书
- 2025版有机肥料产品代理采购合同样本
- 二零二五年度文化活动策划服务合同模板
- 二零二五年度二手车辆转让协议
- 二零二五版太阳能光伏零件采购合同
- 二零二五年度中小学信息化教学设备供应合同
- 蜂种买卖合同
- 《智能产线设计与仿真》课程标准
- 2024-2029年高速示波器行业市场现状供需分析及市场深度研究发展前景及规划投资研究报告
- 人教版八年级下册数学期末40道压轴题训练(解析版)
- 急救药品作用及不良反应护理课件
- 2022年全国统一高考山东卷物理试卷
- 生产车间布局规划
- 湖北省常见犯罪量刑指导意见实施细则
- 陶行知教育名篇读书分享ppt
- 2022-2023年医疗招聘药学类-药剂学高频考点题库带答案
- ICU 危重患者CVC 及PICC 导管的留置选择及护理研究新进展
评论
0/150
提交评论