Diego Abner Postado Dezembro 4, 2016 Denunciar Share Postado Dezembro 4, 2016 Considere a função de quadrado de dois ponteiros: void exp(int *p){ *p = (*p)*(*p); } E a função principal: void main (){ int x; printf ("Informe um numero: "); scanf ("%d", &x); printf ("O quadrado de x é: ", exp(x)); } Corrija este código para que se consiga elevar ao quadrado cada elemento de um vetor de 10 elementos. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 vangodp Postado Dezembro 4, 2016 Denunciar Share Postado Dezembro 4, 2016 1º a função exp está esperando uma direção(ponteiro) você deve passar uma direção: exp(&x). 2º exp não retorna nada(void), não pode ser usada como parâmetro em printf, nesse caso você tem 2 opções. -A primeira opção é você tirar essa função dos parâmetros do printf e colocar x no seu lugar, a função exp ficaria entre o scanf e o printf, ou seja antes de ser chamada em printf. -A segunda opção seria você declarar a função como int e retornar *p. 3ºO compilador pode indicar que exp já existe e que da conflito com o tipo de retorno da exp original, mude o nome dessa função para outra coisa, expo, exp2, _exp, coxinha, mortadela ou o que te der vontade por exemplo. >_< Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Diego Abner
Considere a função de quadrado de dois ponteiros:
void exp(int *p){ *p = (*p)*(*p); }
E a função principal:
void main (){ int x; printf ("Informe um numero: "); scanf ("%d", &x); printf ("O quadrado de x é: ", exp(x)); }
Corrija este código para que se consiga elevar ao quadrado cada elemento de um vetor de 10 elementos.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.