西南交通大学计算机实习报告

上传人:cn****1 文档编号:460007722 上传时间:2023-07-08 格式:DOC 页数:15 大小:270.50KB
返回 下载 相关 举报
西南交通大学计算机实习报告_第1页
第1页 / 共15页
西南交通大学计算机实习报告_第2页
第2页 / 共15页
西南交通大学计算机实习报告_第3页
第3页 / 共15页
西南交通大学计算机实习报告_第4页
第4页 / 共15页
西南交通大学计算机实习报告_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《西南交通大学计算机实习报告》由会员分享,可在线阅读,更多相关《西南交通大学计算机实习报告(15页珍藏版)》请在金锄头文库上搜索。

1、暑期计算机实习报告暑期计算机实习报告实习时间段2009年7月19日7月23日上午9:0012:00实习地点7307实习目的计算机实习是本科计算机基础教学的一个重要环节。它对于巩固学生的计算机基础知识,增强学生的计算机应用水平,改善学生的知识结构,具有重要意义。本课程的教学目的是:通过系统的上机实习,使学生的计算机基础知识与基本操作技能得到进一步的巩固,提高学生的编程能力和用机水平,培养学生用计算机分析与解决问题的意识,为后续课程打下基础。实习内容本实习要求完成如下三项任务:1.巩固所学的计算机基本知识和基本操作技能,包括:(1)练掌握正确的键盘指法和英文盲打技术;(2)能熟练使用Windows

2、操作系统;(3)熟练掌握Word、Excel、PowerPoint等办公自动化软件;能使用网络获取、发送信息;用PowerPoint制作一组幻灯片(幻灯片所表述的主题自定),或用Excel绘制出图1所示的sin(x)、cos(x)函数曲线2.计算机语言及编程用本学期已学过的VC+语言编程。编程题目及要求由指导教师指定(可参考附录中提供的题目)。3.提交一份实习报告(要求打印)实习报告不得少于1000字:主要总结实习心得和实习成果(全部程序及计算结果或图形以及PowerPoint幻灯片)。实习成果:1程序一 题目:用牛顿迭代法解方程 ( 提示:迭代公式为 迭代初值可取0.5 )。(1) 算法原理

3、:牛顿迭代法是以微分为基础的,牛顿迭代法是取x0之后,在这个基础上,找到比x0更接近的方程的跟,一步一步迭代,从而找到更接近方程根的近似跟。方法使用函数f(x)的泰勒级数的前面几项来寻找方程f(x) = 0的根。设r是f(x)=0的根,选取x作为r初始近似值,过点(x0,f(x0))做曲线y=f(x)的切线L,L的方程为y=f(x0)+f(x0)(x- x0),求出L与x轴交点的横坐标x1= x0-f(x0)/f(x0),称x1为r的一次近似值,过点(x1,f(x1))做曲线y=f(x)的切线,并求该切线与x轴的横坐标x2= x1-f(x1)/f(x1)称x2为r的二次近似值,重复以上过程,得

4、r的近似值序列 xn,其中xn +1= xn -f(xn)/f(xn),称为r的n+1次近似值。然后用一层循环。(2)程序流程图:子函数算法描述:定义子函数中的变量x,f0d,f0;x X0当fabs(f0)1e-6时f0=x*exp(x)-1;f0d=(x+1)*exp(x);x=x-f0/f0d;主函数算法描述:定义主函数中的变量x0;输入x0的初始值;调用子函数fun;输出方程x*ex-1=0的根。(3)变量的说明:主函数中的double型变量x0,是整个方程解的初始值,通过对它的附值可以改变牛顿迭代法的初值。子函数中调用函数exp和fabs,定义子函数中的变量x,f0d,f0,其中x等

5、于x0的值。然后经过循环比较达到fabs(f0)靠近1e-6的目的,最后返回x即为方程的解。(4)使用方法:本程序可以通过改变根初值,通过牛顿迭代法得到方程的根。(5)源程序:第 1 页 共 14 页#include #include using namespace std;int main() double fun(double x0); double x0; cout请输入x的初始值:x0; cout方程x*ex-1=0的根是:= 1e-6); return x;(6)程序运行结果: 2程序二题目:输入学生成绩单,并进行统计,打印出统计表。(1) 算法原理:学生成绩单的打印是非常常用的一个

6、内容,通过这个程序的运行可以大大减轻成绩统计的负担,只需要将学生的成绩育学号一一输入进去即可得到一张经过统计的成绩单,其中包括语文,数学,英语,化学,物理的各科分数,同时还统计该班不及格的总人数以及不及格率。全程序应用二级数组的方法存储美个人各科的分数,再通过数组的方式进行统计。(2) 程序流程图:定义int型变量I,j,二级数组a86;定义double型变量l用来存储不及格率;i 0;当i8时;j 1;当j6时;输入aij;jj+1;i i+1;i 0;当i8时; j 1;当j6时;T aij60FK+;jj+1;ii+1;通过l=(float)k/40得到本班的不及格率;输出这个班的不及格

7、人数k以及不及格率l。(3) 变量说明:这个程序定义了一个二级数组变量a86,用来存储同学的学号和各科的分数,另外为了方便读入每个数组数,定义了两个int型变量i和j,用来充当循环变量,在读完数组之后,要通过筛选将这些分数中的不及格的数目统计出来,因此定义了一个int型变量k,用来累计不及格数,要统计不及格率,所以定义了double型变量l来统计不及格率。(4) 使用方法:本程序只需输入每个同学的学号和每科的成绩即可输出一张统计表格来,并且统计出本班的不及格数和不及格率。(5) 源程序:#include#includeusing namespace std;void main()int i,j

8、,k=0,a86;double l;for(i=0;i8;i+)cout请输入第i+1个学生的学号ai0; for(j=1;j6;j+) cout请输入第i+1个学生的第j门成绩aij; coutsetw(12)学号setw(12)语文setw(12)数学setw(12)外语setw(12)物理setw(12)化学endl;cout-endl;for(i=0;i8;i+)for(j=0;j6;j+) coutsetw(12)aij;coutendl-endl;for(i=0;i8;i+)for(j=1;j6;j+) if(aij60) k+;l=(float)k/40;cout该班的不及格科数

9、为kendl挂科率为lendl;(6)程序运行结果:3.程序三:题目:编写求矩阵B ns和C cm相乘的子函数。其中B和C中各元素的值须由文件中读入。(1) 算法原理:采用读与写的形式打开一个已有文件,在打开一个文件的同时,由系统自动地在内存中为该文件开辟一个“缓冲区”,用于临时存储内存和磁盘之间的交换数据;如果一个程序同时打开多个文件,那么系统将自动地在内存中为每个文件开辟单独的缓冲区,并编上相应的号码,便于进行操作时互相干扰。文件读入本程序采用的这种读入方式必须先预设一个文件,保存然后才能调用此文件中的元素,应用程序中的自定义函数完成矩阵相乘。(2) 程序流程图:主程序描述:定义int型变

10、量I,j,s, a1010,b1010,c1010;打开文件“1.txt”TF输出请输入矩阵B ns和C cm中的n,s,m(其中s和c必须相等) :;输出:“打开文件错误”;读入n,s,m;将矩阵的元素分别输入到数组aij; bij;调用子函数f(a,b,c),计算两矩阵相乘的结果,并将结果输入到矩阵cij中;输出“矩阵cij”。子函数算法描述:定义int型变量I,j,k, a1010,b1010,c1010;i 0;当im时;j 0;当jn时;k0;当km时;cij=cij+aik*bkj;kk+1jj=1;iI=1;(3) 变量说明:本程序采用指针,数组,文件读取的方式开始矩阵的乘积运算

11、,其中涉及函数的计算和编辑,变量在程序运算的过程中多次运用,很好地完成了每个矩阵的元素相乘计算,然后通过返回值的形式把矩阵输出来,通过指针传递的形式把每个元素和相对的元素相乘。其中a1010,int b1010用来存储两个矩阵,再设一个矩阵cij用来存储两个矩阵相乘的结果;子函数中又设了三个变量I,j,k,用来充当循环变量。(4) 使用方法:建立txt文件,输入每个矩阵的元素值,然后输入n,s,p的数据,经过程序的运算可以得到新的矩阵。(5) 源程序:#include#include using namespace std;int n,s,m; void f(int a1010,int b1010,int c1010)for(int i=0;im;i+) for(int j=0;jn;j+) for(int k=0;km;k+) cij=cij+aik*bkj;void main() int i,j,s; int a1010,b1010; static int c1010 ifstream ofile(d:1.txt,ios:in); if(!ofile) cout打开文件错误endl;elsecoutnsm; for(i=0;in;i+) for(j=0;jaij; for(i=0;is;i+) for(j=0;jm;j+)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号