public partial class Form1 : Form
{
string key = null;
public Form1()
{
InitializeComponent();
this.KeyPreview = true;
}
private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{
int num = 0;
if (int.TryParse(e.KeyChar.ToString(), out num))
{
key += num.ToString();
Text = key;
}
}
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
object a = sender;
if (e.KeyValue.ToString().Equals("13"))
{
if (key != null)
{
int num = 0;
int sum = 0;
if (int.TryParse(key, out num))
{
for (int i = 1; i <= num; i++) {
sum += i;
}
}
Console.WriteLine(sum);
key = null;
}
}
}
}
winform中让窗体得到焦点,会一直接收你输入的数字,直到按下{Enter}键,自动算 1-n的值,如果是控制台那些,自己修改一下也能达到同样的效果。
Console.WriteLine("请输入一个整数:");
try
{
int n = Convert.ToInt32(Console.ReadLine());
int sum = 0;
while (n > 0)
{
sum += n;
n--;
}
Console.Write(sum);
}
catch
{
Console.WriteLine("您输入的不是数字");
}
Console.ReadKey();
输入后(假设为控制台)
int sum=0;纯手打,如有微小语法错误,自行更正,原谅我很久没用c#了
int n=Console.ReadLine();
for(int i=1;i<=n;i++){
sum+=i;
}
Console.WriteLine(sum);