Sou novo aqui no fórum e estou com dúvida em como "construir" uma matriz de ordem nxn, onde o usaurio vai determinar o tamanho desta.
Primeiramente eu queria um menu ( com switch mesmo) e dentro deste eu chamaria funções que faça determinadas ações, mas neste momento eu gostaria uma função para criar esta matriz (inicialmente vazia) e "dar" o display na tela desta.
o menu será construido por incluir,excluir,alterar(modificar) dados( no caso numeros) , estes dados terá um tamanho, que o usuario dirá quanto é (em MB ou KB) ou que vocês julgarem melhor!
Segue o código que tenho, por favor qualquer linha de código que vocês acharem desnecessária ou que precisa adicionar, fiquem a vontade!
#include<stdio.h>
#include<stdlib.h>
int main () {
int **matriz; /* ponteiro para os ponteiros de cada uma das linhas */
int lin, col; /* número de linhas e colunas */
int i, j;
int linha1, linha2; /* linhas da matriz que serao trocadas */
char linha[80]; /* linha de caracteres com os dados */
int *temp;
do {
puts("Qual o numero de linhas?");
gets(linha);
lin = atoi(linha);
} while (lin<=0);
printf("Numero de linhas = %d\n", lin);
printf("Alocando espaço para armazenar os ponteiros para as linhas.\n");
matriz = (int **) malloc (lin * sizeof(int *));
if (!matriz) {
puts("não há espaço para alocar memória");
exit(1);
}
do {
puts("Qual o numero de colunas?");
gets(linha);
col = atoi(linha);
} while (col<=0);
printf("Numero de colunas = %d\n", lin);
printf("Alocando espaço para armazenar os vetores de linhas.\n");
for (i=0; i<lin; i++)
{
*(matriz +i) = (int *) malloc(col * sizeof (int));
if (! *(matriz+i) ){
printf("Não há espaço para alocar a linha %d", i);
exit(1);
}
}
puts("Entre com os dados");
for (i=0; i<lin; i++)
{
printf("Entre com a linha %d\n", i);
for (j=0; j<col; j++)
{
printf("Elemento %d %d\n", i, j);
scanf("%d", *(matriz +i) +j);
}
}
puts("Dados lidos");
for (i=0; i<lin; i++)
{
for (j=0; j<col; j++)
{
printf("%7d ", *(*(matriz +i) +j));
}
printf("\n");
}
}
Obrigado pela atenção de todos!
Caso esteje desreipetando alguma regra de postagem me desculpem, só sinalisar que eu corrijo!
Pergunta
Dourado
boa tarde a todos,
Sou novo aqui no fórum e estou com dúvida em como "construir" uma matriz de ordem nxn, onde o usaurio vai determinar o tamanho desta.
Primeiramente eu queria um menu ( com switch mesmo) e dentro deste eu chamaria funções que faça determinadas ações, mas neste momento eu gostaria uma função para criar esta matriz (inicialmente vazia) e "dar" o display na tela desta.
o menu será construido por incluir,excluir,alterar(modificar) dados( no caso numeros) , estes dados terá um tamanho, que o usuario dirá quanto é (em MB ou KB) ou que vocês julgarem melhor!
Segue o código que tenho, por favor qualquer linha de código que vocês acharem desnecessária ou que precisa adicionar, fiquem a vontade!
Obrigado pela atenção de todos!
Caso esteje desreipetando alguma regra de postagem me desculpem, só sinalisar que eu corrijo!
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.