0

如何找到将成功添加 5 个数字的循环。这是家庭作业问题。

  1. 添加一个循环,该循环将接受用户输入的数字并将其添加到运行总数中(ReadLine() 方法将从用户那里获取一个字符串)。

您会注意到在上面的代码中声明了两个变量。
一种是双精度数据类型的总和,它将具有 5 个输入数字的总和。
另一个是一个临时字符串变量,用于获取用户输入,转换为双精度,然后将转换后的值添加到总数中。

使用您在案例 2 中学到的关于获取输入并转换为 int32 的知识,获取输入并转换 ToDouble() 而不是 int32。
总计 = 总计 + Convert.ToDouble(temp);

    case "3":
    double total = 0;
    string temp = "0";
    Console.WriteLine("Enter 5 numbers here for addition \n");
    for (total = 0; total <= 6; total++);
    {
        Console.WriteLine(total + "" + temp);
        total = total + Convert.ToDouble(temp);
    }
    break;  

当我尝试输入它时,调试程序退出并给了我一个设定的数字。当我尝试将字符串作为表达式输入时,它一直说字符串不会转换为整数。

这是我想要得到的结果。

1 2 3 4 5 总计:15 这是我想要得到的答案。

4

3 回答 3

4

您将 temp 设置为空字符串,然后它永远不会变成数字,因此您不能将其转换为 double....

Convert.ToDouble(input) 也不会做任何事情,因为您需要存储值,即

double result = Convert.ToDouble (input)

循环是错误的,因为您只接受一个输入 - 您需要将 Console.ReadLine 放入循环中,然后将用户输入的内容附加到您的总数中。

于 2013-06-03T12:59:41.853 回答
1

你可能需要做:

int index=Convert.ToDouble(input);

并在 for 循环中使用类似

for(int i=0;i<index;i++)

因为就目前而言,您检索输入但不使用它,实际上在 for 循环中您正试图将其设置为零 -> for(input=0;....) 自从输入以来无法完成是字符串而不是数字

在情况 3 中,您使用 total 作为索引,并且在计算中作为总变量,您不能这样做,您需要使用另一个变量作为索引:

for (int i = 0; i<= 6; i++);
    {
        Console.WriteLine(total + "" + temp);
        total = total + Convert.ToDouble(temp);
    }
于 2013-06-03T12:59:38.430 回答
0
        Console.Write("Enter how many numbers you want to enter and sum up: ");

        double n = double.Parse(Console.ReadLine());  
        double r;  
        double sum = 0;  


        for (int i = 0; i < n; i++)  
        {  
            Console.Write("{0} Enter number ", i);  
            r = double.Parse(Console.ReadLine());  
            sum += r;  
            Console.WriteLine(sum);  
        }  
于 2013-11-15T15:36:34.973 回答