Erreur printf langage C sous Ubuntu

Fermé
Yodanath Messages postés 2 Date d'inscription mercredi 6 mai 2020 Statut Membre Dernière intervention 27 juillet 2020 - 27 juil. 2020 à 16:14
Alvin1614 Messages postés 107 Date d'inscription lundi 24 avril 2017 Statut Membre Dernière intervention 22 décembre 2021 - 27 juil. 2020 à 18:19
Bonjour,

En tant que débutant sur le langage C, je me suis dis pour régler mes compétences faire une calculette (j'ai commencé aujourd'hui).

En essayant de compiler mon programme dans le terminal, il me met une erreur pour <ital>printf<itall>.

[code]

#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/mman.h>
#include <sys/stat.h>
#include <errno.h>
// Je sais qu'il n'y a pas besoin de tout ça mais, voilà^^^
int main(int argc, char const *argv[]) {

int nb1 = 0;
int nb2 = 0;
int result = 0;
int demande = 0
//Choisir nombre à calculer
printf("Choisissez un premier nombre : \n");
scanf("%d", &nb1);

printf("Choisissez un second nombre : \n");
scanf("%d", &nb2);
//Demander quel calcul
printf("Que voulez-vous ?\n");
printf("1.Addition\n2.Soustraction\n3.Multiplication\n4.Division\n");
scanf("%d", &demande);

// Début Addition
if(demande == 1){
result = nb1 + nb2;

printf("%d + %d = %d\n", nb1, nb2, result);
}

getchar();

return 0;
}

[Fin code]

Erreur terminal :


Voilà,
Merci d'avance

Yodanath
A voir également:

2 réponses

Alvin1614 Messages postés 107 Date d'inscription lundi 24 avril 2017 Statut Membre Dernière intervention 22 décembre 2021 4
Modifié le 27 juil. 2020 à 18:00
Bonjour,

Je tiens tout d'abord à préciser que je ne code pas du tout en C, donc si ma réponse est absurde, c'est normal ;-)...

L'erreur me paraît simple, le terminal indique cette erreur : Erreur : une virgule ou point-virgule est attendu avant 'printf'.

Regardons ton code :
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/mman.h>
#include <sys/stat.h>
#include <errno.h>
// Je sais qu'il n'y a pas besoin de tout ça mais, voilà^^^
int main(int argc, char const *argv[]) {

int nb1 = 0;
int nb2 = 0;
int result = 0;
int demande = 0
//Choisir nombre à calculer
printf("Choisissez un premier nombre : \n");
scanf("%d", &nb1);

printf("Choisissez un second nombre : \n");
scanf("%d", &nb2);
//Demander quel calcul
printf("Que voulez-vous ?\n");
printf("1.Addition\n2.Soustraction\n3.Multiplication\n4.Division\n");
scanf("%d", &demande);

// Début Addition
if(demande == 1){
result = nb1 + nb2;

printf("%d + %d = %d\n", nb1, nb2, result);
}

getchar();

return 0;
}


Ce qui nous intéresse c'est la ligne 17, c'est là que le terminal nous dit qu'il manque une virgule ou un point virgule AVANT. Avant le
printf
, il y a un commentaire donc il faut aller voir à la ligne 15 et on remarque que c'est la seule ligne qui ne se termine pas par un point-virgule...

Essaye d'en mettre un et pour moi ça devrait marcher ;).

Bien à toi,
0
Yodanath Messages postés 2 Date d'inscription mercredi 6 mai 2020 Statut Membre Dernière intervention 27 juillet 2020
27 juil. 2020 à 18:18
Salut @Alvin1614

Merci beaucoup ça marche !

Je te remercie, j'étais coincé ^^

@+
Yodanath
0
Alvin1614 Messages postés 107 Date d'inscription lundi 24 avril 2017 Statut Membre Dernière intervention 22 décembre 2021 4
27 juil. 2020 à 18:19
De rien, avec plaisir !

Bon apprentissage !
0