Exercice C

raol -  
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   -
salut les amis,
vous pouvez me resoudre l'exercice suivant:

Ecrire un programme en C qui fait saisir des caracteres par l'utilisateur tant qu'il n'entre pas le caractere k (il faut calculer le nombre de caractere saisi et l'afficher à la fin).
merci d'avance..

5 réponses

BloodyAngel Messages postés 1482 Date d'inscription   Statut Contributeur Dernière intervention   403
 
Hello

#include <stdio.h>

main()
{
char carac[2];
int cpt=0;

clrscr();
while carac != 'k'
{
printf("\n Entrez un caractère : ");
a=getche()
cpt++;
}
printf ("\n\n Vous avez entré %d caractères",&cpt);
getch();
}

0
BloodyAngel Messages postés 1482 Date d'inscription   Statut Contributeur Dernière intervention   403
 
Correction :
while (carac[0] != 'k')

Après ça devrait marcher
0
mype Messages postés 2435 Date d'inscription   Statut Membre Dernière intervention   437
 
ça m'etonne que ton programme marche BloodyAngel il y a quelques fautes de syntaxe...
je te propose ça
#include<stdio.h>

int main()
{
	char c;
	int nbr=0;
	while(c!='k')
	{
		printf("entre un caractere : \n");
		c=fgetc(stdin);
		getchar();
		nbr++;
	}
	printf("nombre de caractere saisi : %d\n",nbr);
}
0
BloodyAngel Messages postés 1482 Date d'inscription   Statut Contributeur Dernière intervention   403
 
Oui je m'y attendais ;)
Je l'ai écris sans le tester directement dans CCM à la va-vite juste pour le mettre sur la piste :)
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Salut,

tu as oublié le return 0;, mais vu l'heure 00:43:06 je comprends ;-))

0
raol
 
salut
merci d'abord pour votre aide, mais pourquoi vous avez écrit getchar() après getc() on sait qu'ils ont le meme role
0

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

Posez votre question
mype Messages postés 2435 Date d'inscription   Statut Membre Dernière intervention   437
 
quand tu tapes le caractere apres tu appuie sur la touche entree on utilise le getchar() pour récupérer le caractere \n de la touche entree pour pas qu'il soit stocké dans la variable c
0
raol
 
oui merci,c'etait ça mon probleme lorsque je tape un caractere ensuite j'appuie sur entree il me donne deux message "entre un caractere" successive.
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570 > raol
 
Salut,

voici une autre façon de le faire
#include<stdio.h>

int main()
{
  int nc=0;
  char c;
  do{
      printf("Caractere ? ");
      if((c=getchar())!='\n' && c!='k') ++nc;
      getchar();
  }while(c!='k');

  printf("nombre de caracteres saisis : %d\n",nc);
  return 0;
}

0