Ir ao conteúdo

Posts recomendados

Postado
#include <stdio.h>
#include <stdlib.h>

int multiplicarDiagonal(int **m,int *n,int *j)
{
    printf("Matriz: \n");
    for (int i=0; i<n; i++)
        {
           for (int x=0; x<j; x++)
           {
              printf("%d, ", m[i][x]);
           }

        }

        printf("\nDigite um numero: ");
        int n1;
        scanf("%d",&n1);
        for (int i = 0; i<n;i++)
        {
            m[i][i] == m[i][i]*n1;
        }

           printf("Matriz modificada: \n");
    for (int i=0; i<n; i++)
        {
           for (int x=0; x<j; x++)
           {
              printf("%d, ", m[i][x]);
           }

        }
        return 0;
}
int main()
{
int m[3][3] = {{1,2,3,4}, {1,2,3,4}, {1,2,3,4}, {1,2,3,4}};


 multiplicarDiagonal(m,3,3);
}

Queria saber no que eu estou errando na impressão da matriz

Postado

Olá, tudo bem!

 

No protótipo da função o primeiro parâmetro é um ponteiro para ponteiros do tipo int, e não uma matriz(i, j) da maneira que pensou, revise o conteúdo de ponteiros; foco em aritmética de ponteiros.

 

A função multiplicarDiagonal sugere pelo identificador (seu nome) que multiplica a diagonal, porém levando em consideração o código fonte faz mais que isso. A dica aqui é essa: Faça a função apenas aquilo que sugere em seu nome e nada mais.

 

 

  • Curtir 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!