C# 如何构造一个运行三次并测试年龄输入的循环
我需要做一个循环,运行3次,并为三个年龄组C# 如何构造一个运行三次并测试年龄输入的循环,c#,windows,C#,Windows,我需要做一个循环,运行3次,并为三个年龄组0-1011-20和21-65切换以下代码: class Program { private static object N; static void Main(string[] args) { string answer; { Console.Write
0-10
11-20
和21-65
切换以下代码:
class Program
{
private static object N;
static void Main(string[] args)
{
string answer;
{
Console.WriteLine("please enter your name:");
string name = Console.ReadLine();
Console.WriteLine("please enter your surname:");
string surname = Console.ReadLine();
Console.WriteLine("please enter your age:");
string age = Console.ReadLine();
Console.WriteLine("please enter your adress:");
string adress = Console.ReadLine();
Console.WriteLine("hallo,{0} {1},veel sucess met C#", name, surname);
Console.WriteLine("zijn deze gegevens juist? J/N");
answer = Console.ReadLine();
}
while(answer == "N");
}
}
我尝试了一些测试年龄的方法,但总是出错。此外,我不知道如何正确编写循环代码
有人能给我指出两个问题的正确方向吗
对不起,我英语不好,我是荷兰人
注意:其中一个答案下面提到的OP表示这不是家庭作业。开关语句对特定值而不是范围进行操作,因此您需要使用一系列
if
语句
使用计数器(在循环外部声明并在每次执行时递增)确定循环已运行多少次(或使用for
循环)
编辑
class Program
{
private static object N;
static void Main(string[] args)
{
string answer;
int runCount= 0;
do
{
++runCount;
Console.WriteLine("please enter your name:");
string name = Console.ReadLine();
Console.WriteLine("please enter your surname:");
string surname = Console.ReadLine();
Console.WriteLine("please enter your age:");
int age = int.Parse(Console.ReadLine());
if(age >= 0 && age <= 10)
{
Console.WriteLine("Child");
}
else if(age <= 20)
{
Console.WriteLine("Young adult");
}
else if(age <= 65)
{
Console.WriteLine("Adult");
}
Console.WriteLine("please enter your adress:");
string adress = Console.ReadLine();
Console.WriteLine("hallo,{0} {1},veel sucess met C#", name, surname);
Console.WriteLine("zijn deze gegevens juist? J/N");
answer = Console.ReadLine();
}
while(runCount < 3 && answer == "N");
}
}
类程序
{
私有静态对象N;
静态void Main(字符串[]参数)
{
字符串回答;
int runCount=0;
做
{
++运行次数;
Console.WriteLine(“请输入您的姓名:”);
字符串名称=Console.ReadLine();
Console.WriteLine(“请输入您的姓氏:”);
字符串姓氏=Console.ReadLine();
Console.WriteLine(“请输入您的年龄:”);
int age=int.Parse(Console.ReadLine());
如果(age>=0&&age您可能需要以下内容:
var ageGroups = new [] { "0-10", "11-20", "21-65"};
foreach(var ageGroup in ageGroups)
{
// do your thing. This will loop three times, once for each age group
// example of switch (but: code-smell, you probably want class hierarchy later)
switch(ageGroup)
{
case "0-10":
// do somethihg
break;
}
}
或者,正如福克斯先生所说,如果你没有预先确定的年龄组(但我在你的问题中没有看到),那么:
for(变量i=0;i<3;i++)
{
//做你的事
//范围的if语句示例(不能使用开关):
整数转换数;
if(内锥虫(年龄,外转换年龄))
{
如果(convertedAge>=0&&convertedAge您的界面是多语言的,一些面向用户的文本是用英语编写的,其他文本是用荷兰语编写的,请您决定或允许用户选择其语言
至于编程技巧,你应该在谷歌上搜索通用C#constructs。这也是非常好的。最后,作为一名程序员,你最好学习英语,不管你来自哪个国家
class Program
{
static int age;
static void Main(string[] args)
{
string answer;
do
{
Console.WriteLine("please enter your name:");
string name = Console.ReadLine();
Console.WriteLine("please enter your surname:");
string surname = Console.ReadLine();
Console.WriteLine("please enter your age:");
age = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("please enter your adress:");
string adress = Console.ReadLine();
Console.WriteLine("hallo,{0} {1},veel sucess met C#", name, surname);
Console.WriteLine("zijn deze gegevens juist? J/N");
answer = Console.ReadLine();
}
while (answer == "N");
for (int i = 0; i < 3; i++)
{
if (age >= 0 && age <= 10)
{
// First age group.
}
if (age >= 11 && age <= 20)
{
// Second age group.
}
if (age >= 21 && age <= 65)
{
// Third age group.
}
}
}
}
类程序
{
静态智力;
静态void Main(字符串[]参数)
{
字符串回答;
做
{
Console.WriteLine(“请输入您的姓名:”);
字符串名称=Console.ReadLine();
Console.WriteLine(“请输入您的姓氏:”);
字符串姓氏=Console.ReadLine();
Console.WriteLine(“请输入您的年龄:”);
age=Convert.ToInt32(Console.ReadLine());
控制台。WriteLine(“请输入您的地址:”);
字符串地址=Console.ReadLine();
Console.WriteLine(“你好,{0}{1},veel Suces met C#”,姓名);
Console.WriteLine(“zijn deze gegevens juist?J/N”);
answer=Console.ReadLine();
}
而(答案=“N”);
对于(int i=0;i<3;i++)
{
如果(age>=0&&age=11&&age=21&&age尝试一些适合c#编程新手的书,比如家庭作业。如果你的问题是关于家庭作业的,你可以问,但确保你不要让别人为你写代码。你的代码不会编译!你忘记了do关键字。如果你想做这个循环,请使用loop@Jacek:他的密码是但是,while循环将只遍历空语句(因此,将中断或永远循环)。询问者可能希望像您所说的那样执行while操作。string age=(Console.ReadLine());
应该是int age=int.Parse(Console.ReadLine());
年龄将是某人输入的值,例如,如果他们输入5,则年龄将与“0-10”不匹配.好的,年龄组变量有效,但我在问题中犯了一个错误,需要从数据年龄中获取年龄,然后根据我正在做的案例显示一行“你是儿童、成人还是老年人”,但当我有这个问题时,我不断地犯错误,因此没有按照我的要求工作,现在我stuck@user1758580当前位置我预料到了那个问题(因为MrFox),请参见我的示例。您可以从那里继续。或者显示您所拥有的,我们可以进一步提供帮助。请注意,此代码仍然有错误的while循环,它要么永远运行,要么立即中断。此外,当您只需测试已设置的变量时,为什么需要for循环?for循环是冗余的;)。我认为for循环应该覆盖整个代码块。是的,我在一个新项目中接手了它,并与我自己一起检查差异。我改变了我没有的东西,但它在年龄案例中停止了。举个完整的工作示例。但在这一点上,我们宁愿不做家庭作业,而试着指出正确的方向方向(我知道,道德警察;)。无论如何,+1。(注:stringage
应该是int-age
)@Abel如果你愿意,我可以把它拿回来。我有同样的预约,因此最初没有发布。现在的问题是我已经把你做的canges放进去了,但是visual studio会给错误3操作符@user1758580。很高兴你这么做是为了学习。正如Abel指出的,我不小心在string age=int.Parse中离开了(…
应该在哪里int age=int.Parse(…
)。另外,请不要使用“地狱”之类的词。我们都是来帮忙的,没有理由不高兴。哦,对不起,但是opperator的事情不会消失它不仅仅是一行错误
class Program
{
static int age;
static void Main(string[] args)
{
string answer;
do
{
Console.WriteLine("please enter your name:");
string name = Console.ReadLine();
Console.WriteLine("please enter your surname:");
string surname = Console.ReadLine();
Console.WriteLine("please enter your age:");
age = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("please enter your adress:");
string adress = Console.ReadLine();
Console.WriteLine("hallo,{0} {1},veel sucess met C#", name, surname);
Console.WriteLine("zijn deze gegevens juist? J/N");
answer = Console.ReadLine();
}
while (answer == "N");
for (int i = 0; i < 3; i++)
{
if (age >= 0 && age <= 10)
{
// First age group.
}
if (age >= 11 && age <= 20)
{
// Second age group.
}
if (age >= 21 && age <= 65)
{
// Third age group.
}
}
}
}