Exercice 1
#include <stdio.h> #include <string.h> main() { char NOM[40], PRENOM[40]; printf("Introduisez votre nom et votre prénom: \n"); scanf("%s %s", NOM, PRENOM); printf("\nBonjour %s %s !\n", NOM, PRENOM); printf("Votre nom est composé de %d lettres.\n", strlen(NOM) + strlen(PRENOM)); /* ou bien printf("Votre nom est composé de %d lettres.\n", strlen(strcat(NOM,PRENOM))); */ return 0; }
Exercice 2
#include <stdlib.h> #include <string.h> main() { /* Déclarations */ char CH1[200], CH2[200]; /* chaînes entrées */ int RES; /* résultat de la fonction strcmp */ printf("Introduisez la première chaîne de caractères : "); gets(CH1); printf("Introduisez la deuxième chaîne de caractères : "); gets(CH2); /* Comparaison et affichage du résultat */ RES = strcmp(CH1,CH2); if (RES<0) printf("\"%s\" précède \"%s\"\n",CH1 ,CH2); else if (RES>0) printf("\"%s\" précède \"%s\"\n",CH2 ,CH1); else printf("\"%s\" est égal à \"%s\"\n",CH1, CH2); return 0; }
Exercice 3
a) Utiliser les fonctions spéciales de <string>.
#include <stdio.h> #include <string.h> main() { /* Déclarations */ char CH1[100], CH2[100]; /* chaînes données */ char CH3[100]=""; /* chaîne résultat */ /* Saisie des données */ printf("Introduisez la première chaîne de caractères : "); gets(CH1); printf("Introduisez la deuxième chaîne de caractères : "); gets(CH2); /* Traitements */ strncpy(CH3, CH1, strlen(CH1)/2); strncat(CH3, CH2, strlen(CH2)/2); /* Affichage du résultat */ printf("Un demi \"%s\" plus un demi \"%s\" donne \"%s\"\n", CH1, CH2, CH3); return 0; }
Exercice 4
#include <stdio.h> #include <string.h> main() { /* Déclarations */ char VERB[20]; /* chaîne contenant le verbe */ char AFFI[30]; /* chaîne pour l'affichage */ int L; /* longueur de la chaîne */ /* Saisie des données */ printf("Verbe : "); gets(VERB); /* Contrôler s'il s'agit d'un verbe en 'er' */ L=strlen(VERB); if ((VERB[L-2]!='e') || (VERB[L-1]!='r')) puts("\aCe n'est pas un verbe du premier groupe.!"); else { /* Couper la terminaison 'er'. */ VERB[L-2]=''; /* Conjuguer ... */ AFFI[0]=''; strcat(AFFI, "je "); strcat(AFFI, VERB); strcat(AFFI, "e"); puts(AFFI); . . . AFFI[0]=''; strcat(AFFI, "ils "); strcat(AFFI, VERB); strcat(AFFI, "ent"); puts(AFFI); } return 0; }