2016-07-19 3 views
-1

Je suis en train d'écrire un programme dans lequel je demande à un utilisateur int long long. Après que l'utilisateur m'a fourni un numéro, je veux ajouter tous les autres chiffres de ce numéro, en commençant par le deuxième chiffre. Maintenant, ma question est, comment puis-je sélectionner tous les autres chiffres dans long long int? (Langage C)Sélection de tous les autres nombres dans int

Selecting every other digit in long long int

+1

Raconte-moi une raison pour laquelle vous ne pouvez pas utiliser modulo pour extraire les chiffres pour cette ..... –

+2

_Il sont trop nombreuses réponses possibles, ou de bonnes réponses serait trop longtemps pour ce format. Veuillez ajouter des détails pour affiner le jeu de réponses ou pour isoler un problème auquel il est possible de répondre en quelques paragraphes. –

+0

Veuillez montrer votre effort de recherche jusqu'au moment. Veuillez lire la page [Demander] en premier. –

Répondre

2

Étant donné un numéro de type intégral n, n % 100/10 va extraire la deuxième au dernier chiffre. Cette expression est une pierre de touche pour votre connaissance de la précédence et de l'associativité des opérateurs. Vous devrez utiliser n % 10 et n/10 pour extraire puis supprimer le dernier chiffre si le nombre de chiffres du nombre est pair (rechercher sur ce site des algorithmes adéquats pour compter le nombre de chiffres d'un nombre) .

n/100 supprime les deux derniers chiffres.

Mettez le ci-dessus dans une boucle, et vous avez terminé.

0

Vous pouvez le faire: -

#include<stdio.h> 

int main() 
{ 
    long real_Number,num,arr[100],count=0; 
    scanf("%ld",&real_Number); 
    do{ 
      if(real_Number>99) 
      { 
      num=real_Number%100; 
      num=num/10; 
      arr[count]=num; 
      real_Number=real_Number/100; 
      ++count; 
      } 
      if(real_Number<100) 
      { 
       arr[count]=real_Number/10; 
       break; 
      } 
     }while(real_Number>=10); 

} 

Remarque: Les chiffres enregistrés dans le tableau sont en arrière par exemple 123456 résultats dans

arr [0] = 5, arr [1] = 3, arr [2] = 1;

Pour imprimer: -

for(count; count>=0 ;count--) 
{ 
    printf("%ld",arr[count]); 
} 
+0

hey si vous trouvez la réponse utile ne pas oublier de le marquer à droite:) – dreamBegin