计算机科学与技术第次实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 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