用C#编辑程序,求1~100之间所有奇数的和

用C#编辑程序,求1~100之间所有奇数的和。希望有完整的程序代码

可以参考下面的代码:

int[] num = new int[100];  //创建一个1到100的数组

for (int i = 0; i < 100; )

{

num[i] = ++i;

}

var q = from o in num where o % 2 == 1 select o; //使用linq筛选奇数

int sum = q.Sum();  //使用Sum函数获取奇数和

扩展资料:

LINQ(Language Integrated Query)定义:

语言集成查询是一组用于c#和Visual Basic语言的扩展。它允许编写C#或者Visual Basic代码以操作内存数据的方式,查询数据库。

通过使用查询语法,您甚至可以使用最少的代码对数据源执行复杂的筛选、排序和分组操作。 您使用相同的基本查询表达式模式来查询和转换 SQL 数据库、ADO.NET 数据集、XML 文档和流以及 .NET 集合中的数据。

参考资料来源:百度百科-LINQ (语言集成查询)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-07-10
这是一个简单的等差数列问题,1-100间总共有50个奇数,第一个奇数为1,最后一个奇数为99,用公式:Sum=50*(1+99)/2=2500。其实还有其它许多公式计算这个数列。
然后用程序实现即可了,
using System;

namespace Sum
{
class Program
{
static void Main(string[] args)
{
int sum=50*(1+99)/2;
Console.Write("1~100之间奇数的和是:" + sum.ToString());
Console.Read();
}
}
}

另:你完全可以拓展此程序嘛,比如求1-i之间所有奇数的和,主要是求最后一个奇数是什么,总共有多少奇数。程序如下:
using System;

namespace Sum
{
class Program
{
static void Main(string[] args)
{
int i;
int sum;
int last;
Console.WriteLine("求1到i之间所有奇数的和");
Console.WriteLine("请输入i的值");
i=Convert.ToInt16(Console.ReadLine());

if(i%2==0)
{
last=i-1;
}
else
{
last=i;
}
int count=(last+1)/2;

sum=count*(1+last)/2;

Console.WriteLine("1~i之间奇数的和是" + sum.ToString());
Console.Read();
}
}
}
第2个回答  推荐于2017-09-28
using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int sum=0;
for (int i = 1; i <= 100; i++) //循环1~100
{
if (i % 2 != 0) //判断当前数是不是奇数
{
sum += i; //是的话累加到sum
}
}
Console.Write("1~100之间奇数的和是:" + sum.ToString());//输出结果
Console.Read();//接收方法,这里的目的是为了暂停控制台,方便查看
}
}
}本回答被提问者采纳
第3个回答  2020-04-25
using
System;
using
System.Collections.Generic;
using
System.Text;
namespace
ConsoleApplication1
{
class
Program
{
static
void
Main(string[]
args)
{
int
sum=0;
for
(int
i
=
1;
i
<=
100;
i++)
//循环1~100
{
if
(i
%
2
!=
0)
//判断当前数是不是奇数
{
sum
+=
i;
//是的话累加到sum
}
}
Console.Write("1~100之间奇数的和是:"
+
sum.ToString());//输出结果
Console.Read();//接收方法,这里的目的是为了暂停控制台,方便查看
}
}
}
第4个回答  2010-07-09
你的程序会循环100次,效率不是最好,看我的
int sum = 0;
int i = 1;
while (i < 100) //只循环50次
{
sum += i;
i += 2;
}
Console.WriteLine("1~100之间奇数的和是: {0}", sum);
Console.ReadLine();
相似回答