Decomposer et reconstituer un char en C

Fermé
Geoffrey - 18 avril 2010 à 11:35
 Geoffrey - 18 avril 2010 à 18:47
Bonjour.

Je réalise un programme pour mes études, et j'aurai besoin de lire les chiffres d'un nombre, seuls ou par tranches.
Je m'explique : il faudrai par exemple que je lise le nombre "1000" par chiffre (1 et 0 et 0 et 0) puis par tranche (10 et 00). Je pensais faire rentrer le nombre initial en chaine de caractère char pour le décomposer mais je ne sais pas comment le reconstituer après pour le lire par tranche.

Merci à ceux qui se pencheront sur le sujet.
Geoffrey M.

A voir également:

4 réponses

ghuysmans99 Messages postés 2496 Date d'inscription jeudi 14 juillet 2005 Statut Contributeur Dernière intervention 5 juin 2016 339
18 avril 2010 à 11:41
Il te suffit de ne pas modifier la chaine :
int main(int argc, char* argv[])
{
char buffer[11];
int i;
scanf("%10s",buffer);
for (i=0;i<strlen(buffer);i++) printf("%c",buffer[i]);
}
0
Mais comment je peux récupérer les chiffres pour les travailler, puis les tranches pour les travailler aussi (je pensais faire une boucle, avec des tranches à chaque plus grande d'un chiffre, si tu vois ce que je veux dire... En fait il faut que je mette chaque chiffre et chaque tranche à une certaine puissance, peu importe le chiffre entré au debut, tant qu'il est entre 1 et 1million.)
Si mon idée et un peu tordu tu peux le dire, je le prendrai pas mal!
0
ghuysmans99 Messages postés 2496 Date d'inscription jeudi 14 juillet 2005 Statut Contributeur Dernière intervention 5 juin 2016 339
18 avril 2010 à 15:18
Tu dois alors utiliser un autre buffer contenant les parties que tu veux, le convertir en int via atoi() et manipuler ce nombre.
0
Ok... ^^
Vais essayer de bidouiller tout ça!

Merci, à une prochaine peut être!
0