为什么跑出来是负的?

来源:4-3 C#算法——求和

活着就好了___

2018-06-15 20:13

int x = 1;

            int sum = 0;//和,初始化为0

            while (x <= 100000)//循环条件

            {

                if (x % 2 != 0)//筛选条件

                    sum += x;

                x++;

            }

            Console.Write("1-100000奇数的和:" + sum);


写回答 关注

2回答

  • 幕布斯1115476
    2018-06-16 10:34:20
    已采纳

    因为sum的值已经超过int类型的最大值!数据溢出,详情可以去百度搜索各类型值的范围!

    活着就好了_...

    谢了

    2018-06-16 13:06:58

    共 1 条回复 >

  • 一颗路边的小石头
    2018-06-30 16:09:08

    楼上说的很对,计算太大导致数据溢出,int是32位整数,你可以在声明的声明64位的

C#开发轻松入门

本门课程是C#语言的入门教程,将带你轻松入门.NET开发

254118 学习 · 1459 问题

查看课程

相似问题