Vous êtes sur la page 1sur 4

EX1 TP4

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

void supprim(char *ch) {

char *p1 = strchr(ch, '(');

char *p2;

if (p1 != NULL) {

p2 = strchr(p1, ')');

if (p2 != NULL) {

memmove(p1, p2 + 1, strlen(p2+1)+1);

int main()

char ch[100];

printf("Entrez une chaine avec des parentheses: ");

scanf("%s ", ch);

supprim(ch);

printf("Chaine sans les parentheses: %s\n", ch);

return 0;

EX2 TP4

#include <stdio.h>

#include <stdlib.h>

int main()

char ch[100];

char *p;

printf("Entrez une chaine de caracteres : ");

scanf("%s",ch);

p = ch;

while (*p != '\0') {

p++;
}

printf("La longueur de la chaine est : %ld\n", p - ch);

return 0;

EX3 TP4

#include <stdio.h>

#include <stdlib.h>

int main() {

char ch[100];

int debut, fin, palindrome;

printf("Entrez une chaine de caracteres : ");

scanf("%s", ch);

debut = 0;

fin = 0;

while (ch[fin] != '\0') {

fin++;

fin--;

palindrome = 1;

while (debut < fin) {

if (ch[debut] != ch[fin]) {

palindrome = 0;

debut++;

fin--;

if (palindrome) {

printf("La chaine est un palindrome.\n");

} else {

printf("La chaine n'est pas palindrome.\n");

return 0;

EX3 TP4 2eme Methode : en utilisant des pointeurs au lieu des indices numériques

#include <stdio.h>
int main() {

char ch[100];

char *debut, *fin;

int palindrome;

printf("Entrez une chaine de caracteres : ");

scanf("%s", ch);

debut = ch;

fin = ch;

while (*fin != '\0') {

fin++;

fin--;

palindrome = 1;

while (debut < fin) {

if (*debut != *fin) {

palindrome = 0;

break;

debut++;

fin--;

if (palindrome) {

printf("La chaine est palindrome.\n");

} else {

printf("La chaine n'est pas palindrome.\n");

return 0;

EX 4 TP4

#include <stdio.h>

int main() {
char ch[100];

char *p;

int nombre_mots = 0;

int est_dans_mot = 0;

printf("Entrez une chaine de caracteres : ");

scanf("%s",ch);

p = ch;

while (*p != '\0') {

est_dans_mot = 1;

nombre_mots++;

else if (isspace(*p) && est_dans_mot) {

est_dans_mot = 0;

p++;

printf("Le nombre de mots dans la chaine est : %d\n", nombre_mots);

return 0;

Vous aimerez peut-être aussi