Langage C
Fermé
Brohs
Messages postés
25
Date d'inscription
vendredi 27 mai 2011
Statut
Membre
Dernière intervention
4 novembre 2011
-
Modifié par Brohs le 29/05/2011 à 13:05
Brohs Messages postés 25 Date d'inscription vendredi 27 mai 2011 Statut Membre Dernière intervention 4 novembre 2011 - 31 mai 2011 à 20:33
Brohs Messages postés 25 Date d'inscription vendredi 27 mai 2011 Statut Membre Dernière intervention 4 novembre 2011 - 31 mai 2011 à 20:33
A voir également:
- Langage C
- Langage ascii - Guide
- Débuter langage batch windows - Guide
- Langage binaire - Guide
- Symboles langage sms - Forum Samsung
- Quotient rationnel langage c ✓ - Forum C
7 réponses
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 836
28 mai 2011 à 15:36
28 mai 2011 à 15:36
Bonjour,
'a' est un int. Si tu lui ajoutes 1, tu obtiens la valeur 'b'.
Donc, tu as juste à faire :
int car='a';
car++;
printf("%c\n",car);
car vaudra 'b'.
Cdlt,
'a' est un int. Si tu lui ajoutes 1, tu obtiens la valeur 'b'.
Donc, tu as juste à faire :
int car='a';
car++;
printf("%c\n",car);
car vaudra 'b'.
Cdlt,
periplasme
Messages postés
391
Date d'inscription
vendredi 22 avril 2011
Statut
Membre
Dernière intervention
5 février 2013
53
28 mai 2011 à 01:52
28 mai 2011 à 01:52
bonsoir !
transformer un caractere ... ok, mais de quelle source ? dans une variable (tableau de char) ou dans un fichier texte ?
transformer un caractere ... ok, mais de quelle source ? dans une variable (tableau de char) ou dans un fichier texte ?
Brohs
Messages postés
25
Date d'inscription
vendredi 27 mai 2011
Statut
Membre
Dernière intervention
4 novembre 2011
29 mai 2011 à 13:01
29 mai 2011 à 13:01
Dans un fichier Texte,
mais en programment un prog qui changera le caractère 'a' en caractère 'b'
mais en programment un prog qui changera le caractère 'a' en caractère 'b'
salut,
moi je ne jure que par http://www.siteduzero.com/tutoriel-3-14189-apprenez-a-programmer-en-c.html c'est trop énnnnnooooorrrmmme
moi je ne jure que par http://www.siteduzero.com/tutoriel-3-14189-apprenez-a-programmer-en-c.html c'est trop énnnnnooooorrrmmme
periplasme
Messages postés
391
Date d'inscription
vendredi 22 avril 2011
Statut
Membre
Dernière intervention
5 février 2013
53
28 mai 2011 à 18:58
28 mai 2011 à 18:58
le site du Zéro ... c'est bien pour une initiation ... mais pas pour apprendre a programmer.
c'est pas avec ça que tu verra des concept plus "poussé" genre liste chinée, arbre binaire et autre . c'est pas parce que au chapitre 3 tu fais de l'interface graphique que t'as tout pigé du C en lui même ... loin de la !
(je revois d'ailleurs le premier exercice : le nombre mystère ... , avec le recul ... c'est juste horrible !)
c'est pas avec ça que tu verra des concept plus "poussé" genre liste chinée, arbre binaire et autre . c'est pas parce que au chapitre 3 tu fais de l'interface graphique que t'as tout pigé du C en lui même ... loin de la !
(je revois d'ailleurs le premier exercice : le nombre mystère ... , avec le recul ... c'est juste horrible !)
Brohs
Messages postés
25
Date d'inscription
vendredi 27 mai 2011
Statut
Membre
Dernière intervention
4 novembre 2011
29 mai 2011 à 12:59
29 mai 2011 à 12:59
je sais, j'ai appris le C sur le site du zéro, j'ai tous appris, mais je ne voie pas comment faire.
Brohs
Messages postés
25
Date d'inscription
vendredi 27 mai 2011
Statut
Membre
Dernière intervention
4 novembre 2011
29 mai 2011 à 21:23
29 mai 2011 à 21:23
Y'a du monde pour m'aider ou pas ?
Brohs
Messages postés
25
Date d'inscription
vendredi 27 mai 2011
Statut
Membre
Dernière intervention
4 novembre 2011
31 mai 2011 à 11:52
31 mai 2011 à 11:52
Plus personne pour me guider ?
Hxyp
Messages postés
401
Date d'inscription
vendredi 28 janvier 2011
Statut
Membre
Dernière intervention
27 avril 2014
54
31 mai 2011 à 14:50
31 mai 2011 à 14:50
Bonjour,
fiddy vous a montré comment faire en C pour passer de la lettre "a" à la lettre "b" simplement en incrémentant sa valeur. Pour une chaine on prend le caractère actuel et on fait un test
si x == 'a'
alors
x++
et la valeur de 'a' +1 = 'b' donc 'a' devient 'b'. Exemple :
char sString[256] = "aazz4a8s91qs78s81t4rg8g15d4189s4aadz5dd94r1rz8a8";
int i; //pour la boucle
for(i=0;sString[i];i++){//on boucle jusqu'au 0 de fin de chaine tant que sString[i] est "vrai"
if(sString[i] == 'a'){//si le caractère actuel est un 'a'
sString[i]++;//on incrémente la valeur 'a'
}
}
et voilà tout les caractère 'a' de la chaîne sString sont maintenant des 'b'
periplasme a aussi montré une autre façon de faire en remplaçant la valeur 'a' par la la valeur 'b' :
char sString[256] = "aazz4a8s91qs78s81t4rg8g15d4189s4aadz5dd94r1rz8a8";
int i; //pour la boucle
for(i=0;sString[i];i++){//on boucle jusqu'au 0 de fin de chaine
if(sString[i] == 'a'){//si le caractère actuel est un 'a'
sString[i]='b';//on remplace la valeur 'a' par 'b'
}
}
Le principe est le même avec les données d'un fichier, on charge soit 1 caractère soit plusieurs dans un buffer comme sString et on test puis on remplace soit en écrivant à l'emplacement (dans ce cas on déplace le curseur à l'emplacement prévu) soit en créant un nouveau fichier (une copie avec les données modifiées) soit.. doit y avoir un tas de possibilités bref
en voici une très simple :
Il n'y a aucune vérification d'erreur dans le code pour l'ouverture du fichier ni pour la lecture ou écriture, donc informez vous la dessus ça peut aider
fiddy vous a montré comment faire en C pour passer de la lettre "a" à la lettre "b" simplement en incrémentant sa valeur. Pour une chaine on prend le caractère actuel et on fait un test
si x == 'a'
alors
x++
et la valeur de 'a' +1 = 'b' donc 'a' devient 'b'. Exemple :
char sString[256] = "aazz4a8s91qs78s81t4rg8g15d4189s4aadz5dd94r1rz8a8";
int i; //pour la boucle
for(i=0;sString[i];i++){//on boucle jusqu'au 0 de fin de chaine tant que sString[i] est "vrai"
if(sString[i] == 'a'){//si le caractère actuel est un 'a'
sString[i]++;//on incrémente la valeur 'a'
}
}
et voilà tout les caractère 'a' de la chaîne sString sont maintenant des 'b'
periplasme a aussi montré une autre façon de faire en remplaçant la valeur 'a' par la la valeur 'b' :
char sString[256] = "aazz4a8s91qs78s81t4rg8g15d4189s4aadz5dd94r1rz8a8";
int i; //pour la boucle
for(i=0;sString[i];i++){//on boucle jusqu'au 0 de fin de chaine
if(sString[i] == 'a'){//si le caractère actuel est un 'a'
sString[i]='b';//on remplace la valeur 'a' par 'b'
}
}
Le principe est le même avec les données d'un fichier, on charge soit 1 caractère soit plusieurs dans un buffer comme sString et on test puis on remplace soit en écrivant à l'emplacement (dans ce cas on déplace le curseur à l'emplacement prévu) soit en créant un nouveau fichier (une copie avec les données modifiées) soit.. doit y avoir un tas de possibilités bref
en voici une très simple :
#include <stdio.h> int main(void)/* la fonction principale sans arguments, donc un programme sans paramètres */ { FILE *fichier;//on créé un pointeur de fichier char c;/* un char pour garder le caractère lu */ fichier=fopen("plop.txt","r+");/* ouvre un fichier en lecture écriture */ while((c=fgetc(fichier))!=EOF){/* boucle récupère le caractère tant qu'on est pas à la fin du fichier, EOF "end of file" */ if(c=='a'){/* compare si le caractère est un 'a' */ fseek(fichier,-1,SEEK_CUR);/* si oui on repositionne le curseur une case AVANT, car le fgetc qui lit s'est déjà décalé à la case suivante */ fputc('b',fichier);/* on remplace à l'emplacement du curseur (donc de la lettre 'a') la lettre 'a' par la lettre 'b', on peut aussi faire fputc(++c,fichier) */ } } fclose(fichier);/* fermeture du fichier apres utilisation */ return 0;/* le main retourne 0 s'il ne s'est pas interrompu avant (pas d'erreur) */ }
Il n'y a aucune vérification d'erreur dans le code pour l'ouverture du fichier ni pour la lecture ou écriture, donc informez vous la dessus ça peut aider
periplasme
Messages postés
391
Date d'inscription
vendredi 22 avril 2011
Statut
Membre
Dernière intervention
5 février 2013
53
31 mai 2011 à 13:30
31 mai 2011 à 13:30
en gros, il faut ouvrir le fichier
FILE *f
f = fopen("fichier_a_parcourir", "w");
pour chaque caractere
si caractere = 'a'
alors caractere = 'b'
fclose(f);
je me souviens plus des fonction exacts et leur fonctionnement, fscanf et fprintf etc etc ... reste plus qu'a chercher avec ça ...
FILE *f
f = fopen("fichier_a_parcourir", "w");
pour chaque caractere
si caractere = 'a'
alors caractere = 'b'
fclose(f);
je me souviens plus des fonction exacts et leur fonctionnement, fscanf et fprintf etc etc ... reste plus qu'a chercher avec ça ...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Brohs
Messages postés
25
Date d'inscription
vendredi 27 mai 2011
Statut
Membre
Dernière intervention
4 novembre 2011
27 mai 2011 à 23:57
27 mai 2011 à 23:57
Personne pour repondre en Langage C ?
Chris 94
Messages postés
50978
Date d'inscription
mardi 8 janvier 2008
Statut
Modérateur
Dernière intervention
17 février 2023
7 326
Modifié par Chris 94 le 28/05/2011 à 01:51
Modifié par Chris 94 le 28/05/2011 à 01:51
Bonsoir,
Il aurait été préférable de poster su le forum "Programmation"... Je te téléporte illico.
Cordialement.
PS : A tout hasard, j'attire ton attention sur :
https://www.commentcamarche.net/infos/25899-demander-de-l-aide-pour-vos-exercices-sur-ccm/
Il aurait été préférable de poster su le forum "Programmation"... Je te téléporte illico.
Cordialement.
PS : A tout hasard, j'attire ton attention sur :
https://www.commentcamarche.net/infos/25899-demander-de-l-aide-pour-vos-exercices-sur-ccm/
Brohs
Messages postés
25
Date d'inscription
vendredi 27 mai 2011
Statut
Membre
Dernière intervention
4 novembre 2011
29 mai 2011 à 12:58
29 mai 2011 à 12:58
OK, d'accord, merci !
Brohs
Messages postés
25
Date d'inscription
vendredi 27 mai 2011
Statut
Membre
Dernière intervention
4 novembre 2011
31 mai 2011 à 19:45
31 mai 2011 à 19:45
Merci à vous periplasme & hxyp !!
Brohs
Messages postés
25
Date d'inscription
vendredi 27 mai 2011
Statut
Membre
Dernière intervention
4 novembre 2011
31 mai 2011 à 20:33
31 mai 2011 à 20:33
Faut que je règles une petite erreur et ces bon.
error: expected identifier or `(' before `{' token
error: expected identifier or `(' before `{' token