Résolu Probleme programme en langage C

Solutions (6)
Tags :
  • Bibliotheque
  • Token
  • string
  • Programme
  • Programmation
, Maître Yoda |
Bonjour tout le monde! C'est a propos d'un problème de programmation en C sur Code::Block, j'arrive pas à résoudre les erreurs:
Voici le programme:

1 #include <stdio.h>
2 #include <stdlib.h>
3 #include <conio.h>
4 #include <string.h>
5
6 void main()
7 {
8 char tab[10][20];
9 char x;
10 char tiret="-";
11 char *affichage;
12 char lettre[2];
13 int h,i,j,length;
14 randomize();
15 for (i=0,i<=10,i++
16 gets (tab);
17 random(j);
18 length=strlen(tab[j]);
19 for (h=0,h<=length,h++)
20 affichage=strcat(affichage,tiret);
21 do{
22 printf ("Entrez votre lettre:" )
23 scanf("%s",&lettre);
24 for (h=0,h<=length,h++)
25 {
26 if (strcmp(lettre,tab[h]==0)
27 affichage[h]=lettre;
28 }
29 }while(strcmp(tab[j],affichage)!=0);
30}

et les erreurs:

15 error: expected expression before ')' token
19 error: expected ';' before ')' token
19 error: expected expression before ')' token
24 error: expected ';' before ')' token
24 error: expected expression before ')' token
27 error: expected ')' before 'affichage'
28 error: expected expression before '}' token

Merci de m'aider


Contenus similaires
Meilleure solution
partage
|
Non, en C Standard, c'est srand() pour le seed (généralement time()), et rand() pour le tirage.
  • Commenter cette solution |
Score
0
òh
òi
, Maître Yoda |
Meilleure réponse sélectionnée par Yoanndu18.
  • Commenter cette réponse |
Score
0
òh
òi
, Maître Yoda |
C bon pour ces deux erreurs j'ai réussi à les resoudre mais après deux autres apparaissent:

14 undefined reference to 'randomize'
19 undefined reference to 'random'

C bizarre parce que ces deux fonctions sont censées etres dans la bibliothèque <stdlib.h>

  • Commenter cette réponse |
Score
0
òh
òi
, Maître Yoda |
Voici ce que j'ai tapé:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>

void main()
{
char tab[10][20];
char x;
char tiret="-";
char *affichage;
char lettre[2];
int h,i,j,length;
randomize();
for (i=0; i<=10; i++)
{
gets (tab);
}
random(j);
length=strlen(tab[j]);
for (h=0; h<=length; h++) {
affichage=strcat(affichage,tiret);
do{
printf ("Entrez votre lettre:");
scanf("%s",&lettre);
for (h=0; h<=length; h++)
{
if (strcmp(lettre,tab[h]==0)
29. {
affichage[h]=lettre;
}
32. }
}while(strcmp(tab[j],affichage)!=0);
}
}

et les erreurs :

29 error: expected ')' before '{' token
32 error: expected expression before '}' token


  • Commenter cette réponse |
Score
0
òh
òi
, Maître Yoda |
crazycat@idn a dit :
Je connais très peu le C, mais je pense que tes erreurs sont facilement corrigeables:
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <conio.h>
  4. #include <string.h>
  5.  
  6. void main()
  7. {
  8. char tab[10][20];
  9. char x;
  10. char tiret="-";
  11. char *affichage;
  12. char lettre[2];
  13. int h,i,j,length;
  14. randomize();
  15. for (i=0; i<=10; i++)
  16. {
  17. gets (tab[i]);
  18. random(j);
  19. length=strlen(tab[j]);
  20. for (h=0; h<=length; h++) {
  21. affichage=strcat(affichage,tiret);
  22. do {
  23. printf ("Entrez votre lettre:" )
  24. scanf("%s",&lettre);
  25. for (h=0; h<=length; h++)
  26. {
  27. if (strcmp(lettre,tab[h]==0)
  28. {
  29. affichage[h]=lettre;
  30. }
  31. }
  32. } while(strcmp(tab[j],affichage)!=0);
  33. }
  34. }
  35. }


Je vais essayer en tout cas merci pour la réponse
  • Commenter cette réponse |
Score
0
òh
òi
|
Je connais très peu le C, mais je pense que tes erreurs sont facilement corrigeables:
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <conio.h>
  4. #include <string.h>
  5.  
  6. void main()
  7. {
  8. char tab[10][20];
  9. char x;
  10. char tiret="-";
  11. char *affichage;
  12. char lettre[2];
  13. int h,i,j,length;
  14. randomize();
  15. for (i=0; i<=10; i++)
  16. {
  17. gets (tab[i]);
  18. random(j);
  19. length=strlen(tab[j]);
  20. for (h=0; h<=length; h++) {
  21. affichage=strcat(affichage,tiret);
  22. do {
  23. printf ("Entrez votre lettre:" )
  24. scanf("%s",&lettre);
  25. for (h=0; h<=length; h++)
  26. {
  27. if (strcmp(lettre,tab[h]==0)
  28. {
  29. affichage[h]=lettre;
  30. }
  31. }
  32. } while(strcmp(tab[j],affichage)!=0);
  33. }
  34. }
  35. }
  • Commenter cette réponse |

Ce n'est pas ce que vous cherchiez ?

Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS