笔试一道honor的嵌入式软件程序编写题目【c语言应用例程】
原题目
流水线上,想要生产N个产品,每个产品由M个零件组成,Aij表示组装第i个产品的第j个零件所需的时间,流水线有一个优点:组装越多次,每次组装的时间就越短。但是有两个条件:
1. 想要组装Aij,必须已经组装好了Aij-1
2. 想要组装Aij,必须已经组装好了Ai-1,j
请你编程计算完成N个产品的组装一共需要多少时间。
输入描述:
第一行有两个整数M(0<M<10,N(0<N<10),接下来是一个N*M的矩阵A,0<Aij<100,精确到小鼠点后6位。
输出描述:
每一组数据输出一个浮点数,精确到小数点后6位。
示例:
1 3
3.000000
2.000000
1.000000
输出6.000000
【考察知识点】
1. 矩阵c语言表示方法;
2. 求和计算;
3. 浮点数输出表示。
编程语言:c语言;编程环境:vs code。
代码:
#include <stdio.h>
int main(void)
{
int n,m;
int i,j,k;
int i0=0;
int j0=0;
float a;
char s;
float sum;
float A[10][10];
scanf("%d %d",&n,&m);
for(i=0;i<n;i++)
{
for(j=0,j0=0;j<(2*m-1)&&s!='\n';j++)
{
scanf("%f",&a);
if(a!='\0')
{
A[i][j0]=a;
printf("%.6f ", A[i][j0]);
if(j==m-1)printf("\n");
sum=sum+A[i][j0];
j0++;
}
s=getchar();
}
}
printf("\n%.6f\r\n",sum);
return 0;
}
运行结果:
【代码有一些小问题,欢迎大家批评指正!!!】