2016-07-19 13 views
-1

Ich schreibe ein Programm, in dem ich einen Benutzer für lange long Int fragen. Nachdem der Benutzer mir eine Nummer zur Verfügung gestellt hat, möchte ich jede zweite Ziffer in dieser Nummer hinzufügen, beginnend mit der zweiten Ziffer. Nun meine Frage ist, wie kann ich jede andere Ziffer in long long int auswählen? (C-Sprache)Auswahl jeder anderen Nummer in int

Selecting every other digit in long long int

+1

Sagen Sie mir einen Grund, warum Sie nicht Modulo verwenden können, die Ziffern für diese zu extrahieren ..... –

+2

_There sind entweder zu viele mögliche Antworten, oder gute Antworten wäre lang für dieses Format. Bitte fügen Sie Details hinzu, um die Antwort einzuschränken oder um ein Problem zu isolieren, das in ein paar Absätzen beantwortet werden kann. –

+0

Bitte zeigen Sie Ihre Forschungsanstrengungen bis zur Zeit an. Bitte lesen Sie zuerst die [Ask] -Seite. –

Antwort

2

einen integralen Typ Nummer n Gegeben, n % 100/10 wird vorletzten digit extrahieren. Dieser Ausdruck ist ein Prüfstein für Ihr Wissen über Operator Vorrang und Assoziativität.

Sie benötigen n % 10 und n/10 verwenden, um die letzte Ziffer zu extrahieren und anschließend zu entfernen, wenn die Anzahl der Stellen in der Zahl ist sogar (Suche auf dieser Seite um für eine angemessenen Algorithmen, um die Anzahl der Stellen in einer Reihe zu zählen) .

wird die letzten zwei Ziffern entfernen.

Setzen Sie das obige in eine Schleife, und Sie sind fertig.

0

Sie tun können: -

#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); 

} 

Hinweis: Die Ziffern in Array gespeichert sind rückwärts zum Beispiel 123.456 Ergebnisse in

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

Zum Drucken: -

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

hey, wenn Sie die Antwort hilfreich finden, vergessen Sie nicht, es richtig zu markieren:) – dreamBegin

Verwandte Themen