【发布时间】:2016-07-31 18:10:03
【问题描述】:
对于家庭作业问题,我必须定义一个可以在程序中用于表示分数的结构,以及一个可用于设置分数值的 set 函数,以及一个将打印的 print 函数分数很好。我们得到了 main 函数,根据问题输出应该是
(2/3) (1/5) (3/5)
这是我写的:
#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);
}
如果您想知道“library.h”是我的大学使用的大多数标准包含的快捷方式。
我不断收到变量“a”在未初始化的情况下被使用的错误。任何帮助将不胜感激。
【问题讨论】:
-
如果您认为它已初始化,请说明在哪里? (提示,编译器的抱怨是正确的,而不仅仅是
a)。 -
编译器没有准确地告诉你问题出在哪一行吗?
-
Fwiw,
set()中的赋值语句似乎落后了。此外,即使这些已修复,您仍然通过 value 将a、b和c传递给set(),因此无论如何,main()中的任何内容都不会更改. -
void main()?? main 必须在 C++ 中返回int
标签: c++