Für ein Hausaufgabe-Problem muss ich eine Struktur definieren, die in einem Programm verwendet werden kann, um einen Bruch zu vertreten, zusammen mit einer Set-Funktion, die verwendet werden kann, um den Wert eines Bruches einzurichten, und eine Druckfunktion, die den Fraktion schön. Wir sind die Hauptfunktion gegeben und nach dem Problem sollte die AusgabeVariable nicht initialisiert?
(2/3) (1/5) (3/5)
Hier ist das, was ich geschrieben habe:
#include "library.h"
struct fraction
{
int numerator;
int denominator;
};
void set (fraction st, int n, int d)
{
if (d>0)
{
n = st.numerator;
d = st.denominator;
}
}
void print(fraction st)
{
int x = st.numerator;
int y = st.denominator;
print("(x/y)");
print(" ");
}
void main()
{
fraction a, b, c;
set(a, 2, 3);
set(b, 1, 5);
set(c, 3, 5);
print(a);
print(b);
print(c);
}
Wenn Sie sich fragen, "Bibliothek.h" ist, was meine Universität als Abkürzung für die meisten der Standard enthält.
Ich bekomme immer den Fehler, dass die Variable 'a' verwendet wird, ohne initialisiert zu werden. Jede Hilfe würde sehr geschätzt werden.
Wenn Sie glauben, dass * initialisiert ist, geben Sie an, wo? (Tipp, der Compiler ist richtig zu beschweren, und nicht nur über 'a'). – WhozCraig
Ermittelt der Compiler nicht genau, um welche Zeile (n) es sich handelt? – juanchopanza
Fwiw, die Zuweisungsanweisungen in 'set()' scheinen rückwärts zu sein. Außerdem, selbst wenn diese behoben wurden, übertrage man immer noch 'a',' b' und 'c' mit * value * auf' set() ', so dass nichts zurück in' main() 'unabhängig davon geändert wird. – WhozCraig