welch edles Stueckchen Code...
Code:
z[i]=untergrenze;
for(i=untergrenze; i<=obergrenze; i++)
ich interpretiere mal:
setze arraywert auf was undefiniertes.
aber noch besser, erhoehre etwas undefiniertes solange bis etwas undefiniertes rauskommt.
Und dein x ist ebenfalls undefiniert.
Die undefinierten Werte sind bestenfalls 0. Das wuerde dann das Verhalten erklaeren was du siehst.
statt weiterer Primfaktorzerlegungsexperimente wuerde ich ein C Buch empfehlen.
und es gibt hier [ code] tags, nicht ohne Grund; macht keinen Spass das da oben zu lesen.
EDIT:
vermutlich suchst du sowas:
Code:
int main(void)
{
char z[1000];
int i = 0, j;
int zahl1 = 0, zahl2 = 0;
gets(z);
while (!isdigit(z[i]))
i++;
while (isdigit(z[i]))
{
zahl1 *= 10;
j = z[i] - 0x30;
zahl1 += j;
i++;
}
while (!isdigit(z[i]))
i++;
while (isdigit(z[i]))
{
zahl2 *= 10;
j = z[i] - 0x30;
zahl2 += j;
i++;
}
printf("Zahl1: %d Zahl2: %d\n", zahl1, zahl2);
}
BTW: warning: the `gets' function is dangerous and should not be used.
EDIT2: es fehlt allerdings noch die abfrage ob nur eine Zahl eingegeben wurde.
Lesezeichen