Veuillez me dire c koi l'erreur dans ce code

Fermé
GKA Messages postés 341 Date d'inscription vendredi 17 août 2007 Statut Membre Dernière intervention 3 août 2012 - 6 janv. 2010 à 23:16
 callfinger - 7 janv. 2010 à 02:06
Bonsoir; SVP quelqu'un essaie ce code et me dit s'il est bon ou nn car sur ma machine il me dit Runtime error ou quoi !! en tt k s'il contient des erreurs merci de lé corriger ! voici le code:

#include<stdio.h>
#include<string.h>

void main ()
{
char ch1[20], ch2[20],ci,cj;
int i,j,k;

printf("donner une 1ere chaine\n");
gets(ch1);
printf("donner une 2eme chaine\n");
gets(ch2);
i==0 ;
while (i != strlen(ch1))
{
j==0;
while (j != strlen(ch2))
{
ci == ch1[i] ; cj == ch2[j];
if (ci == cj)
for (k==i;k<strlen(ch1);k++)
{
ch1[k] == ch1[k+1];
}
else
j==j+1;
}
i== i+1;
}
puts(ch1);

}
A voir également:

6 réponses

Utilisateur anonyme
6 janv. 2010 à 23:37
return.....??
0
iamshinji971 Messages postés 1938 Date d'inscription mardi 2 décembre 2008 Statut Membre Dernière intervention 8 décembre 2010 173
6 janv. 2010 à 23:39
je ne comprend pas trop la disposition de tes "}"
0
GKA Messages postés 341 Date d'inscription vendredi 17 août 2007 Statut Membre Dernière intervention 3 août 2012 77
6 janv. 2010 à 23:58
@ PL_4: ya pa de return !!!
@iamshinji971: les "{ }" ne sont pas necessaires que dans la boucle "for" car elle contient une seule instruction
0
loupius Messages postés 697 Date d'inscription dimanche 1 novembre 2009 Statut Membre Dernière intervention 31 décembre 2017 148
7 janv. 2010 à 00:10
En 'C':
- '=' est l'assignation,
- '==' est le test.
Et il y a beaucoup mais vraiment beaucoup trop de tests ;-)
Bonne continuation.
0

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

Posez votre question
GKA Messages postés 341 Date d'inscription vendredi 17 août 2007 Statut Membre Dernière intervention 3 août 2012 77
7 janv. 2010 à 00:27
merci bien cé ca mon erreur mais encore il ne donne pas de résultat !! le curseur saute a la ligne apré ke j'introduit la 2éme chaine et ne fai rien !!!!!!
0
N'utilisez jamais gets(). Comme il est impossible de savoir à l'avance
combien de caractères seront lus par gets(), et comme celui-ci écrira
tous les caractères lus, même s'ils débordent du tampon, cette fonction
est extrêmement dangereuse à utiliser. On a déjà utilisé ce dysfonc‐
tionnement pour créer des trous de sécurité. UTILISEZ TOUJOURS fgets()
À LA PLACE DE gets().
extrait de man gets....
a la compilation d'ailleurs tu un warning:


-*- mode: compilation; default-directory: "~/" -*-
Compilation started at Thu Jan 7 02:01:39

gcc -Wall -std=c99 -g -o terreur test.c
test.c:4: warning: return type of ‘main’ is not ‘int’
/tmp/ccr92LoB.o: In function `main':
/home/pps/test.c:10: warning: the `gets' function is dangerous and should not be used.

Compilation finished at Thu Jan 7 02:01:40





ensuite meme si c'est correct de faire void main(void); a cette ecriture, prefere celle-ci int main(void) et a la fin du main un return EXIT_SUCCESS;
0