1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| #include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void)
{
char prenom[120], buf[32], *endptr;
long nombreDeCopie = 0;
long compteur = 0;
printf("Combien de fois dois-tu copier? ");
/* fy -> Pas de scanf, fgets + strtol */
if(fgets(buf,sizeof(buf), stdin) == NULL) {
fprintf(stderr, "Erreur avec fgets\n");
return EXIT_FAILURE;
}
nombreDeCopie = strtol(buf, &endptr, 0);
/* Gestion d'erreur */
if( *endptr != '\n') {
fprintf(stderr, "Erreur avec le nombre fourni\n");
return EXIT_FAILURE;
}
printf("Que dois-tu copier? ");
if(fgets(prenom,sizeof(prenom), stdin) == NULL) {
fprintf(stderr, "Erreur avec fgets\n");
return EXIT_FAILURE;
}
/* On cherche le '\n' pour l'enlever */
endptr = strchr(prenom, '\n');
if(endptr == NULL) {
fprintf(stderr, "Erreur avec la saisie du prenom\n");
return EXIT_FAILURE;
}
else {
/* On enleve le '\n' */
*endptr = '\0';
}
/* Utilise un for, on connait le nombre d'iterations */
for(compteur=1; compteur<=nombreDeCopie; compteur++)
{
printf("%ld.%s\n", compteur, prenom);
}
return EXIT_SUCCESS;
} |
Partager