201*级水利工程测量实习指导书
水利工程测量学B教学实习指导书班级:指导教师:院系:时间:
测量实习指导书
1实习目的与要求
地形图测绘是一门实践性很强的课程,为进一步巩固和深化课堂教学内容,培养学生运用所学测量学基本理论和基本技能解决实际问题的能力,加强基本功训练,培养学生吃苦耐劳、团结协作的集体精神,根据教学计划安排,于201*年7月1日~7月12日安排为期两周的集中教学实习,其目的与要求为:
(1)熟练掌握常用测量仪器(水准仪、全站仪)的使用方法。(2)掌握图根导线测量,普通水准测量的观测方法和计算方法。(3)了解全站仪测图的基本方法和测图过程。
(4)掌握数字测图的基本要求和成图过程,掌握大比例尺数字测图方法和数字成图
软件的使用。
2实习任务与计划
1.图根控制测量(包括选点、打桩、观测和计算);2.1:500校园数字平面图。
3.地形图数字化实习内容实习动员、借领仪器、野外选点、打桩、水准仪i角检验时间安排任务及要求踏勘选点,做好实习前的准备工作;熟练经纬仪、水准仪及cass软件的使用按技术要求完成图根点的标定,并做好观测前的准备工作,完成水平角观测、垂直角观测和距离及水准测量和图根点的坐标及高程计算工作按要求完成数字测图的全部工作利用所学软件将外业采集的数据转化为数字,按要求整理资料,并编写实习报告,实习总结7.1图根控制方案制定、及控制网观测7.2~7.2大比例尺野外数字地形图测绘7.3~7.10数字地形图的室内绘制,资料整理7.11~7.12及上交、编写实习报告,实习总结
3实习组织
实习组织工作由指导教师全面负责,担任实习指导工作。分为12个实习小组,每组10人(其中一组11人),设组长1人,实行组长负责制,负责全组的实习分工和仪器管理。
4注意事项
(1)实习中,学生应严格遵守“测量仪器、工具的正确使用和维护要求”、“测量资料的记录要求”以及有关实验室规则。
(2)实习期间,小组组长应切实负责,合理安排小组工作,应使每一项工作都由小组成员轮流担任,使每人都有练习的机会,切不可单独追求实习进度。
(3)实习中,应加强团结。小组内、各组之间、各班之间都应团结协作,以保证实习任务的顺利完成。
(4)实习期间,要特别注意测量仪器的安全,各组要指定专人妥善保管仪器、工具。每天出工和收工,都要按仪器清单清点仪器和工具数量,检查仪器和工具是否完好无损。发现问题要及时向指导教师报告。
(5)测量仪器设备使用、维护与外业手簿纪录之要求
①领取仪器时必须检查:仪器箱盖是否关妥、锁好;背带、提手是否牢固;脚架与仪器是否相配,脚架各部分是否完好,脚架腿伸缩处的连接螺旋是否滑丝。要防止因脚架未架牢而摔坏仪器,或因脚架不稳而影响作业。
②打开仪器箱时应注意:仪器箱应平方在地面上或其它台面上才能开箱,不要托在手
上或抱在怀里开箱,以免将仪器摔坏。开箱后未取出仪器前,要观察仪器放置的位置和方向,以免用毕装箱时因安放位置不正确而损坏仪器。严禁在仪器箱子或者三脚架上就坐。
③自箱内取出仪器应注意:无论何种仪器,在取出前一定要先放松制动螺旋,以免取出仪器时因强行扭转而损坏制动装置、微动装置,甚至损坏仪轴系。自箱内取出时,应一手握住照准部支架,另一手扶住基座部分,轻拿轻放,不要用一只手抓仪器。自箱内取出仪器后,要随即将仪器箱盖好,以免沙土、杂草等不洁之物进入仪器箱。还应防止搬动仪器时丢失附件。取仪器及使用过程中,要注意避免触摸仪器的物镜、目镜,以免玷污而影响成像质量。不允许用手指或手帕等擦仪器的目镜、物镜等光学部分。
④观测员将仪器安置在脚架上时,一定要拧紧连接螺旋和脚架制紧螺旋,并由记录员复查。否则,由此产生的仪器事故,由两人分担责任。在安置仪器时,特别是在对中、整平后以及迁站前,一定要检查仪器与脚架的中心螺旋是否拧紧。观测员必须始终守护在仪器旁,注意过往行人、车辆,防止仪器翻倒。若发生仪器事故,要及时向指导教师报告,不得隐瞒不报,严禁私自拆卸仪器。
(6)观测数据必须直接记录在规定的手簿中,不得用其它纸张记录再行转抄。严禁擦拭、涂改数据,严禁伪造成果。在完成一项测量工作后,要及时计算、整理有关资料并妥善保管好记录手簿和计算成果。
(7)严格遵守实习纪律。在测站上不得嬉戏打闹,工作中不看与实习无关的书籍和报纸。未经指导老师允许,不得缺勤、不得私自外出和游泳,否则后果自负。
5实习成绩评定方法
(1)实习成绩评定主要依据:
①实习期间的表现,主要包括:出勤率、实习态度、遵守纪律情况、爱护仪器工具情况。
②操作技能,主要包括:对理论知识的掌握程度、使用仪器的熟练程度、作业程序是否符合规范要求等。
③手簿、计算成果和成图质量,主要包括:手簿和各种计算表格是否完好无损,书写是否工整清晰,手簿有无擦拭、涂改,数据计算是否正确,各项限差、较差、闭合差是否在规定范围内。地形图上各类地物、地形要素的精度及表示是否符合要求,文字说明注记是否规范等。
④实习报告,主要包括:实习报告的编写格式和内容是否符合要求,编写水平,分析问题、解决问题的能力及有无独特见解等。
(2)在实习期间,学生如有下列情况,指导教师可视情节严重程度予以处理:
①实习中无论何种原因发生摔损仪器事故,其主要责任人的实习成绩降1~2个档次。②实习中凡违反实习纪律;缺勤天数超过实习天数的三分之一;发生打架事故;私自离校回家;未交成果资料和实习报告;抄袭成果资料和实习报告等,实习成绩均为不及格。(3)必要时,实习指导教师可采用口试、笔试或仪器操作考核等方式进行成绩评定。
6成果整理及实习报告编写
(1)实习成果的整理
在实习过程中,所有外业观测数据必修记录在测量手簿上,如遇测错、记错或超限应按规定的方法改正;内业计算应在规定的表格上进行。实习结束时应对成果资料进行编号。(2)实习报告的编写
实习报告是对整个实习的总结,编写格式和内容如下:
①封面注明实习名称、地点、起止时间、班级、组别、编写人及指导教师姓名。②前言说明实习的目的、任务及要求。
③实习内容:实习项目、测区概况、作业方法,技术要求,计算成果及示意图,本人完
成的工作及成果质量。7上交资料
各组应对完成的成果、资料按规范进行严格检查。实习结束,应提交以下资料:1.每个小组应提交的成果(每样一份):1).水准仪i角检验报告;
2).导线测量:导线测量手簿,导线略图;
3).水准测量:水准测量手簿,水准路线略图、水准测量平差计算表;4)本组野外采集的数据文件(总);
5)电子版图*.dwg(总)和一幅加图框图50cm*50cm(一份)。2.小组每个人应提交下列资料(每个组员都要提交一份):1).导线计算表(要求每人假定一套起始数据,各不相同);2).视距测量观测记录表;3).实习报告1份。
8实习报告的编写
实习结束后,每人应编写一份实习报告,要求内容全面、概念正确、语句通顺、文字简练、书写工整、插图和数表清晰美观,并按统一格式编号并装订成册,与实习资料成果一起上交。要求用A4纸打印。
实习报告按以下提纲编写:1.序言
实习(或作业)名称、目的、时间、地点;实习(或作业)任务、范围及组织情况等。2.测区概况
测区的地理位置、交通条件、居民、气候、地形、地貌等概况,测区已有测绘成果及资料分析与利用情况、标石保存情况等。
3.平面控制网的布设及施测
简要叙述平面控制网的布设及施测中的工作:平面控制网的布设方案及控制网略图(在图中标出各角的角度,各边的距离);
4.高程控制网的布设及施测:高程控制网的布设方案及控制网略图(在图中标出各相邻点的高差,距离)
5.实习成果。
6.实习中发生、发现的问题及处理情况。7.201*字的实习收获,体会及建议(手写)。8.附录:数据文件。
扩展阅读:201*级实习指导书
长江大学机械学院201*级《计算机上机实习》指导书
一.完成内容
每个学生须完成两大题内容。第一大题为必作内容,第二、第三大题为选作内容,可从其中任选
择一题。
二.实习要求
学生按规定的上机时间安排表上机,不得无故迟到、早退、旷课,上机时间内不做与实习无关的
内容。
三.实习报告要求
程序上机通过后,应编写实习报告。实习报告应包括对题目的分析设计与说明、程序框图、源程
序清单、原始数据及结果、程序有待改进的意见,对本次实习的意见与建仪、收获等。要求实习报告为机算机打印稿。报告封面采用统一格式,见附一。
四.答辩
完成编程和实习报告后,每个学生还须通过答辩。答辩时由学生自己先讲述4-5分钟左右,内容包括:程序设计思路、程序结构介绍、程序运行演示等。然后问答指导教师提出的若干问题。指导教师根据学生实习阶段的出勤、上机、程序及答辩的情况确定学生的实习成绩。
《计算机上机实习》题目一学生成绩管理
一.建立原始数据文件
1.用文字处理软件(用记事本\\写字板\\word\\tc,不能用excel)新建一个文本文件,将本班M名学生在本学期的N门课程成绩录入到这个文件中,按如下形式存放。要求:学生人数M不少于30人,课程门数N不小于5,姓名为本班的真实姓名。
学号姓名英语数学大学物理机械制图C程序设计注:表头可以不录入
1张国庆7680858283
2王艳9190889275
3李小华5665706966
4王红7888908576
5胡小明7888908576
......
2.将学生的基本信息按如下形式存入第二个文件中
学号姓名性别年龄职务注:表头可以不录入
1张国庆男19无
2王艳女20文体委员3李小华男20生活委员
4王红女21团支书
5胡小明男19无
......
3.将本学期的N门课程及学分输入到第三个文件中。形式如下:
编号课程名称课程学分注:表头可以不录入1英语5.02数学5.0
3大学物理4.0
4机械制图4.55C程序设计4.06上机实习2.0
二.编写一个学生成绩管理程序,要求完成以下功能
1.读取原始数据文件的内容,计算每个学生的加权平均分(保留一位小数,4舍5入),按平均分排名次,平均分相同则名次相同。创建一个数据文件(建议为:文本文件),存放班级的成绩表,按下列式形存放。
学号姓名性别职务英语数学大学物理机械制图C程序设计平均分名次
......
注:计算加权平均分的公式如下
加权平均分课程学分成绩ii1Ni
课程学分ii1N2.分别统计全班每门课的平均分。计算各分数段(=90(优秀)365......
80~89(良好)101112......
......
3.分别统计男生和女生每门课的平均分。结果存放在一个数据文件中
4.输出所有存在不及格课程学生的名单,包括:学号、姓名、性别、不及格课程名称、课程学分及成绩。结果存放在一个数据文件中。
5.输出优秀学生名单,包括:学号、姓名、性别、名门课成绩、平均分和名次。结果存放在一个数据文件中。优秀学生的条件为:1.平均分≥902.名次在本班前3名
3.平均分≥85,并且至少有一门课的成绩为95分
4.平均分≥85,并且至少有二门课的成绩为≥90分
6.输出优秀学生干部名单,包括:学号、姓名、性别、职务、名门课成绩、平均分和名次。结果存放在一个数据文件中。优秀学生的条件为:
1.平均分≥852.名次在本班前20%名
3.平均分≥80,并且至少有一门课的成绩为≥95分
4.平均分≥80,并且至少有二门课的成绩为≥90分
三.题目一的要求1.平均分≥90
2.名次在本班前3名
3.平均分≥85,并且至少有一门课的成绩为95分4.平均分≥85,并且至少有二门课的成绩为≥90分
1.学生及课程数据的表示及文件读写
定义结构体数组表示全班学生的数据及课程的数据,结构体成员中包括学号、姓名、性别、职务成绩等内容。为便于结果的显示、检查,建议文件读写时均采用“文本文件”方式。分别由fscanf()和fprintf()函数实现原始数据的读入和计算结果的输出。凡需输出的内容,除按要求写入文件外,均应同时在屏幕上显示,以便观察计算结果。
2.程序结构要求
为使程序结构清晰,要求将各大题中的所有小问题编成相应的函数,由主函数通过“菜单”方式调用相应的函数。下面列举一个简易的两级“菜单”的例子供参考。
#include"stdio.h"#include"conio.h"
voidmain()/*主菜单*/{charch1;
do{clrscr();/*清屏*/printf("\\n\\n\\n\\n\\n\\n\\n\\n\\n");printf("**************C语言程序设计上机实习\\n");printf("---------------------------------------------------\\n\\n");printf("1学生成绩管理\\n\\n");printf("2破译密码\\n\\n");
printf("3显示心形\\n\\n");
printf("4退出\\n\\n");printf("输入选择序号\\n");while((ch1=getchar(),ch1!="1"&&ch1!="2"&&ch1!="3"&&ch1!="4"));switch(ch1)
{case"1":section1();break;case"2":section2();break;
case"3":section3();break;
case"4":exit(0);}}while(1);}
section1()/*第1个2级菜单*/{charch21;
do{clrscr();printf("\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n");printf("********************学生成绩管理系统**********************\\n");printf("------------------------------------------------------------------------------------------------\\n\\n");printf("1.读入原始数据并显示2.计算平均分及名次\\n\\n");
printf("3.输出课程平均分和各分数段人数4输出男生和女生课程平均成绩\\n\\n");
printf("5.统计不及格情况6.输出优秀学生\\n\\n");printf("7.输出优秀学生干部8.返回上级菜单\\n\\n");printf("输入选择序号\\n");
while((ch21=getchar(),ch21!="1"&&ch21!="2"&&ch21!="3"&&ch21!="4"&&ch21!="5"&&ch21!="6"
&&ch21!="7"&&ch21!="8"));
switch(ch21)
{case"1":function1_1();break;case"2":function1_2();break;case"3":function1_3();break;case"4":function1_4();break;case"5":function1_5();break;
case"6":function1_6();break;
case"7":function1_7();break;
case"8":return(0);}}while(1);}
section2()/*第2个2级菜单*/{charch22;
do{clrscr();printf("\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n");printf("*****************破译密码****************\\n");printf("----------------------------------------------------------------\\n");printf("1.运行\\n\\n");printf("2.返回上级菜单\\n\\n");printf("输入选择序号\\n");while((ch22=getchar(),ch22!="1"&&ch22!="2""));switch(ch22)
{case"1":function2_1();break;ase"2":return(0);}}while(1);}
section3()/*第3个2级菜单*/{charch23;
do{clrscr();printf("\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n");printf("*****************显示心形****************\\n");printf("-------------------------------------------------\\n");printf("1.运行\\n\\n");printf("2.返回上级菜单\\n\\n");printf("输入选择序号\\n");while((ch23=getchar(),ch23!="1"&&ch23!="2");switch(ch23)
{case"1":function3_1();break;case"2":return(0);}}while(1);}
function1_1()
{printf("加入读入原始数据并显示的程序内容\\n");printf("*********按Enter键继续**********\\n");getchar();getchar();}
function1_2()
{printf("加入计算平均分及名次的程序内容\\n");printf("*********按Enter键继续**********\\n");getchar();getchar();}
function1_3()
{printf("加入计算课程平均分和分数段人数程序内容\\n");printf("*********按Enter键继续**********\\n");getchar();getchar();}
function1_4()
{printf("加入计算男生和女生课程平均成绩程序内容\\n");printf("*********按Enter键继续**********\\n");getchar();getchar();}
function1_5()
{printf("加入统计不及格情况程序内容\\n");
printf("*********按Enter键继续**********\\n");getchar();getchar();}
function1_6()
{printf("加入输出优秀学生程序内容\\n");
printf("*********按Enter键继续**********\\n");
getchar();getchar();}
function1_7()
{printf("加入输出优秀学生干部程序内容\\n");
printf("*********按Enter键继续**********\\n");getchar();getchar();}
function2_1()
{printf("加入破译密码的程序内容\\n");
printf("*********按Enter键继续**********\\n");getchar();getchar();}
function3_1()
{printf("加入显示心形的程序内容\\n");
printf("*********按Enter键继续**********\\n");getchar();getchar();}
题目二.破译密码
1.题目
有一个加密文件,它的密钥是从100至200中的一个素数,加密方法是每三个字母加上密钥中对应的数字,超出26个大写和小写的字母范围的减去26,空格和标点符号不加密。例如,假设密钥为139,要加密的字符串为“Wearestudents”,第一个字母“W”加密为’W’+1=’X’,第二个字母加密后为’e’+3=’h’,第三个字母加密后为’a’+9=’j’,第四个字母加密后为’r’+1=’s’,第五个字母加密后为’e’+3=’h’,第六个字母加密后’s’+9超过了字母范围,所以减去26得,’s’+9-26=’b’,….。
读入已加密的文件,进行破译,将可能的密钥和相应的解密结果输出到另一个文件。
2.编程要点:
1)用fgets函数读入字符串
2)编一个函数处理所有可能的密钥,即计算从100到200的所有素数3)将密钥化成三个元素的整型数组,分别对应百位、十位和个位
4)将所有英文字符按序轮换减去对应的数组元素,原来是大(小)写英文字符超出大(小)写英文字符范围加上26。
3.密码文件内容
Jkfpznfyaijjpwyfhabszxjy,ztbbwlbslyhlmqloyzuzkfsa.
题目三.显示心形
在屏幕上用字符输出一个心形,心形的极坐标方程为r=20(1-sin),x=r*cos,y=5-r*sin。提示:定义字符数组charcs[52][50],先均赋空格,计算出坐标x和y后取整作为字符数组的下标,使该字符取’H’,再输出该数组。
附一
答辩记录
运行情况原始数据成绩排名
平均分和分数段统计男女生成绩
统计不及格统计优秀生统计
优秀学生干部统计破译密码显示心形回答问题1.
2.3.
4.
5.
11101班班级材料
学号201*00742
姓名江一平
指导教师管锋
完成日期201*年1月2日
计算机上机实习
实习报告
(一)题目的分析设计与说明程序要求说明:
1.用文字处理软件(用记事本\\写字板\\word\\tc,不能用excel)新建一个文本文件,将本班M名学生在
本学期的N门课程成绩录入到这个文件中,按如下形式存放。要求:学生人数M不少于30人,课程门数N不小于5,姓名为本班的真实姓名,课程中必须有一门考查课。2.录入本班班级学生信息,内容包含“编号课程名称课程学分”,录入课程学分情况;读取原始数据文件的内容,计算每个学生的加权平均分(保留一位小数,4舍5入),按平均分排名次,平均分相同则名次相同。创建一个数据文件(建议为:文本文件),存放班级的成绩表,按下列式形存放。计算加权平均分的公式如下
加权平均分课程学分成绩ii1Ni
课程学分ii1N3.分别统计全班每门课的平均分。计算各分数段(的班级同学的平均分的文本,运用循环语句及字符串比较函数等,将性别sex与第一个男生做比较,如果比较结果相同则都为男生,输出成绩,计算男生平均分,女生也相同方式;6.编写函数统计不及格情况,按照条件,按照科目顺序以及同学成绩遴选出不及格的同学,输出其相关的信息。(将其读入另外的”不及格表”中);7.编写函数输出优秀学生按照成绩排名输出优秀学生。(将其读入另外的”优秀学生”中);8.编写函数输出优秀学生干部(将其读入另外的”优秀学生干部.txt”中)9.编写菜单,共有8个菜单项,其中7个为题目要求,第8个为退出函数。
2)破译密码
1.求出100-200之间的素数,作为解码的密匙。2.根据要求编写出对应密匙的解码结果。3.输出解码结果。
(二)程序框图
主菜单功能模块图
主函数
学破显生示成译绩心密管理码形
退出3
一级菜单结构图
学生成绩管理系统
6.5.2.3.4.1.输统统统计读出计计计算入优不全男加原秀及班生始权学格数每和平据生情门女均并况课生分显程每及示的门名菜平课次单均平分均
分7.输出优秀学生干部名单8.返回上级菜单破译密码流程图
定义文件型数据的指针变量对密码文件进行读取运用循环语句从101-200之间找出素数对找到的整型素数n/100得到百位n%100/10得到十位n%10得到个位,把他放入一个新的数组中将所有英文字符按序轮换减去对应的数组元素,原来是大(小)写英文字符超出大(小)写英文字符范围加上26。。输出解密结果。。。。。。显示心形步骤图
先定义各数据的定义字符数组类型,并对P做charcs[52][50],先一个宏定义均赋空格计算出x、y的取整输出结作为字符数组的下果。。。。。。标,使该字符取’*’,再输出该数组。5
(三)程序解析
#include"stdio.h"#include"conio.h"#include"stdlib.h"#include#include
#defineM36定义一个全局变量M36为班级学生的人数1.定义两个结构体类型变量,分别包含“学生成绩表”、“学生信息”、“课程与学分设置”、向系统声明这是一个结构体类型,它包括成员列表中不同类型的成员。例如:
structStudent//结构体Student成员中包括序号、姓名、五门课程分数、年龄、职务{intnum;charname[10];charsex[5];intscore[5];intage;charposition[10];}stud[N];
2.准备读入数据
/*读入原始数据并显示的程序function1_1()*/
intfunction1_1(){printf("加入读入原始数据并显示的程序内容\\n");printf("--------------------------------------------------------------------------------\\n");printf("序号姓名理力数学大学物理机械制图C程序设计\\n\\n");文件读入举例如下:
(1)定义文件型数据的指针通过文件指针找到与它关联的文件。
例如定义:
FILE*fp1,*fp2,*fp3;
(2)fp文件指向file1对应学生成绩表,打开文件时通知编译系统一下三个信息:①打开文件的名
字②使用文件的方式③哪一个指针变量指向打开的文件运用如下方式:
fp=fopen(c:\\\\表一.txt","r");//打开文件一,学生成绩表
if(fp==NULL){printf("cannotopenthefile\\n");exit(0);
}
for(i=0;i如上进行比较
主要程序如下:for(i=0;ifor(i=0;ivoidfunction1_4()
{printf("*****************男生和女生课程平均成绩*****************\\n");inti,j,sum=0;structsex1{charsex[6];floatjun[5];}sex[2];
FILE*fp,*fp1;
(1)按照上述,对之前建立的file2.1文件进行读取。
(2)设立一个课程的大循环其间嵌套一个学生的小循环,由第一个科目开始,从第一个学生开始
将第一个学生的sex与字符串“男”进行比较,如果相同就纳入男生成绩总和统计中,并且可求出其平均数,女生也用同样方法输出其平均成绩;接着进行j++,统计第二个科目的男女生平均分,知道所有科目统计结束。for(j=0;j
printf("性别理力数学大学物理机械制图C程序设计\\n\\n");fprintf(fp3,"男生%7.2f%7.2f%7.2f%7.2f%7.2f\\n",aver1[0],aver1[1],aver1[2],aver1[3],aver1[4]);
printf("男生%7.2f%7.2f%7.2f%7.2f%7.2f\\n",aver1[0],aver1[1],aver1[2],aver1[3],aver1[4]);fprintf(fp3,"女生%7.2f%7.2f%7.2f%7.2f%7.2f\\n",aver2[0],aver2[1],aver2[2],aver2[3],aver2[4]);
printf("女生%7.2f%7.2f%7.2f%7.2f%7.2f\\n",aver2[0],aver2[1],aver2[2],aver2[3],aver2[4]);fclose(fp1);fclose(fp2);fclose(fp3);
printf("\\n\\n*********按Enter键继续**********\\n");getchar();getchar();return0;}
统计班级不及格情况:
程序设计思路:读取文件file2.1.txt中学生成绩等相关信息;文件file3.txt中课程学分设置的信息,
并且建立一个新的文件file5.1.txt用于存储新生成的不及格情况统计。
intfunction1_5(){printf("统计不及格情况\\n");printf("--------------------------------------------------------------------------------\\n");(1)读取相关文件的方式如上,此处不再叙述。(2)建立新的文件夹存储新生成的不及格情况统计。程序要点如下:for(i=0;iles[j].les_score,stud[i].score[j]);}}}
}//输出不及格同学的相关信息7.输出优秀学生
intfunction1_6(){
printf("输出优秀学生程序\\n");printf("--------------------------------------------------------------------------------\\n");}建立新的文件存放优秀学生信息
程序要点如下:
if((fp2=fopen("c:\\\\file6_1.txt","w"))==NULL)//打开输入文本文件file6_1.txt{printf("无法打开此文件!\\n");exit(0);}
for(i=0;i=90)n++;}
if(aver[i]>=90||rank[i]=85&&(m>=1||n>=2))){
fprintf(fp2,"%-2d%-6s%3s%6d%8d%8d%8d%5d%8.2f%8d\\n",stud[i].num,stud[i].name,stud[i].sex,stud[i].score[0],stud[i].score[1],stud[i].score[2],stud[i].score[3],stud[i].score[4],aver[i],rank[i]);
printf("%-2d%-6s%2s%6d%6d%6d%8d%6d%7.2f%4d\\n",stud[i].num,stud[i].name,stud[i].sex,stud[i].score[0],stud[i].score[1],stud[i].score[2],stud[i].score[3],stud[i].score[4],aver[i],rank[i]);}}
fclose(fp1);fclose(fp2);
printf("\\n\\n*********按Enter键继续**********\\n");getchar();getchar();return0;}
8.优秀学生干部
intfunction1_7(){printf("输出优秀学生干部内容\\n");printf("--------------------------------------------------------------------------------\\n");inti,j;intm,n;
FILE*fp1,*fp2;intrank[N];floataver[N];
(1)打开file2.1.txt(平均分及名次)、并建立file7.1.txt的文件存储优秀学生干部的信息。(2)设立循环,从第一个学生的第一个科目开始,判断1.平均分≥852.名次在本班前20%
名3.平均分≥80,并且至少有一门课的成绩为≥95分4.平均分≥80,并且至少有二门课的成绩为≥90分直到判断完此学生所有的成绩信息;接着进行第二个同学的判断。最终输出所有优秀学生的信息,信息包括“学号、姓名、性别、职务、名门课成绩、平均分和名次”
程序要点如下:
if((fp2=fopen("c:\\\\file7_1.txt","w"))==NULL)//打开输入文本文件file7_1.txt{printf("无法打开此文件!\\n");exit(0);}for(i=0;i=85||rank[i]=80&&(m>=1||n>=2))){
fprintf(fp2,"%-2d%-6s%3s%10s%6d%8d%8d%8d%5d%8.2f%8d\\n",stud[i].num,stud[i].name,stud[i].sex,stud[i].position,stud[i].score[0],stud[i].score[1],stud[i].score[2],stud[i].score[3],stud[i].score[4
],aver[i],rank[i]);
printf("%-2d%-6s%2s%10s%6d%6d%6d%8d%6d%7.2f%4d\\n",stud[i].num,stud[i].name,stud[i].sex,stud[i].position,stud[i].score[0],stud[i].score[1],stud[i].score[2]stud[i].score[3],stud[i].score[4],aver[i],rank[i])}}}
fclose(fp1);fclose(fp2);9.破译密码
同上面一样,先读入需解密的文件,其主要程序如下:{
printf("破译密码\\n");
printf("--------------------------------------------------------------------------------\\n");FILE*fp1,*fp2;//读取密码源文件charstr[70];
inti,k,n,s[3],count=0;
if((fp1=fopen("c:\\\\密码文件.txt","r"))==NULL)printf("无法打开此文件!\\n");exit(0);}
求出100-200之间的素数,其程序如下:for(n=101;n="a"&&str[i]="A"&&str[i]{
count=count+1;
switch(count%3)//对3取余数,对应这百位,十位,个位。case1:if(str[i]>="a"&&str[i]cs[i][j]="";
for(a=0;a
22
(五)程序有待改进的意见
1.程序中虽然根据加权平均分对班级的同学进行排序,但是并没有按照名次列出清单。解决方法:
可以采用“冒泡法”对排序结果进行编排,是排序内容清晰易懂。
2.程序缺少动态,无法从内部对学生信息,成绩进行修改,整理,或者添加。解决方法:
建立相关的动态链表,可以对信息的处理更快捷。
3.程序运行中出现了关于对数据的处理不合理,有时候产生运用的类型与定义的类型不同而出现警告。
4.大字符的编写内容过于繁杂,内容较多,但是思路比较简单。还可以进行讨论修改。
(六)实习小结
本次实习历经一周半,通过编程我觉得自己学到了不少的东西,虽然有时候有些地方不会编程,去借鉴其他人的成果,但仍有很大的收获,当编程成功时,得到结果是会有一种莫名的喜悦感,不禁觉得c语言编程是一门很有意思的学科。
实习编写的程序所涉及的知识点众多,从最简单的C程序设计到后面运用多处的选择结构,循环结构、数组处理批量的数据到我们近期学习的模块化设计、指针等内容。从中感觉就像是对自己一学期成果的收获,其间的价值远远大于考试的检验。在程序编写过程中,自己也遇到了很多问题,比如最初的在文件导入常常要运用fscanf函数向数值型数组输入数据时,常常忘记运用数值型数组名;在运用指针的过程中出现的不同指针的混用等。这些细微的问题常常导致程序编写的中断,不过好在有大家的帮助,我能够改正出错误使程序的编写能够顺利完成。
此次实习是一次理论与实践相结合的过程,这既考验了我们的知识储备又考验了我们的实践操作能力。同时大家在一起上机实习,遇到不懂的问题,大家可以一起在一块讨论解决问题,无形之中这锻炼了我们的团队合作能力,这也是以后我们步入社会所必备的基本能力。通过此次实习,更加明确了以后努力的方向:
1.要不断培养自己的能力,正如曾经有人这么说道“不要觉得现在学的以
后是用不到的,当你没有去接粗社会的时候,你对他一无所知,现在你学的不仅仅是书,更是培养你的一种能力,只要你没有走出社会,现在学的一切都是有用的,也许它会因此改变你一生。”
2.重视理论的知识与实践的结合。在上机实习之前,对C语言的认识知识停留在课本,虽然不时的有上机课,但是短暂的实践无法弥补强大信息量带来的冲击。实践是检验真理的唯一标准,所以我个人觉得以后可以增加上机实习的课程量以及实践,真正将实践和理论教学结合。
3.培养团队的精神。一座大山的形成不是自然的出现,它是无数的沙土牢牢聚在一起的结果,C语言的编写也是如此,当你在出现问题的时候可以及时有效和队友交流,在处理一些复杂的问题的时候,可以进行讨论,想出一套最可行的最简便的方法,这就是团队所要具备的。在这次实习期间,也很感谢老师以及学长在我出现问题,有时候甚至是很初级的错误的时候能够悉心给我指导。
总体讲来,这次实习让我受益匪浅,这次的上机实习给了我一个锻炼的机会,同时也给了我一面镜子,照出自己的不足之处,相信在以后,我一定会珍惜好每一次的学习机会,不断改进自己。
机械工程学院、材料11101班江一平201*年1月2日
友情提示:本文中关于《201*级水利工程测量实习指导书》给出的范例仅供您参考拓展思维使用,201*级水利工程测量实习指导书:该篇文章建议您自主创作。
来源:网络整理 免责声明:本文仅限学习分享,如产生版权问题,请联系我们及时删除。