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

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

哈尔滨工程大学《程序设计基础》实验报告

基础实践一

姓名:班级:

学号:

实验时间: 2018 年 5 月 10 日

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

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

设计思想:

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

实验代码及注释:

#include <>

#include <>

#define N 10lf\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种产品的价值%.2lf\n",j,Sproduct[j]);

}

printf("在第%d周生产的产品价值%.2lf\n",i,Mweek[i]);

printf("在第%d周所有产品的价值%.2lf\n",i,Sweek[i]);

}

printf("在本月里生产所有产品总价值%.2lf\n",Mtotal);

printf("在本月里销售所有产品总价值%.2lf\n",Stotal);

return 0;

}

void money(double mva[5][6],double m[5][6],double c[6])//第i周生产和销售第j种产品的价值

{

int i,j;

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

{

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

{

mva[i][j]=m[i][j]*c[j];

// printf("第%d周生产第%d种产品的价值%lf\n",i,j,m[i][j]*c[j]);

}

}

}

void sum1(double sweek[5],double m[5][6])//第i周生产和销售的产品的价值

{

int i,j;

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

{

sweek[i]=0;//数组初始化

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

{

sweek[i]=sweek[i]+m[i][j];

}

}

}

void sum2(double mpr[6],double m[5][6])//在本月生产和销售第j种产品的价值

{

int i,j;

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

{

mpr[j]=0;//数组初始化

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

{

mpr[j]=mpr[j]+m[i][j];

}

}

}

double sum3(double m[5])//在本月里生产和销售所有产品总价值{

int i;

double sum3=0;

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

{

sum3=sum3+m[i];

}

return sum3;

}

验证与结论:

总结与心得体会:数组参数形参实质的本质是指针,使用数组函数使得代码看起来更加整洁,可读性更高。当出现大量复制代码时考虑能否用函数统一起来,否则在后期维护上将变得困难许多。

实验题目3:编程将一个字符串插入到另一个字符串的第n个位置。

设计思想:

使用strlen函数计算数组长度,然后使用循环用倒序赋值使a数组在第n 个位置及以后字符向后挪数组b长度,再用倒序赋值法将b赋给a的空位。实验代码及注释:

#include <>

#include <>

int main()

{

int n,count1,count2,i,j;//位置,字符串长度,循环变量

printf("输入n值:\n");

scanf("%d",&n);

char a[20];//默认长度为20

char b[20];

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位

a[i+count2]=a[i];

i=n-1+count2;//对i重新赋值为n-1+count2

for(j=count2-1;j>=0;j--)//倒序赋值将b赋给a空位

{

a[i]=b[j];

i--;

}

printf("新字符串为:");

for(j=0;j

printf("%c",a[j]);

return 0;

}

验证与结论:

总结与心得体会:

输入字符串后末尾会有一个\0,在赋值时必须极为小心,有可能会使程序提前终止得不到预期的效果,另外利用strlen函数计算数组长度时不包括末尾的\0。

实验题目4:编写一个程序,使输入的一个字符串按反序存放,在主函数中输入输出字符。

设计思想:

输入字符串存储在a数组中,利用strlen函数计算数组a长度,再用循环倒序存储在b数组中并输出。

实验代码及注释:

#include <>

#include <>

#define n 100//宏定义n值为100

相关文档
最新文档