目前我正在瑞典学习C#中的基础编程基础课程,我对其中一个例子有疑问。在讲座中有一个方法和参数的例子,编码中有一个错误,所以当我想尝试它并看看它做什么时它不起作用。我几天前给讲师发了一封电子邮件,但他没有回应。
这是代码: 我有两节课。首先是Account.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Classes_Objects_2
{
class Account
{
public double Balance = 0;
public void ShowMessage()
{
Console.WriteLine("Welcome to the Account Book!");
}
// Method Deposit.
public double Deposit(double depositAmount)
{
// You get a 5% bonus.
return depositAmount * 1.05;
}
}
}
这是第二个返回2个错误的代码:
Class称为Accounts.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Classes_Objects_2
{
class Accounts
{
static void Main(string[] args)
{
Account myAccount = new Account();
myAccount.ShowMessage();
Console.WriteLine("Your balance is " + myAccount.Balance);
Console.Write("Enter the deposit amount: ");
double newBalance = myAccount.Deposit(double.Parse(Console.ReadLine()));
newBalance = amountDep;
Console.WriteLine("Your balance becomes " + newBalance);
Console.Write("Enter the next deposit amount: ");
newBalance = myAccount.Deposit(double.Parse(Console.ReadLine()));
newBalance = amountDep;
Console.WriteLine("Your balance becomes " + newBalance);
}
}
}
当用户输入100作为存款时,他获得105存款,然后当他输入200时他获得315.这是我的目标输出,它应该根据讲座工作。
我在Accounts类中因为amountDep而得到错误,它确实无法识别,这是真的,但我不知道如何解决这个问题。能帮我解决这个问题,这样我可以继续学习吗? 谢谢!
答案 0 :(得分:1)
你没有实例化amountDep或给它一个值
广告
double amountDep = 0;
或选择值
答案 1 :(得分:1)
您可以声明变量:
double amountDep = 1234;
答案 2 :(得分:1)
只需删除这两行:
newBalance = amountDep;
目前还不清楚这里的目的是什么,还有其他提及的不存在的变量amountDep
,所以我要说的是为了得到编译代码,只需删除这两行并继续。< / p>
答案 3 :(得分:0)
我认为amountDep
没有必要。无论如何都没有宣布。
可以将其删除,因为newBalance
的分配是在amountDep
的分配之上完成的。
我猜是一个小小的文字错误!
答案 4 :(得分:0)
您需要更改存款方式以包含“余额+ =存款额* 1.05”以增加帐户余额并存储存款。使用帐户类的“余额”字段检索Main方法中的当前余额(例如Console.WriteLine(“Balance:”+ myAccount.Balance); 注意:您不应使用公共字段,而应使用类属性。字段不应以大写字母命名(如“Balance”),而应以“balance”,“_ balance”或“mBalance”命名。 祝你好运!
答案 5 :(得分:0)
据我所知,执行Deposit
方法后余额不会改变。所以我的猜测是,应该将amountDep添加到帐户的余额中,如下所示:
double amountDep = myAccount.Deposit(double.Parse(Console.ReadLine()));
double newBalance = myAccount.Balance += amountDep;
Console.WriteLine("Your balance becomes " + newBalance);
Console.Write("Enter the next deposit amount: ");
amountDep = myAccount.Deposit(double.Parse(Console.ReadLine()));
myAccount.Balance += amountDep;
Console.WriteLine("Your balance becomes " + newBalance);