Buscar

lista de matriz resolvida em C

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1.1. Escreva um programa que leia uma matriz A​6x3​ com números inteiros e exiba o 
maior e o menor elementos. 
 
#include<stdio.h> 
 
int main (void) 
 
{ 
 int matriz[6][3],i,j,maior,menor; 
 
 for(i=0;i<6;i++) 
 { 
 for(j=0;j<3;j++) 
 { 
 printf("Linha %d Coluna %d\t:",i+1,j+1); 
 scanf("%d",&matriz[i][j]); 
 
 if(i==0 && j==0) 
 { 
 maior=matriz[i][j]; 
 menor=matriz[i][j]; 
 } 
 
 if(matriz[i][j]>maior) 
 { 
 maior=matriz[i][j]; 
 } 
 if(matriz[i][j]<menor) 
 { 
 menor=matriz[i][j]; 
 } 
 } 
 } 
 
 printf("Maior elemento:%d Menor elemento:%d",maior,menor); 
 
 return 0; 
} 
 
 
 
 
 
 
 
1.2) Criar um programa que leia os elementos de uma matriz inteira 4 x 4 e escreva os 
elementos da diagonal principal. 
 
#include<stdio.h> 
 
int main (void) 
{ 
 int matriz [4][4],i,j; 
 printf("Digite os elementos da matriz:\n"); 
 for(i=0;i<4;i++) 
 { 
 for(j=0;j<4;j++) 
 { 
 printf("Digite o elemento da coluna:%d linha:%d",i+1,j+1); 
 scanf("%d",&matriz[i][j]); 
 } 
 } 
 printf("Elementos da diagonal principal:"); 
 for(i=0;i<4;i++) 
 { 
 for(j=0;j<4;j++) 
 { 
 if(i==j) 
 { 
 printf("%d,",matriz[i][j]); 
 } 
 } 
 } 
 return 0; 
} 
 
 
1.3) Criar um programa que leia os elementos de uma matriz inteira 4 x 4 e escreva os 
elementos da diagonal secundária. 
 
#include<stdio.h> 
 
int main (void) 
 
{ 
 int matriz[4][4],i,j; 
 
 printf("Digite os elementos da matriz:\n"); 
 for(i=0;i<4;i++) 
 { 
 for(j=0;j<4;j++) 
 { 
 printf("Digite o elemento da linha:%d coluna:%d\t",i+1,j+1); 
 scanf("%d",&matriz[i][j]); 
 } 
 } 
 printf("Elementos da diagonal secundaria:\n"); 
 for(i=0;i<4;i++) 
 { 
 for(j=0;j<4;j++) 
 { 
 if(i==4-1-j) 
 { 
 printf("%d,",matriz[i][j]); 
 } 
 } 
 } 
 
 return 0; 
} 
 
 
 
1.4) Criar um programa que leia os elementos de uma matriz inteira 4 x 4 e escreva 
todos os elementos, exceto os elementos da diagonal principal. 
#include<stdio.h> 
 
int main (void) 
 
{ 
 int matriz[4][4],i,j; 
 
 printf("Digite os elementos da matriz:\n"); 
 for(i=0;i<4;i++) 
 { 
 for(j=0;j<4;j++) 
 { 
 printf("Digite o elemento da linha:%d e coluna:%d\t",i+1,j+1); 
 scanf("%d",&matriz[i][j]); 
 } 
 } 
 
 for(i=0;i<4;i++) 
 { 
 for(j=0;j<4;j++) 
 { 
 if(i!=j) 
 { 
 printf(" %d, ",matriz[i][j]); 
 } 
 } 
 printf(" \n"); 
 } 
 
 return 0; 
} 
 
 
1.5 Criar um programa que leia os elementos de uma matriz inteira 4 x 4 e escreva 
todos os elementos, exceto os elementos da diagonal secundária. 
 
#include<stdio.h> 
 
int main (void) 
 
{ 
 int matriz[4][4],i,j; 
 
 printf("Digite os elementos da matriz:\n"); 
 for(i=0;i<4;i++) 
 { 
 for(j=0;j<4;j++) 
 { 
 printf("Digite o elemento da linha:%d coluna:%d\t",i+1,j+1); 
 scanf("%d",&matriz[i][j]); 
 } 
 } 
 printf("Elementos da diagonal secundaria:\n"); 
 for(i=0;i<4;i++) 
 { 
 for(j=0;j<4;j++) 
 { 
 if(i!=4-1-j) 
 { 
 printf("%d,",matriz[i][j]); 
 } 
 } 
 printf("\n"); 
 } 
 
 return 0; 
} 
 
 
1.6 Criar um programa que leia os elementos de uma matriz A​3x5​. Em seguida, o 
programa deve gerar e imprimir um vetor onde cada elemento do vetor é a soma dos 
elementos de uma linha da matriz A. 
#include<stdio.h> 
 
int main (void) 
 
{ 
 int matriz [3][5],i,j,soma=0; 
 int vetor[3],p=0; 
 printf("Digite os elementos da matriz:\n"); 
 for(i=0;i<3;i++) 
 { 
 soma=0; 
 for(j=0;j<5;j++) 
 { 
 printf("\nDigite o elememnto da linha %d coluna %d:",i+1,j+1); 
 scanf("%d",&matriz[i][j]); 
 soma=soma+matriz[i][j]; 
 } 
 vetor[p]=soma; 
 p++; 
 } 
 for(i=0;i<3;i++) 
 { 
 printf("\nSoma da %d linha vale:%d",i+1,vetor[i]); 
 } 
 
 
 return 0; 
} 
 
ok 7 Crie um programa que leia uma matriz A​3x2​ e uma matriz B​2x5​, calcule o produto, 
armazenando numa matriz C, apresentando-a na tela. 
 
#include<stdio.h> 
#include<stdlib.h> 
int main () 
{ 
int matrizA[3][2]; 
int matrizB[2][5]; 
int matrizC[3][5]; 
int h; 
int i,j,k,l; 
printf("Digite os elementos da matriz A:\n\n "); 
for(i=0;i<3;i++) 
{ 
for(j=0;j<2;j++){ 
printf("Elemento da linha %d e coluna %d: ", i+1,j+1); 
scanf("%d", &matrizA[i][j]); 
} 
} 
 printf("\nMatriz A digitada:\n"); 
 for(i = 0; i < 3; i++) 
 { 
 for(j = 0; j < 2; j++) 
 { 
 printf("%d ", matrizA[i][j]); 
 } 
 printf("\n"); 
 } 
printf("\n"); 
printf("Digite os elementos da matriz B:\n\n "); 
for(k=0;k<2;k++) 
{ 
for(l=0;l<5;l++){ 
printf("Elemento da linha %d e coluna %d: ", k+1,l+1); 
scanf("%d", &matrizB[k][l]); 
} 
} 
printf("\nMatriz B digitada:\n"); 
 for(k = 0; k < 2; k++) 
 { 
 for(l = 0; l < 5; l++) 
 { 
 printf("%d ", matrizB[k][l]); 
 } 
 printf("\n"); 
 } 
 printf("\n"); 
 for (i = 0; i < 3; i++){ 
 for (j = 0; j < 5; j++){ 
matrizC[i][j] = 0; 
 for (h = 0; h < 2; h++){ 
 matrizC[i][j] = matrizC[i][j] + matrizA[i][h] * matrizB[h][j]; 
 } 
 } 
 } 
 printf("Matriz A X B: \n"); 
 for (i = 0; i < 3; i++) { 
 for (j = 0; j < 5; j++){ 
 } 
 } 
 for(i = 0; i < 3; i++) 
 { 
 for(j = 0; j < 5; j++) 
 { 
 printf("%d ", matrizC[i][j]); 
 } 
 printf("\n"); 
 } 
 return 0; 
 } 
 
ok 8 Escreva um programa que leia uma matriz A​3x3​ e calcule o seu determinante. 
 
#include<stdio.h> 
#include<stdlib.h> 
int main () 
{ 
int matrizA[3][3]; 
int i,j,k; 
int temp,count,factor; 
printf("Digite a matriz: "); 
for(i=0;i<3;i++) 
{ 
for(j=0;j<3;j++) 
{ 
printf("elemento da linha %d e coluna %d: ", i+1,j+1); 
scanf("%d", &matrizA[i][j]); 
printf("\n"); 
} 
} 
 printf("\nMatriz digitada:\n"); 
 for(i = 0; i < 3; i++) 
 { 
 for(j = 0; j < 3; j++) 
 { 
 printf("%d ", matrizA[i][j]); 
 } 
 printf("\n"); 
 } 
 for(i = 0; i < 3 - 1; i++) 
 { 
 if(matrizA[i][i] == 0) 
 { 
 for(k = i; k < 3; k++) 
 { 
 if(matrizA[k][i] != 0) 
 { 
 for(j = 0; j < 3; j++) 
 { 
 temp = matrizA[i][j]; 
 matrizA[i][j] = matrizA[k][j]; 
 matrizA[k][j] = temp; 
 } 
 k = 3; 
 } 
 } 
 count++; 
 } 
 
 if(matrizA[i][i] != 0) 
 { 
 for(k = i + 1; k < 3; k++) 
 { 
 factor = -1.0 * matrizA[k][i] / matrizA[i][i]; 
 for(j = i; j < 3; j++) 
 { 
 matrizA[k][j] = matrizA[k][j] + (factor * matrizA[i][j]); 
 } 
 } 
 } 
 } 
 
 temp = 1.0; 
 for(i = 0; i < 3; i++) 
 temp *= matrizA[i][i]; 
 printf("\nDeterminante:\n"); 
 if(count % 2 == 0) 
 printf("%d \n", temp); 
 else 
 printf("%d \n", -1.0 * temp); 
return 0; 
} 
 
ok 9 Escreva um programa que leia uma matriz A​3x3​ e calcule a sua inversa. 
#include <stdio.h> 
#include <math.h> 
int main (void){ 
 int matrizA[3][3],matrizB[3][3],Cof[3][3],Adj[3][3]; 
 int i,j,k; 
 float det,temp; 
 
 for (i=0;i<3;i++){ 
 for (j=0;j<3;j++){ 
 printf("Informe a matriz da linha%d e coluna %d: ", i+1,j+1); 
 scanf("%d",&matrizA[i][j]); 
 } 
 printf("\n"); 
 } 
 printf(" A matriz digitada foi: \n\n"); 
 for (i=0;i<3;i++){ 
 for (j=0;j<3;j++){ 
 printf("%d", matrizA[i][j]); 
} 
printf("\n"); 
} 
 j = 0; 
 det = 0; 
 temp = 0; 
 
 for (i=0;i<3;i++){ 
 
 if (i == 0){ 
 temp = 
pow(-1,(i+j+2))*(matrizA[i+1][j+1]*matrizA[i+2][j+2]-matrizA[i+1][j+2]*matrizA[i+2][j+1]); 
 } 
 if (i == 1){ 
 temp = 
pow(-1,(i+j+2))*(matrizA[i-1][j+1]*matrizA[i+1][j+2]-matrizA[i-1][j+2]*matrizA[i+1][j+1]); 
 } 
 if (i==2) { 
 temp = 
pow(-1,(i+j+2))*(matrizA[i-2][j+1]*matrizA[i-1][j+2]-matrizA[i-2][j+2]*matrizA[i-1][j+1]); 
 } 
 
 det+=matrizA[i][j]*temp; 
 } 
 printf("O determinante da matriz A eh: %d\n",det); 
 if (det == 0) 
 { 
 printf("A matriz não possui inversa, pois seu determinante é nulo!\n"); 
 } 
 else { 
 for (i=0;i<3;i++){ 
 for (j=0;j<3;j++){ 
 if (i==0 && j==0) 
 Cof[i][j] = 
pow(-1,(i+j+2))*(matrizA[i+1][j+1]*matrizA[i+2][j+2]-matrizA[i+1][j+2]*matrizA[i+2][j+1]); 
 if (i==0 && j==1) 
 Cof[i][j] = 
pow(-1,(i+j+2))*(matrizA[i+1][j-1]*matrizA[i+2][j+1]-matrizA[i+1][j+1]*matrizA[i+2][j-1]); 
 if (i==0 && j==2) 
 Cof[i][j] = 
pow(-1,(i+j+2))*(matrizA[i+1][j-2]*matrizA[i+2][j-1]-matrizA[i+1][j-1]*matrizA[i+2][j-2]); 
 if (i==1 && j==0) 
 Cof[i][j] = 
pow(-1,(i+j+2))*(matrizA[i-1][j+1]*matrizA[i+1][j+2]-matrizA[i-1][j+2]*matrizA[i+1][j+1]); 
 if (i==1 && j==1) 
 Cof[i][j] = 
pow(-1,(i+j+2))*(matrizA[i-1][j-1]*matrizA[i+1][j+1]-matrizA[i-1][j+1]*matrizA[i+1][j-1]); 
 if (i==1 && j==2) 
 Cof[i][j] = 
pow(-1,(i+j+2))*(matrizA[i-1][j-2]*matrizA[i+1][j-1]-matrizA[i-1][j-1]*matrizA[i+1][j-2]); 
 if (i==2 && j==0) 
 Cof[i][j] = 
pow(-1,(i+j+2))*(matrizA[i-2][j+1]*matrizA[i-1][j+2]-matrizA[i-2][j+2]*matrizA[i-1][j+1]); 
 if (i==2 && j==1) 
 Cof[i][j] = 
pow(-1,(i+j+2))*(matrizA[i-2][j-1]*matrizA[i-1][j+1]-matrizA[i-2][j+1]*matrizA[i-1][j-1]); 
 if (i==2 && j==2) 
 Cof[i][j] = 
pow(-1,(i+j+2))*(matrizA[i-2][j-2]*matrizA[i-1][j-1]-matrizA[i-2][j-1]*matrizA[i-1][j-2]); 
 Adj[j][i]= Cof[i][j]; 
 matrizB[j][i] = (Adj[j][i])/det; 
 
 } 
 } 
 printf("\n A matriz inversa calculada eh: \n"); 
 for (i=0;i<3;i++){ 
 for (j=0;j<3;j++){ 
 printf("%d ",matrizB[i][j]); 
 } 
 printf("\n"); 
 } 
 
 } 
 return 0; 
} 
 
ok 10 Criar um programa que leia uma matriz A​NxN​ (N < 10) e calcule a respectiva 
matriz transposta At . 
 
#include<stdio.h> 
 
int main (void) 
 
{ 
 int n,i,j; 
 
 printf("Digite o valor de N menor do que 10."); 
 scanf("%d",&n); 
 
 int matriz[n][n]; 
 
 if(n>=10) 
 { 
 printf("N invalido."); 
 } 
 else 
 { 
 printf("Digite os elementos da matriz:\n"); 
 for(i=0;i<n;i++) 
 { 
 for(j=0;j<n;j++) 
 { 
 printf("Linha %d coluna %d\t:",i+1,j+1); 
 scanf("%d",&matriz[i][j]); 
 } 
 } 
 printf("Matriz transposta:\n"); 
 for(i=0;i<n;i++) 
 { 
 for(j=0;j<n;j++) 
 { 
 printf("%d,",matriz[j][i]); 
 } 
 printf("\n"); 
 } 
 } 
 
 
 
 return 0; 
} 
 
 
 
ok 11 Criar um programa que leia uma matriz A​NxN​ (N < 10) e verifique (informe) se tal 
matriz é ou não simétrica (A​t​ = A). 
 
#include<stdio.h> 
 
int main () 
 
{ 
 int n,i,j; 
 printf("Digite o valor da ordem da matriz:"); 
 scanf("%d",&n); 
 if(n>=10) 
 { 
 printf("Quantidade invalida."); 
 } 
 else 
 { 
 int matriz[n][n],d=0; 
 int transposta[n][n]; 
 for(i=0;i<n;i++) 
 { 
 for(j=0;j<n;j++) 
 { 
 printf("\nLinha %d Coluna %d\t:",i+1,j+1); 
 scanf("%d",&matriz[i][j]); 
 transposta[j][i]= matriz[i][j]; 
 } 
 } 
 for(i=0;i<n;i++) 
 { 
 for(j=0;j<n;j++) 
 { 
 if(matriz[i][j]!=transposta[i][j]) 
 { 
 d++; 
 } 
 } 
 } 
 
 if(d>0) printf("\nNao e simetrico"); 
 else printf("\nsimetrico"); 
 
 } 
 
 return 0; 
} 
 
 
 
ok 12 Criar um programa que leia uma matriz A​NxN​ (N < 10) e verifique (informe) se tal 
matriz é ou não anti-simétrica (A​t​ = -A). 
 
 
#include<stdio.h> 
 
int main () 
 
{ 
 int n,i,j; 
 printf("Digite o valor da ordem da matriz:"); 
 scanf("%d",&n); 
 if(n>=10) 
 { 
 printf("Quantidade invalida."); 
 } 
 else 
 { 
 int matriz[n][n],d=0,soma=0; 
 int transposta[n][n]; 
 for(i=0;i<n;i++) 
 { 
 for(j=0;j<n;j++) 
 { 
 printf("\nLinha %d Coluna %d\t:",i+1,j+1); 
 scanf("%d",&matriz[i][j]); 
 transposta[j][i]= matriz[i][j]; 
 } 
 } 
 for(i=0;i<n;i++) 
 { 
 for(j=0;j<n;j++) 
 { 
 soma=0; 
 soma=transposta[i][j]+matriz[i][j]; 
 if(soma!=0) 
 { 
 d++; 
 } 
 } 
 } 
 
 if(d>0) printf("\nNao e anti-simetrica"); 
 else printf("\nanti-simetrico"); 
 
 } 
 
 return 0; 
} 
 
 
ok 13 Uma matriz quadrada inteira é chamada de quadrado mágico se as somas dos 
elementos de cada linha, coluna, e das diagonais principal e secundária são iguais. 
Escreva um programa que leia uma matriz A​3x3​ e exiba uma mensagem na tela 
dizendo se ela é ou não um quadrado mágico. 
#include <stdio.h> 
#include <stdlib.h> 
 
int main(void) 
{ 
 int mat[3][3], i, j; 
 int lin[3]={0,0,0}, col[3]={0,0,0}, dg[2]={0,0}; 
 for(i=0;i<3;i++) 
 { 
 for(j=0;j<3;j++) 
 { 
 scanf("%d", &mat[i][j]); 
 } 
 } 
 for(i=0;i<3;i++) 
 { 
 dg[0]+=mat[i][i]; 
 dg[1]+=mat[i][2-i]; 
 for(j=0;j<3;j++) 
 { 
 lin[i]+=mat[i][j]; 
 col[j]+=mat[i][j]; 
 } 
 } 
 if(dg[0]==dg[1]) 
 { 
 if(lin[0]==lin[1] && lin[2]) 
 { 
 if(col[0]==col[1] && col[1]==col[2]) 
 { 
 printf("sim"); 
 } 
 else 
 { 
 printf("nao"); 
 } 
 } 
 else 
 { 
 printf("nao"); 
 } 
 } 
 else 
 { 
 printf("nao"); 
 } 
 return 0; 
} 
 
ok 14 Criar um programa que entre com valores inteiros para uma matriz M​3x3​ e 
imprima a matriz final, conforme mostrado a seguir: 
 
| 1 2 3 | | 7 4 1 | 
| 4 5 6 | a matriz gira 90º | 8 5 2 | 
| 7 8 9 | | 9 6 3 | 
#include<stdio.h> 
 
int main (void) 
 
{ 
 int matriz [3][3],i,j; 
 
 for(i=0;i<3;i++) 
 { 
 for(j=0;j<3;j++) 
 { 
 scanf("%d",&matriz[i][j]); 
 } 
 } 
 printf("\n"); 
 for (i=2;i>=0;i--) 
 { 
 printf("%d ",matriz[i][0]); 
 } 
 printf("\n"); 
 for (i=2;i>=0;i--) 
 { 
 printf("%d ",matriz[i][1]); 
 } 
 printf("\n"); 
 for (i=2;i>=0;i--) 
 { 
 printf("%d ",matriz[i][2]); 
 } 
 return 0; 
} 
 
0k 15 Criar um programa que entre com valores inteiros para uma matriz M​3x3​ e 
imprima a matriz final, conforme mostrado a seguir: 
 
| 1 2 3 | | 9 8 7 | 
| 4 5 6 | a matriz gira 180º | 6 5 4 | 
| 7 8 9 || 3 2 1 | 
 
#include<stdio.h> 
 
int main(void) 
{ 
 int matriz[3][3],i,j; 
 
 for(i=0;i<3;i++) 
 { 
 for(j=0;j<3;j++) 
 { 
 scanf("%d",&matriz[i][j]); 
 } 
 } 
 printf("\n"); 
 for(i=2;i>=0;i--) 
 { 
 for(j=2;j>=0;j--) 
 { 
 printf("%d ",matriz[i][j]); 
 } 
 printf("\n"); 
 } 
 return 0; 
} 
 
 
 
ok 16 Criar um programa que entre com valores inteiros para uma matriz M​3x3​ e 
imprima a matriz final, conforme mostrado a seguir: 
 
| 1 2 3 | | 3 6 9 | 
| 4 5 6 | a matriz gira 270º | 2 5 8 | 
| 7 8 9 | | 1 4 7 | 
 
#include<stdio.h> 
 
int main (void) 
 
{ 
 int matriz[3][3] ,i ,j; 
 
 for(i=0;i<3;i++) 
 
 { 
 for(j=0;j<3;j++) 
 
 { 
 scanf("%d",&matriz[i][j]); 
 } 
 } 
 
 printf("\n"); 
 for(i=0;i<3;i++) 
 
 { 
 printf("%d ",matriz[i][2]); 
 } 
 
 printf("\n"); 
 for(i=0;i<3;i++) 
 
 { 
 printf("%d ",matriz[i][1]); 
 } 
 
 printf("\n"); 
 for(i=0;i<3;i++) 
 
 { 
 printf("%d ",matriz[i][0]); 
 } 
 return 0; 
} 
 
 
 
ok 17 Criar um algoritmo que carregue uma matriz 12 x 4 com os valores das vendas 
de uma loja, em que cada linha represente um mês do ano, e cada coluna, uma 
semana do mês. Para fins de simplificação considere que cada mês possui somente 4 
semanas. Calcule e imprima: 
- Total vendido em cada mês do ano; 
- Total vendido em cada semana durante todo o ano; 
- Total vendido no ano. 
 
#include<stdio.h> 
 
int main (void) 
 
{ 
 float matriz[12][4],soma,soma2=0,vetor[48]; 
 int i,j,p=1; 
 
 for(i=0;i<12;i++) 
 { 
 soma=0; 
 for(j=0;j<4;j++) 
 { 
 printf("Mes %d Semana %d\t:",i+1,j+1); 
 scanf("%f",&matriz[i][j]); 
 vetor[p]=matriz[i][j]; 
 soma=soma+matriz[i][j]; 
 p++; 
 } 
 vetor[p]=soma; 
 p++; 
 } 
 
 for(i=1;i<p;i++) 
 { 
 if(i%5!=0) 
 { 
 printf("\nValor vendido na semana %d foi:%.2f",i,vetor[i]); 
 } 
 if(i%5==0) 
 { 
 printf("\nTotal do mes:%.2f\n",vetor[i]); 
 soma2=soma2+vetor[i]; 
 } 
 } 
 printf("\n\nTotal no ano:%.2f",soma2); 
 
 
 return 0; 
} 
 
 
ok 18 Uma matriz M contém na 1ª coluna a matrícula do aluno no curso; na 2ª coluna, 
o sexo (0 para feminino e 1 para masculino); na 3ª, o código do curso, e na 4ª, o CR 
(Coeficiente de Rendimento). Suponha que o CR é um número inteiro. Faça um 
programa que leia os dados de 10 alunos e armazene esses dados na matriz M. Um 
grupo empresarial resolveu premiar a aluna com CR mais alto de um curso cujo 
código deverá ser digitado. O programa deve receber o código do curso e imprimir a 
matrícula da aluna que deve ser premiada. Caso existam mais de uma aluna com o 
CR mais alto, imprimir a matrícula de todas elas. 
 
#include<stdio.h> 
#include<math.h> 
 
int main(void) 
{ 
int aluno[10][4],setp[10]; 
int i,j,cod,notar,q_nota_ref; 
 
printf("Carregue os dados dos 10 alunos [matricula, sexo, cod_curso, CR]:\n"); 
 
for (i=0;i<10;i++) 
{ 
 for (j=0;j<4;j++) 
 { 
 scanf("%d",&aluno[i][j]); 
 } 
} 
printf("\nDigite o codigo do curso do qual deseja saber a melhor aluna: "); 
scanf("%d",&cod); 
notar = 0; 
q_nota_ref = 0; 
for (i=0;i<10;i++) 
 { 
 if (aluno[i][2]==cod) 
 { 
 if(aluno[i][1]==0) 
 { 
 if (aluno[i][3] == notar && notar != 0) 
 { 
 q_nota_ref+=1; 
 setp[q_nota_ref] = aluno[i][0]; 
 } 
 if (aluno[i][3] > notar) 
 { 
 notar = aluno[i][3]; 
 q_nota_ref = 0; 
 setp[q_nota_ref] = aluno[i][0]; 
 } 
 } 
 } 
} 
printf("Matricula da(s) melhor aluna do curso %d: ",cod); 
for (i=0;i<=q_nota_ref;i++) 
 printf("Matricula = %d\n",setp[i]); 
}

Outros materiais