Affichage nul

Fermé
boumbo - 15 déc. 2005 à 21:10
arth Messages postés 9374 Date d'inscription mardi 27 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2016 - 16 déc. 2005 à 19:28
bonsoir , est normal que ce programme composé de 2 fichiers ne m'affiche rien à l'écran quand je l'exécute :

int my_euros();

int main(void)
{
int my_euros();
return 0;
}


#include <stdio.h>

int my_euros()
{
float euros = 1.0;
for ( euros = 0; euros < 5000; euros = euros +20 )
{
printf("%3.2f %3.2f\n", euros, euros * 6.5);
}
return 0;
}



merci

6 réponses

arth Messages postés 9374 Date d'inscription mardi 27 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2016 1 291
15 déc. 2005 à 21:30
bon alors disons que tu n'affiche rien et que cela est normal.

lors de la creaton d'un programme on met toujours les bibliotheques en haut du programme. ensuite tu définis le prototype de tes fonctions (cest a dire ce qu'elle retourne, les types des parametres lorsqu'il y en a,le type du parametre retourné,etc), donc ici "int my_euro();" . ensuite une fois que le prototype de fonction a été défini , il n'est pa nécessaire de le rappeler, donc pour faire appel à ta fonction my_euro, ils suffit juste de l'appeler comme suit:

my_euro();

ensuite,lorsque tu désires afficher un entier a l'ecran ou un flottant, il faut le faire vis a vis de son type. donc si tu veux afficher le nombre contenu dans la variable "euro", i te faut faire comme suit :

printf("%.2f",euros);

cela va t'afficher le nombre "euros" avec 2 chiffres après la virgule. voici ce que ca donnerait donc :


#include <stdio.h>
#include<windows.h>

int my_euros();

int main(void)
{
my_euros();
system("PAUSE");//pause pour eviter la fermeture du programme
return 0;
}

int my_euros()
{
float euros = 1;
for ( euros = 0; euros < 5000; euros = euros +20 )
{
printf("%.2f %.2f\n", euros, euros * 6.5);
}
return 0;
}


voila jespere que ca pourra t'aider
0
le programme est sous linux , pas windows
0
arth Messages postés 9374 Date d'inscription mardi 27 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2016 1 291
15 déc. 2005 à 21:54
bah tu vires le system(pause) et la biblio windows.h et tu mets "getchar();" a la place dus system(pause); Ca donne:

#include <stdio.h>

int my_euros();

int main(void)
{
my_euros();
getchar();
return 0;
}

int my_euros()
{
float euros = 1;
for ( euros = 0; euros < 5000; euros = euros +20 )
{
printf("%.2f %.2f\n", euros, euros * 6.5);
}
return 0;
}
0
non je ne suis pas d'accord , je ne devrais pas du tout mettre getchar , aucun intérêt , je ne prends aucun caractère en entrée , c'est juste un programme d'affichage ici , nul besoin de getchar , quelqu'un a une idée svp?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
2 fichiers tu fait le makefile mon ami
0
arth Messages postés 9374 Date d'inscription mardi 27 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2016 1 291
16 déc. 2005 à 19:28
ui pardon tu peux virer le getchar parce qu'en fait j'ai mis ca car sous windaube ca te ferme direct la fenetre dos doncfallait bien que je trouve un truc mais ui sous linux tu peux l'enlevais y servait juste a faire une pause mais y en a pas besoin en fait
0