Vous êtes sur la page 1sur 2

Université Moulay Ismaïl 2022-2023

ENSAM – Meknès S3 API / 2 ième


Année

TP6 -- Chaines de caractères


Exercice 1 :
Écrire une fonction int longueur (char * s) pour compter le nombre de caractères d’une chaine
donnée en argument.
Exemple : s = "Bonjour tout le monde", l’appel longueur (s) retourne 21.
Dans le fonction principale main, demandez à l’utilisateur de saisir une chaine puis comparez votre
fonction avec la fonction strlen prédéfinie dans cstring.

Ecrire une fonction void afficher(char *s, int longueur) pour afficher une chaine
de caractère donnée en argument en utilisant une boucle.

• Soit le code suivant :

Analyser le code et comparer le résultat avec la question précédente

Exercice 2

Écrire une fonction int indexChr (char * s, char c) pour chercher le caractère c dans la
chaine s. La fonction retourne d’indice de la première occurrence de c dans s ou -1.
Exemple : L’appel indexChr ("Bonjour" , 'o') retourne 1. L’appel indexChr ("Bonjour" , 'A') retourne -1.

Dans le fonction principale main, comparez votre fonction avec la fonction strchr prédéfinie
dans cstring.

Exercice 3

Écrire une fonction int indexStr (char * str, char * sub) pour chercher la sous chaine
sub dans la chaine str. La fonction retourne d’indice de la première occurrence de sub dans str ou -1.
Exemple : L’appel indexStr ("Bonjour tout le monde" , "jour") retourne 3.
Dans le fonction principale main, comparez votre fonction avec la fonction strstr prédéfinie dans
cstring.

Exercice 4

Écrire une fonction void majuscule (char * str) pour convertir les caractères alphabétiques
de la chaine str en majuscule, sans tenir compte des caractères accentués.
Exemples :
str = "Juin 2020" ➔ "JUIN 2020"
str = "TP 5 - Chaînes de caractères" ➔ "TP 5 - CHAîNES DE CARACTèRES"
Modifier la fonction pour tenir compte des caractères accentués. Les caractères é, è, ê, â, … seront aussi
convertis en majuscule sans accents.

Exemple : str = "TP 5 - Chaînes de caractères" ➔ "TP 5 - CHAINES DE CARACTERES".

Exercice 5

Considérons les 3 instructions suivantes :

Exercice 6 :

Soient les codes source suivants :

• Comparez les deux programmes, c’est quoi la différence entre ces deux programmes ?
• Ecrire une fonction qui permet de concaténer deux chaines de caractères en style c.

Vous aimerez peut-être aussi