Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Glaucco

[Resolvido] C pontero

Recommended Posts

#include <stdio.h>
int funcaoturmasab(int *p, int a, int b) {
	int somaa=0, somab=0, j, menornotaa, maiornotaa, maiornotab, menornotab;
	float mediaa, mediab;
	for (j=0;j<b;j++) {
		somaa = somaa + *(p+0*b+j);
		somab = somab + *(p+1*b+j);
		if (j==0) {
			menornotaa = *(p+0*b+j);
		} else {
			if (*(p+0*b+j) < menornotaa) {
				menornotaa = *(p+0*b+j);
			}
		}
		if (j==0) {
			maiornotaa = *(p+0*b+j);
		} else {
			if (*(p+0*b+j) > maiornotaa) {
				maiornotaa = *(p+0*b+j);
			}
		}
		if (j==0) {
			menornotab = *(p+1*b+j);
		} else {
			if (*(p+1*b+j) < menornotab) {
				menornotab = *(p+1*b+j);
			}
		}
		if (j==0) {
			maiornotab = *(p+1*b+j);
		} else {
			if (*(p+1*b+j) > maiornotab) {
				maiornotab = *(p+1*b+j);
			}
		}
	}
	mediaa = (float)(somaa / 5);
	mediab = (float)(somab / 5);
	printf("\n\nTurma A: \n ");
	for (j=0;j<b;j++) {
		printf("\nNota da turma A e: %d", *(p+0*b+j));
	}
	printf("\n\nMedia da turma A e: %.2f\n", mediaa);
	printf("\nMaior nota da turma A e: %d", maiornotaa);
	printf("\nMenor nota da turma A e: %d\n\n", menornotaa);
	printf("\nTurma B: \n");
	for (j=0;j<b;j++) {
		printf("\nNota da turma B e: %d", *(p+1*b+j));
	}
	printf("\n\nMedia da turma B e: %.2f\n", mediab);
	printf("\nMaior nota da turma B e: %d", maiornotab);
	printf("\nMenor nota da turma B e: %d\n\n", menornotab);
}
int main() {
	int matriz[2][5];
	int a, b;
	for (a=0;a<=1;a++) {
		for (b=0;b<=4;b++) {
			printf("Digite a nota do aluno: ");
			scanf("%d", &matriz[a][b]);
		}
	}
	funcaoturmasab(matriz, 2, 5);
	system("pause");
}

Estou com problemão está dando erro no meu código quando vou copilar.

primeiro erro

63 [Warning] passing arg 1 of `funcaoturmasab' from incompatible pointer type

segundo erro

In function `main':

Compartilhar este post


Link para o post
Compartilhar em outros sites
#include <stdio.h>
#define LINHAS 2
#define COLUNAS 5

int calculaMaior (int *p)
{
int idx,maior;
for (idx = 0; idx < COLUNAS; idx++)
{
	if (!idx)
		maior = *(p+idx);
	else
	{
		if (*(p+idx) > maior)
			maior = *(p+idx);
	}
}
return maior;
}

int calculaMenor (int *p)
{
int idx,menor;
for (idx = 0; idx < COLUNAS; idx++)
{
	if (!idx)
		menor = *(p+idx);
	else
	{
		if (*(p+idx) < menor)
			menor = *(p+idx);
	}
}
return menor;

}


float calculaMedia (int *p)
{
float soma = 0;
int idx;
for (idx = 0; idx < COLUNAS; idx++)
	soma+=*(p+idx);
return soma/COLUNAS;
}



int main() {
int matriz[2][5];
int a, b;
for (a=0;a<2;a++) {
	printf("Turma %d\n",a+1);
	for (b=0;b<5;b++) {
		printf("Digite a nota do aluno: ");
		scanf("%d", &matriz[a][b]);
		}
}


for (a = 0; a < LINHAS; a++)
{
	printf("Maior nota da turma %d: %d\n",a+1,calculaMaior(&matriz[a]));
	printf("Menor nota da turma %d: %d\n",a+1,calculaMenor(&matriz[a]));
	printf("Média da turma %d: %.2f\n",a+1,calculaMedia(&matriz[a]));
}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

import java.Isis seu está dando erro nas linhas 64,65,66

 

com mensagem

[Warning] passing arg 1 of `calculaMedia' from incompatible pointer type

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não está dando erro. Error != Warning.

Error => não compila.

Warning => compila, mas te adverte de alguma coisa que o compilador não vai consertar por você e nem se responsabilizar se você mandar tudo pro espaço.

Execute o código.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.