【发布时间】:2015-01-22 00:34:38
【问题描述】:
我正在尝试创建一个简单的程序来计算平均值。用户应该输入一个正数,然后我创建一个循环从 0 到输入的数字求和。然后平均值是总数除以输入的数字。
问题:当我输入一个数字时,例如 10,变量变为 58。对于我输入的任何值,它总是加上 48。有人知道这个问题的线索吗?
代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace inClass1
{
class Loops
{
static void Main(string[] args)
{
int total = 0;
int num;
Console.Write("Enter a positive number: ");
num = Convert.ToInt32(Console.Read());
for (int i = 0; i <= num; i++)
{
total = total + i;
}
double average = total / (double)num;
Console.WriteLine("The average is = " + average);
Console.ReadLine();
}
}
}
【问题讨论】:
-
一个了解ASCII codes的好机会,每个程序员都应该知道。
-
这将是一个很好的面试问题......
-
@HansPassant 我非常不同意。我认为很多程序员不需要了解 ASCII。但几乎所有人都需要了解Unicode。