Ich bin neu im Programmieren und habe eine Übung in der Schule gemacht. Für mein folgendes Programm, wo ich steckte:Kann '1' nicht gedruckt werden?
#include <stdio.h>
#include <stdlib.h>
#include<math.h>
int main() {
int n;
printf("Input the integer number:");
scanf("%d",&n);
int usevar=n;
int count=0;
while(n>1)
{
n/=10;
count++;
}
int sum=0;
printf("Reverse:\n");
for(int i=1;i<=count;i++)
{
int a=pow(10,i);
int b=pow(10,i-1);
sum=(usevar%a-usevar%b)/b;
printf("i=%d\n",sum);
}
return 0;
}
Wenn ich etwas int Nummer wie 12345
eingefügt sollte die Ausgabe sein: Rückwärts
:
i=5
i=4
i=3
i=2
i=1
Aber die Ausgabe meines Programms ist :
Rückseite:
i=5
i=4
i=3
i=2
Aber wenn ich die Nummer einzugeben, ohne '1' als Startnummer, mein Programm funktioniert einwandfrei:
Eingabe der Integer-Zahl: 23556
Rückseite:
i=6
i=5
i=5
i=3
i=2
Also, was ist das Problem mit die Nummer, die mit '1' beginnt? Kann mir jemand den Vorschlag geben? Ich bin froh, wenn du helfen kannst.
try while (n> 0). Es sollte funktionieren –
Warum versuchst du nicht zu debuggen? – Abhineet
Haben Sie selbst das grundlegende Debugging versucht? –