计算机科学与技术第5次实验报告

上传人:n**** 文档编号:89408423 上传时间:2019-05-24 格式:DOC 页数:28 大小:272.69KB
返回 下载 相关 举报
计算机科学与技术第5次实验报告_第1页
第1页 / 共28页
计算机科学与技术第5次实验报告_第2页
第2页 / 共28页
计算机科学与技术第5次实验报告_第3页
第3页 / 共28页
计算机科学与技术第5次实验报告_第4页
第4页 / 共28页
计算机科学与技术第5次实验报告_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《计算机科学与技术第5次实验报告》由会员分享,可在线阅读,更多相关《计算机科学与技术第5次实验报告(28页珍藏版)》请在金锄头文库上搜索。

1、哈尔滨工程大学程序设计基础实验报告基础实践一姓 名: 班 级: 学 号: 实验时间: 2018 年 5 月 10 日成绩哈尔滨工程大学计算机基础课程教学中心实验题目1:输入两个整数数组,每个数组有五个整数,将两者和并并排列输出。设计思想:定义三个数组,将两组数据存储到第三个数组中,再用冒泡排序对其由大到小排序并输出。实验代码及注释:#include #include #define N 10/宏定义int main() int a5,b5,cN;/第一组数据,第二组,合并数组 int i,j,t;/循环变量,中间变量 printf(输入第一组数据:n);/输入数据 for(i=0;i5;i+)

2、 scanf(%d,&ai); printf(输入第二组数据:n); for(i=0;i5;i+) scanf(%d,&bi); for(i=0;i5;i+) ci=ai;/两组数据合并 ci+5=bi; for(i=0;iN-1;i+)/冒泡排序从大到小 for(j=0;jN-i-1;j+) if(cjcj+1) t=cj; cj=cj+1; cj+1=t; printf(合并并由大到小排列后数据为:n); for(i=0;i10;i+) printf(%dt,ci); /排序:冒泡,选择, return 0;验证与结论:总结与心得体会:数组合并比较简单但要防止数组越界,数组存储数据是从第0

3、位开始,故要多加注意。冒泡选择是最基础的排序算法必须掌握。实验题目2:某公司生成5种产品,每周记录生产的每种产品数量和销售数量。每个月月末,公司将对其生产规划进行评估。该评估需要以下一个或多个信息。每周生成和销售的数量;所有生产产品的总量;所有销售产品的总量;每种产品生产和销售的总量。假设生产和销售的产品和销售分别用二维数组M和S表示,如下所示。其中Mij表示第i周生产第j种产品的数量。Sij表示第i周销售第j种产品的数量。假设使用一维数组C来表示每种产品的价格。其中,Cj表示第j种产品的价格。数组M、S和C的值都在程序中输入。设计思想:声明四个数组函数:每周生成和销售的数量,所有生产产品的总

4、量,所有销售产品的总量,每种产品生产和销售的总量。然后直接调用使其对主函数中数组值直接改变,最后用循环输出。实验代码及注释:#include #include void money(double mva56,double m56,double c6);/函数声明void sum1(double sweek5,double m56);void sum2(double mpr6,double m56);double sum3(double m5);int main() int i,j;/行,列 double M56,S56,C6;/第几周生产第几种产品的数量,第几周销售第几种产品的数量,每种产品的

5、价格 double Mvalue56,Svalue56,Mweek5,Sweek5,Mproduct6,Sproduct6; double Mtotal,Stotal; for(i=1;i=4;i+) for(j=1;j=5;j+) printf(请输入第%d周生产第%d种产品的数量:,i,j); scanf(%lf,&Mij); printf(请输入第%d周销售第%d种产品的数量:,i,j); scanf(%lf,&Sij); printf(n); for(j=1;j=5;j+) printf(请输入第%d种产品的价格:,j); scanf(%lf,&Cj); printf(n); mone

6、y(Mvalue,M,C);/调用函数 money(Svalue,S,C); sum1(Mweek,Mvalue); sum1(Sweek,Svalue); sum2(Mproduct,Mvalue); sum2(Sproduct,Svalue); Mtotal=sum3(Mweek); Stotal=sum3(Sweek); for(i=1;i=4;i+) for(j=1;j=5;j+) printf(第%d周生产第%d种产品的价值%.2lfn,i,j,Mvalueij); printf(第%d周销售第%d种产品的价值%.2lfn,i,j,Svalueij); printf(在本月里生成第%

7、d种产品的价值%.2lfn,j,Mproductj); printf(在本月里销售第%d种产品的价值%.2lfn,j,Sproductj); printf(在第%d周生产的产品价值%.2lfn,i,Mweeki); printf(在第%d周所有产品的价值%.2lfn,i,Sweeki); printf(在本月里生产所有产品总价值%.2lfn,Mtotal); printf(在本月里销售所有产品总价值%.2lfn,Stotal); return 0;void money(double mva56,double m56,double c6)/第i周生产和销售第j种产品的价值 int i,j; fo

8、r(i=1;i=4;i+) for(j=1;j=5;j+) mvaij=mij*cj;/ printf(第%d周生产第%d种产品的价值%lfn,i,j,mij*cj); void sum1(double sweek5,double m56)/第i周生产和销售的产品的价值 int i,j; for(i=1;i=4;i+) sweeki=0;/数组初始化 for(j=1;j=5;j+) sweeki=sweeki+mij; void sum2(double mpr6,double m56)/在本月生产和销售第j种产品的价值 int i,j; for(j=1;j=5;j+) mprj=0;/数组初始

9、化 for(i=1;i=4;i+) mprj=mprj+mij; double sum3(double m5)/在本月里生产和销售所有产品总价值 int i; double sum3=0; for(i=1;i=4;i+) sum3=sum3+mi; return sum3;验证与结论:总结与心得体会:数组参数形参实质的本质是指针,使用数组函数使得代码看起来更加整洁,可读性更高。当出现大量复制代码时考虑能否用函数统一起来,否则在后期维护上将变得困难许多。实验题目3:编程将一个字符串插入到另一个字符串的第n个位置。设计思想:使用strlen函数计算数组长度,然后使用循环用倒序赋值使a数组在第n个位

10、置及以后字符向后挪数组b长度,再用倒序赋值法将b赋给a的空位。实验代码及注释:#include #include int main() int n,count1,count2,i,j;/位置,字符串长度,循环变量 printf(输入n值:n); scanf(%d,&n); char a20;/默认长度为20 char b20; printf(输入a:n); scanf(%s,a); printf(输入b:n); scanf(%s,b); count1=strlen(a);/计算字符串a与b的长度 count2=strlen(b); for(i=count1-1;i=(n-1);i-)/倒序赋值,使a在第n个位置及以后字符向后挪count2位 ai+count2=ai; i=n-1+count2;/对i重新赋值为n-1+count2 for(j=count2-1;j=0;j-)/倒序赋值将b赋给a空位 ai=bj; i-; printf(新字符串为:); for(j=0;jcount1+count2;j+) printf(%c,aj); return 0;验证与结论:总结与心得体会:输入字符串后末尾会有一个0,在赋值时必须极为小心,有可能会使程序提前终止得不到预期的效果,另外利用strlen函数计算数组长度时不包括末尾的0

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

当前位置:首页 > 高等教育 > 其它相关文档

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