salut
mon probleme c’est que quand je rentre une lettre il fait une boucle infinie alors que normalement il devrait faire sortir et afficher oups.
que faire
ps: je debute
#include <conio.h>
#include <stdio.h>
void main (void){
int nbr;
printf("entrer un caractere chiffre");
scanf ("%d",&nbr);
while ((nbr<‘a’) || (nbr>‘z’)){
printf("test");
scanf ("%d",&nbr); }
printf("oups");
getch();}
int nbr;
printf("entrer un caractere chiffre");
scanf ("%d",&nbr);
while ( (nbr < 'a') && (nbr>'z') )
{
printf("test");
scanf ("%d",&nbr);
}
printf("oups");
:neutre:
euh
désolé mais chez moi ca ne marche pas
il met oups a tout les coup j’ai changé tes && par des || mais alros ca fait des boucle infinie
Tu veux juste savoir s’il a tapé une lettre de a à z, c’est ça ?
je veux quand je tape des chiffre il mete test
et que quand je tape des lettre de a à z il mette oupss
Dans ce cas :
unsigned char nbr;
printf("entrer un caractere chiffre");
scanf ("%c",&nbr);
printf("\n");
printf("%s", isalpha(nbr) ? "lettre" : "chiffre");
isalpha il ne reconnait pas je travail avec borland
mais ca m’a l’air bien complexe peut etre que je n’ai asp encore vu cette chose.
merci quand meme
pour isalpha il faut inclure ctype.h
c’est une fonction qui te renvoie qqch, après karlkox nous a pondu un code de qualité mais peu lisible pour un débutant. il utilise l’opérateur ternaire ‘?’ pour traiter la valeur de retour de la fonction isalpha().
ex : condition ? valeur retourné si vrai : valeur retourné si fausse
euh ué mais là je comprend pas grand chose.
a partir de ce que j’ai ecrit moi meme n’y a t’il moyen d’arriver a ce que je veux faire??
merci
int my_isdigit(const int c)
{
return ((unsigned)c - '0') <= 9;
}
int my_isalpha(const int c)
{
return ( (c>=97) && (c<=122) || (c>=65) && (c<=90) );
}
int main(void)
{
unsigned char nbr;
printf("entrer un caractere chiffre");
scanf ("%c",&nbr);
printf("\n");
printf("%s", my_isalpha(nbr) ? "lettre" : "chiffre");
Devrait être assez explicite 
ok merci
c sympas de te donenr tout se mal mais je ne comprend pas grand chose.
je suis debutant. mais en parament c ptet moi qui veux essayer de fair un truc compliqué. je ne sais pas. on c ptet pas metre des codition facilement alphabétique quand on gere du numérique.
merci quand meme
ah si je comprend bien tu lui dit d’aller voir dans le code ascii
quand tu ecrits
nt my_isalpha(const int c)
{
return ( (c>=97) && (c<=122) || (c>=65) && (c<=90) );
enfin bon c pas grave
youpie j’ai trouvé mon erreur.
#include <conio.h>
#include <stdio.h>
void main (void){
char nbr;
printf(“entrer un caractere chiffre “);
scanf (”%c”,&nbr);
fflush(stdin);
while (nbr<‘a’ || nbr>‘z’)
{
printf(“test :”);
scanf ("%c",&nbr);
fflush(stdin);
}
printf(“oups”);
getch();}
n’empeche je vois pas pourquoi tu as a fais tout ce que tu faisais alors que moi comme ca, ca fonctionne. ptet que tu n’avais pas compris ce que je voulais. il
En effet, j’avais mal compris ton problème, je ne savais pas qu’il s’agissait plus d’un problème d’affichage qu’autre chose.
A noter que ton code ne devrait pas retourner vraie si la lettre est en majuscule 
oui je le sais
merci quand meme d’avoir penser a me le dire