Eva.lima 0 Denunciar post Postado Abril 27, 2009 #include <stdio.h> int funcao_multidimensionais_especiais(int *p,int l,int c) { int opcao,diago,i,j,diagonal_pri,vetor[l],a,x,vetor2[l],y; do { printf("\n\n\t MENU: "); printf("\n\n 1: Passar para um vetor apenas os elementos da diagonal principal. "); printf("\n\n 2: Mostrar elementos da matriz que estao abaixo da diagonal principal, incluindo-a. "); printf("\n\n 3: Sair do sistema. "); printf("\n\n Digite a opcao que deseja aplicar: "); scanf("%d", &opcao); system("cls"); switch (opcao) { case 1: for (i=0;i<l;i++) { for (j=0;j<c;j++) { if (i==j) { vetor[x] = *(p+i*c+j); printf("\n\n Diagonal Principal: %d", vetor[x]); x++; } } } getch(); break; case 2: for (i=0;i<=l;i++) { for (j=0;j<=c;j++) { if (*(p+i*c+j) != (*(p+j*c+i))) { vetor2[y] = *(p+i*c+j); printf("\n\n Numeros abaixo da diagonal: %d", vetor[y]); } } } break; case 3: printf("\n\n Saindo do sistema. "); getch(); system("cls"); break; default: printf("\n\n Opcao invalida. Por favor tente novamente. "); getch(); system("cls"); break; } } while (opcao!=3); } int main() { int matriz[5][5],l,c; for (l=0;l<=4;l++) { for (c=0;c<=4;c++) { printf("Digite o numero: "); scanf("%d", &matriz[l][c]); } } funcao_multidimensionais_especiais(matriz, 5, 5); system("pause"); system("cls"); Bom dia! gostaria de uma ajuda no meu código estou com problema asim quando vou copilar aparece um erro asim exemplo Digite o numero digito 1 vou até terminar quando eu entro na tela de menu pede para digitar o menu desejado eu digito 1 e depois 2 aparece esse erro encontrou um problema e presisa ser fechado. alguém pode me ajudar? Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Abril 27, 2009 quanto ta valendo 'y' nesse momento? vetor2[y] = *(p+i*c+j); []s Compartilhar este post Link para o post Compartilhar em outros sites
Eva.lima 0 Denunciar post Postado Abril 28, 2009 Obrigada pela ajuda quitZAUMMM consegui terminar.Resolvido. #include<stdio.h> #include<string.h> #include<conio.h> #define linha 5 #define coluna 5 void carregaMatriz (int *p, int l, int c) { int i,j,op; while (op != 0) { printf("\n\t\t---------- MENU ----------\n"); printf("\n1 - Exibir os elementos da diagonal principal."); printf("\n2 - Exibir os elementos abaixo da diagonal."); printf("\n0 - Sair.\n"); printf("\nInforme a opcao desejada: "); scanf("%d",&op); switch (op) { case 1: for (i=0; i < linha; i++) { for (j=0; j < coluna; j++) { if (i==j) { printf("\n|%d| ",(*(p+ i*coluna +j))); } } } printf ("\n\n"); system("pause"); system ("cls"); break; case 2: for (i=0; i < linha; i++){ for (j=0; j<coluna; j++){ if (i!=j){ printf("\n |%d| ",(*(p+ i*coluna +j))); } } } printf ("\n\n"); system("pause"); system ("cls"); break; case 0: system ("cls"); printf ("Encerrando o programa...\n"); system ("pause"); break; default: printf ("\n Opcao invalida!"); system ("cls"); break; } } } int main() { int matriz[linha][coluna],lin,col; for (lin=0; lin < linha; lin++){ for (col=0; col< coluna; col++){ printf("Escreva um numero: "); scanf("%d",&matriz[lin][col]); } } carregaMatriz(matriz,linha,coluna); } Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Abril 28, 2009 http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites