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

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

哈尔滨工程大学

《程序设计基础》实验报告

基础实践一

姓名:班级:

学号:

实验时间 :2018年5月10日成绩

哈尔滨工程大学计算机基础课程教学中心

实验题目 1:输入两个整数数组,每个数组有五个整数,将两者和并

并排列输出。

设计思想:

定义三个数组 , 将两组数据存储到第三个数组中 , 再用冒泡排序对其由大到小排序并输出。

实验代码及注释:

#include

#include

#define N 10//宏定义

int main()

{

int a[5],b[5],c[N];//第一组数据,第二组,合并数组int i,j,t;//循环变量,中间变量

printf("输入第一组数据 :\n");//输入数据

for(i=0;i<5;i++)

scanf("%d",&a[i]);

printf("输入第二组数据 :\n");

for(i=0;i<5;i++)

scanf("%d",&b[i]);

for(i=0;i<5;i++)

{

c[i]=a[i];//两组数据合并

c[i+5]=b[i];

}

for(i=0;i

冒泡排序从大到小

{

for(j=0;j

{

if(c[j]

{

t=c[j];

c[j]=c[j+1];

c[j+1]=t;

}

}

}

printf("合并并由大到小排列后数据为:\n"); for(i=0;i<10;i++)

printf("%d\t",c[i]);

//排序 : 冒泡 , 选

择 , return 0;

}

验证与结论:

总结与心得体会:数组合并比较简单但要防止数组越界,数组存储数

据是从第 0 位开始,故要多加注意。冒泡选择是最基础的排序算法必

须掌握。

实验题目 2:某公司生成 5 种产品,每周记录生产的每种产品数量和

销售数量。每个月月末,公司将对其生产规划进行评估。该评估需要

以下一个或多个信息。

每周生成和销售的数量;

所有生产产品的总量;

所有销售产品的总量;

每种产品生产和销售的总量。

假设生产和销售的产品和销售分别用二维数组M和 S表示,如下所示。其中 M[i][j]表示第i周生产第j种产品的数量。S[i][j]表示第i

周销售第j 种产品的数量。假设使用一维数组C来表示每种产品的价格。其中, C[j] 表示第 j 种产品的价格。数组 M、S 和 C 的值都在程序中输入。

设计思想:声明四个数组函数:每周生成和销售的数量,所有生产产

品的总量,所有销售产品的总量,每种产品生产和销售的总量。然后

直接调用使其对主函数中数组值直接改变,最后用循环输出。

实验代码及注释:

#include

#include

void money(double mva[5][6],double m[5][6],double c[6]);//函数声明

void sum1(double sweek[5],double m[5][6]);

void sum2(double mpr[6],double m[5][6]);

double sum3(double m[5]);

int main()

{

int i,j;//行,列

double M[5][6],S[5][6],C[6];//第几周生产第几种产品的数量, 第几周销售第几种产品的数量, 每种产品的价格

double

Mvalue[5][6],Svalue[5][6],Mweek[5],Sweek[5],Mproduct[6],Spr oduct[6];

double Mtotal,Stotal;

for(i=1;i<=4;i++)

{

for(j=1;j<=5;j++)

{printf("请输入第%d周生产第%d种产品的数量:",i,j);

scanf("%lf",&M[i][j]);

printf("请输入第 %d 周销售第 %d 种产品的数量:",i,j);

scanf("%lf",&S[i][j]);

}

}

printf("\n");

for(j=1;j<=5;j++)

{

printf("请输入第 %d种产品的价格 :",j);

scanf("%lf",&C[j]);

}

printf("\n");

money(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种产品的价值%.2lf\n",i,j,Mvalue[i][j]);

printf("第%d周销售第%d种产品的价值%.2lf\n",i,j,Svalue[i][j]);

printf("在本月里生成第%d种产品的价值%.2lf\n",j,Mproduct[j]);

printf("在本月里销售第%d种产品的价

相关文档
最新文档