Langage C

Fermé
stark173 Messages postés 105 Date d'inscription vendredi 26 juillet 2013 Statut Membre Dernière intervention 6 février 2015 - 27 oct. 2013 à 11:44
Mouthon Messages postés 524 Date d'inscription mardi 16 octobre 2012 Statut Membre Dernière intervention 13 juin 2014 - 27 oct. 2013 à 17:18
Bonjour, je dois faire un exercice en langage C

Voici l'énoncé: - "Je demande un nombre et j'affiche le carré de ce nombre"

Voici ce que j'ai fais:
int main()
{
double resultat = 0;

int nombre = 0;

printf("rentrer un nombre \n");

scanf("%d" , nombre);

resultat = pow(nombre,2);


printf("le resultat est \n ");

scanf("%f", resultat);


return 0;
}

Mon programme ne marche pas, merci de me venir en aide
A voir également:

1 réponse

Mouthon Messages postés 524 Date d'inscription mardi 16 octobre 2012 Statut Membre Dernière intervention 13 juin 2014 143
Modifié par Mouthon le 27/10/2013 à 12:09
Bonjour.

Il y a beaucoup de maladresses dans ton code.

Ligne 3:
Pourquoi ta variable resultat est un double, alors que celle du nombre à multiplier est un int ? Une puissance d'entier sera forcément un entier, inutile de te compliquer la vie à renvoyer un nombre décimal. Peu importe que pow demande 2 double, le plus logique est que tu y envoie deux fois le même type de variables.

Ligne 9:
Pour utiliser scanf, tu dois utiliser un pointeur, ou plutôt l'adresse de ta variable, pour qu'il y inclue le résultat de la captation. La syntaxe que tu utilises là renverras un warning à la compilation, et un "segmentation fault" au moment d'appeler la fonction.

Ligne 16:
Tu utilises un scanf alors qu'on dirait que tu veux afficher le résultat. scanf() est une fonction de captation, elle n'affichera rien. Tu peux afficher le résultat dans ton printf précédent, grâce aux expressions %d ou %f.

Je ne vais évidemment pas faire l'exercice pour toi, quid de sa portée sinon. Si ma réponse t'embrouille un peu, je te conseille vivement de consulter des tutos complets pour débuter le C, comme ceux d'openclassroom (Anciennement Siteduzéro). Tu y trouveras les réponses à tes questions, ainsi que leur explication, histoire de démarrer sur de bonnes bases.
https://openclassrooms.com/fr/courses/19980-apprenez-a-programmer-en-c

Bon courage, et je te souhaite surtout de bien t'éclater avec la prog !
1
stark173 Messages postés 105 Date d'inscription vendredi 26 juillet 2013 Statut Membre Dernière intervention 6 février 2015
27 oct. 2013 à 12:10
rien compris
0
Mouthon Messages postés 524 Date d'inscription mardi 16 octobre 2012 Statut Membre Dernière intervention 13 juin 2014 143
27 oct. 2013 à 17:18
Tu as manqué le principal:

Si tu n'as rien compris, va voir un tuto. Il faut du temps pour apprendre à programmer, et compter sur les autres pour résoudre ton exercice ne t'apprendra ni ne t'apportera rien.

Je ne trouve pas de tuto sur la politesse, je te laisse en chercher un là dessus également.
0