题目来源:大工慕课 链接
作者:Caleb Sung
参考代码
头文件
#include<stdio.h>
randNum()
用于随机生成数字(即k)
int randNum(int k){
srand(time(NULL));
k = rand()%100+0;
return k;
}
randArray()
用于随机生成数组
int randArray(int array[3][4]){
int i, j;
srand(time(NULL));
for(i=0; i<3; i++)
for(j=0; j<4; j++)
array[i][j] = rand()%100+0;
return array[3][4];
}
printArray()
用于打印数组
void printArray(int array[3][4]){
int i, j;
for(i=0; i<3; i++){
for(j=0; j<4; j++){
printf("%d\t", array[i][j]);
if(j == 3){
printf("\n");
}
}
}
}
calc()
用于实现计算:z[3][4]=k*x[3][4]+y[3][4]
int calc(int x[3][4], int y[3][4], int z[3][4], int k){
int i, j;
for(i=0; i<3; i++){
for(j=0; j<4; j++){
z[i][j] = k*x[i][j] + y[i][j];
}
}
return z[3][4];
}
主函数
void main(){
int x[3][4], y[3][4], z[3][4], k;
x[3][4] = randArray(x);
y[3][4] = randArray(y);
k = randNum(k);
printf("\n随机生成的x[3][4]:\n");
printArray(x);
printf("\n随机生成的y[3][4]:\n");
printArray(y);
printf("\n随机生成的k的值为:%d\n", k);
z[3][4] = calc(x, y, z, k);
printf("------------------------\n");
printf("计算:z[3][4] = k * x[3][4] + y[3][4]\n\n");
printf("计算得到的z[3][4]:\n");
printArray(z);
}