Salut a tous, je suis en premiere annee de programmation en C.
J'ai rater un cours la semaine derniere pour des raison de sante et je me retrouve avec un DM a faire sans cours dessus.
voici le devoir:
1) Declarez une chaine char str[81];
2)Entrez une chaine avec le clavier (espaces inclus) en utilisant la technique vu en cours?! (utiliser while et getchar() et non pas gets() ou fgets()). Afin de pouvoir entrer n'importe quelle quantite inferieur ou egale a 80 char,(81 etant reserver pourun caractere \0 ,NULL, si besoin). Soyez sur que NULL soit au bon endroit dans votre chaine et que cette derniere n'accepte qu'un minimum de 15 characteres.
3)Vous entrez une chaine 5 fois, Pensez donc a mettre un loop.
4)Veillez a ce que chaque chaine ai au moins un char correspondant a chauque categories ci-dessous:
a)Lettre Alphabetique.
b)Lettre Minuscule
c)Lettre Majuscule
d)Charactere Numerique
e)Charactere Alphanumerique
f)Autre ctype
5)Indiquez la taille de chaqune des 5 chaines ainsi que le nombre de characteres correspondant a chaque categories (a),b),c)...)
Faire la meme operation en combinant les 5 chaines.
Voila, je m'excuse egalement de l'ennoncer qui n'ai pas hyper bien redige.
Mon devoir est en Anglais et mon Francais est un peu confus.
Merci de votre aide dans tout les cas.
pour le moment mon code est tout dans la fonction main.
Voila a quoi il ressemble:
- include <stdio.h>
- include <ctype.h>
- include <string.h>
int main (void)
{
char str [81];
int length, i,j,a=0,b=0,c=0,d=0,e=0,f=0;
{ for (j = 1; j < 6; j++)
{printf("\nInput string %i to breakdown: ",j);
gets(str);
length = strlen(str);
while (length<15||length>80)
{
if(length<15)
{
printf("\nInput string %i with at least 15 characters: ",j);
gets(str);
}
if(length>80)
{
printf("\nInput string %i with no more than 80 characters: ",j);
gets(str);
}
}
for (i = 0; i < length; i++)
{
if (isalpha(str[i]))
a++;
if (islower(str[i]))
b++;
if (isupper(str[i]))
c++;
if (isdigit(str[i]))
d++;
if (isalnum(str[i]))
e++;
if (isxdigit(str[i]))
f++;
if (isspace(str[i])&&(f==i))
f++;
if (iscntrl(str[i])&&(f==i))
f++;
if (isgraph(str[i])&&(f==i))
f++;
if (isblank(str[i])&&(f==i))
f++;
if (isprint(str[i])&&(f==i))
f++;
if (ispunct(str[i])&&(f==i))
f++;
}
printf("The length of string %i is %i.\n\n",j,length);
printf("There is %i alphabetic characters.\n",a);
printf("There is %i lower case characters.\n",b);
printf("There is %i upper case characters.\n",c);
printf("There is %i numeric characters.\n",d);
printf("There is %i alphanumeric characters.\n",e);
printf("There is %i other characters.\n",f);
printf("\n");
}
}
printf("\n\n");
return 0;
}