Ich löse den Greedy-Algorithmus von cs50 natürlich ohne die cs50-Header-Datei zu verwenden. Ich habe einen Code geschrieben. Es funktioniert gut mit Zahlen als Eingabe, aber wenn ich ihm eine Zeichenfolge oder Alphabete als Eingabe gebe, gibt es mich nicht zurück. Ich weiß nicht, wie ich das Problem lösen soll.Cs50 gierig ohne zu verwenden <cs50.h>
#include <stdio.h>
int main()
{
float c;
int C, nQ, rem1, nD, rem2, nN, rem3;
do
{
printf("O hai! How much change is owed? ");
scanf("%f", &c);
}
while(c<0);
C = c * 100;
nQ = C/25;
rem1 = C % 25;
nD = rem1/10;
rem2 = rem1 % 10;
nN = rem2/5;
rem3 = rem2 % 5;
printf("%d\n", nQ+nD+nN+rem3);
}
Warum Sie Variablen 'C' und 'c' in der gleichen Funktion mit dem Namen verwenden würden? –
Sie müssen den Rückgabewert von 'scanf ("% f ", &c);' überprüfen, ob 1 Zahl gelesen wurde.) –
Ich habe zwei Variablen verwendet, um den Fließkomma in Ganzzahl zu konvertieren. Ich habe die Werte überprüft Ich möchte jedoch eine Eingabeaufforderung erhalten, selbst wenn ich Alphabete eingib .. – Laxman