Baderous
Banido
Ok. Já estive a fazer isso. Ando a seguir um tutorial em português, q até agora esta razoavelmente e tb estou a ler o C for dummies que por sua vez está bastante bem explicadinho. É mesmo para quem numca ouviu ou programou nisto. lol
Bem pessoal, mais uma duvida.
Qual a diferença e/ou vantagem em escrever isto:
#include <stdio.h>
void main ()
{
... etc
e,
#include <stdio.h>
void main (void)
{
... etc
?
Outra coisa:
float abs (float x)
{
if (x<0)
return -x;
else
return x;
}
main ()
{
float a;
printf ("a?");
scanf ("%f", &a);
printf ("O modulo é %f", abs(a));
}
Alguém pode-me explicar o printf ("O modulo é %f", abs(a))?
Principalmente o q q está ali a fazer o %f?
Cumps.
void é uma palavra reservada do C que significa "vazio" ou seja quando uma função tem tipo de retorno void (por ex: void cavalo () ), quer dizer que não vai retornar nenhum valor para o programa principal. Se aparece void nos argumentos (como no caso: void main (void)), quer dizer mais uma vez, que ali não vai aparecer nada, ou seja, a função main não tem argumentos. A diferença que existe entre "void main()" e "void main(void)" é praticamente nula (penso eu). A primeira difere da 2ª no facto de a 2ª especificar o tipo dos argumentos da main. Mas utiliza a 1ª opção (pois é possível que a função main possua argumentos, como por ex: argv e argc). A explicação é mais intrínseca do que isto (eu também não sei dizer muito bem, e também não estou para me aborrecer muito com este pormenor).
Alguém pode-me explicar o printf ("O modulo é %f", abs(a))?
printf significa print+f (de format) ou seja, é uma impressão formatada. O objectivo neste printf é que apareça a seguinte mensagem (imagina por ex: a=-5): "O módulo é 5". Como é que então se coloca o '5' ali? Simples. Passas ao printf o valor do módulo de -5 através de "abs(a)", mas para que o printf te apresente o valor desse resultado, tens que colocar %f no local onde queres que esse resultado apareça. Ao fazeres isto, durante a execução do programa, quando for altura de apresentar a mensagem no ecrã, o programa, ao detectar o %f vai associá-lo ao resultado (ou valor) do primeiro elemento que apareça a seguir às aspas. Ou seja, neste caso, mal ele detecte o %f, vai associá-lo ao abs(a). Se por exemplo tivesses algo do género
Código:
printf("O módulo de %f é %f",a,abs(a)));
%f -> o f vem de float (que é o tipo de dado que a função abs retorna).
Se tivesses
Código:
int abs(float x)