Dúvida em linguagem C

fabiopires1011

Power Member
Boas criei este programa em C e gostava de saber se o código está correto



#include <stdio.h>
#include <stdlib.h>

void menu() {
printf("Indique a açao que pretende realizar\n");
printf("a-introduzir valores\n");
printf("b-calcular a media\n");
printf("c-calcular quantos valores sao superiores a media\n");
printf("d-calcular quantos numeros pares foram introduzidos\n");
}

int introduzirValores(int v[], int *p) {

int i = 0, n, total = 0, numerosIntroduzidos=0;

do {
printf("Escolha um numero\n");
scanf("%d", &n);
i++;
total += n;
numerosIntroduzidos++;

} while (n != 0 && i < 100);
*p=numerosIntroduzidos;
return total;
}

float media( int total,int*p){
int med=total/ *p;
return med;
}


int main(int argc, char** argv) {
char escolha;
int vetor[100], soma, *ponteiro,divisor;
float valormedio;
menu();
scanf(" %c", &escolha);
switch (escolha) {
case 'a':
introduzirValores(vetor,ponteiro);
break;
case 'b':
soma=introduzirValores(vetor,ponteiro);
valormedio=media(soma,ponteiro);
printf("O valor da media é %f", valormedio);
break;
}
}
 
Para ser honesto eu sei onde está o problem, mas não percebi porque é que existe. Apesar de o restante código me parecer ainda precisar de algum trabalho para o poder apresentar a quem quer que seja, alterei duas ou três coisas para ficar a funcionar.
Como o forum não tem um syntax highlight, deixo o código num site terceiro!

https://ideone.com/UmQGWH
 
Back
Topo