#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define T_STR 80
void
apagaTela(void)
{
int cont;
for (cont = 0; cont < 40; cont++)
printf("\n");
}
int main(void)
{
int
q_linhas, q_colunas,
linhas, colunas,
opcao;
apagaTela();
/* Pega a quantidade de linhas */
do {
printf("Digite a quantidade de linhas da matriz:");
scanf("%i%*c", &q_linhas);
if (q_linhas < 1) {
printf("Valor invalido!\nDigite novamente\n");
}
} while (q_linhas < 1);
apagaTela();
/* Pega a quantidade de colunas */
do {
printf("Digite a quantidade de colunas da matriz:");
scanf("%i%*c", &q_colunas);
if (q_colunas < 1) {
printf("Valor invalido!\nDigite novamente\n");
}
} while (q_colunas < 1);
apagaTela();
char matriz[q_linhas][q_colunas][T_STR];
/* Pega a matriz */
for (linhas = 0; linhas < q_linhas; linhas++) {
for (colunas = 0; colunas < q_colunas; colunas++) {
printf("Digite o nome da linha e coluna [%i][%i]:", linhas, colunas);
fgets(matriz[linhas][colunas], T_STR, stdin);
/* Retira o caractere de nova linha da string */
matriz[linhas][colunas][strlen(matriz[linhas][colunas])-1] = '\0';
}
}
do {
printf("Deseja visualizar a matriz 1\\sim 0\\nao:");
scanf("%i%*c", &opcao);
switch (opcao) {
case 1:
/* Mostra a matriz */
for (linhas = 0; linhas < q_linhas; linhas++) {
for (colunas = 0; colunas < q_colunas; colunas++) {
printf("%s, ", matriz[linhas][colunas]);
}
printf("\n"); /* Salta uma linha */
}
break;
case 0:
printf("Operacao finalizada!\n");
break;
default:
printf("Opcao invalida!\n");
}
} while (opcao != 0);
return(0);
}