矩阵c语言数组,如何在C中的矩阵(2d数组)中声明双精度?

我正在自学(几天前开始)并且无法用葡萄牙语(我的母语)找到可靠的信息.

在太头疼之后,我放弃了来到这里寻求帮助.

我不知道如何制作阵列/二维阵列的双打,只有汉堡.

以下代码按预期工作:

int main(void){

int matriz[5][2] = {{1,2}, // DECLARATION OF MATRIX COMPOSED OF INTERGERS

{3,4},

{5,6},

{7,8},

{9,10}};

int maior = matriz[0][0]; // BIGGEST NUMBER INSIDE MATRIX, STARTED AS FIRST POSITION

int soma = 0; // SUM OF NUMBERS START WITH ZERO

int lin = 0; // INDICATION OF LINE

int col = 0; // INDICATION OF COLUMN

for (lin = 0; lin < 5; lin++){

for (col = 0; col < 2; col++){

if (maior < matriz[lin][col]) {maior = matriz[lin][col];}

soma += matriz[lin][col];

}

}

printf("A soma dos numeros eh %d e o maior numero eh %d

", soma, maior);

// THE SUM OF NUMBERS IS %D AND THE BIGGEST NUMBER IS %D

// I COPIED THE FOLLOWING CODE FROM ELSEWHERE TO SEE WHAT WAS GOING ON

int i, j;

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

for ( j = 0; j < 2; j++ ) {

printf("a[%d][%d] = %d

", i,j, matriz[i][j] );

}

}

return 0;}

输出与预期一致:

A soma dos numeros eh 55 e o maior numero eh 10

a[0][0] = 1

a[0][1] = 2

a[1][0] = 3

a[1][1] = 4

a[2][0] = 5

a[2][1] = 6

a[3][0] = 7

a[3][1] = 8

a[4][0] = 9

a[4][1] = 10

**

但是,如果以下代码的任何更改总是错误的:

**

int main(void){

double matriz2[5][2] = {{10000,1000},

{100,10},

{1,0.1},

{0.01,0.001},

{0.0001,0.00001}};

double maior2 = matriz2[0][0];

double soma2 = 0;

int lin2 = 0;

int col2 = 0;

for (lin2 = 0; lin2 < 5; lin2++){

for (col2 = 0; col2 < 2; col2++){

if (maior2 < matriz2[lin2][col2]) {maior2 = matriz2[lin2][col2];}

soma2 += matriz2[lin2][col2];

}

}

printf("A soma dos numeros eh %d e o maior numero eh %d

", soma2, maior2);

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

for ( j = 0; j < 2; j++ ) {

printf("a[%d][%d] = %d

", i,j, matriz2[i][j] );

}

}

return 0;}

输出总是错误的,因为我一直在改变它.

我宣布长双打,双打,整数和双打等.每次代码输出错误的答案.

某些组合输出负数.其他人只是输出ZERO到处都是.两个例子:

A soma dos numeros eh 0 e o maior numero eh 0

a[0][0] = 10000

a[0][1] = 1000

a[1][0] = 100

a[1][1] = 10

a[2][0] = 1

a[2][1] = 0

a[3][0] = 0

a[3][1] = 0

a[4][0] = 0

a[4][1] = 0

要么

A soma dos numeros eh 953826337 e o maior numero eh 0

a[0][0] = 0

a[0][1] = 0

a[1][0] = 0

a[1][1] = 0

a[2][0] = 0

a[2][1] = -1717986918

a[3][0] = 1202590843

a[3][1] = -755914244

a[4][0] = -350469331

a[4][1] = -1998362383

我根本找不到在矩阵中声明或放置双数的方法.

我该怎么做?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值