求1-10之间的整数和
declare @n int,@sum int
set @n=1
set @sum=0
while @n<=10
begin
set @sum=@sum+@n
set @n=@n+1
end 
print @sum
其中不明白以下语句的道理:set @sum=0,set @sum=@sum+@n,
set @n=@n+1
有哪位大位帮解释一下

解决方案 »

  1.   

    其中不明白以下语句的道理:set @sum=0,set @sum=@sum+@n,
    set @n=@n+1

    1.set @sum=0 就是初始化变量@sum为02.set @sum=@sum+@n 就是每次把@n的值加到@sum上去,其实就是一个累加的过程3.set @n=@n+1 就是上面set @sum=@sum+@n加完以后,@n自增1,然后接下来就开始以一次循环了
      

  2.   


    declare @n int,@sum int --> 定义变量,@n为1-10之间的整数,@sum为计算结果.set @n=1                --> 变量初始化,@n从1开始计数..
    set @sum=0              --> 变量初始化,@sum计算结果初始为0.while @n<=10            --> 循环条件,@n小于等于10则进入循环结构..
    begin
     set @sum=@sum+@n       --> 变量@sum为1-10的累加.
     set @n=@n+1            --> 变量@n加1后继续循环.
    end print @sum              --> 打印结果.
      

  3.   

    另一种写法.declare @sum intselect @sum=isnull(@sum,0)+number
     from master.dbo.spt_values
     where type='P' and number between 1 and 10print @sum
      

  4.   


    declare @n int,@sum int --> 定义变量,@n为1-10之间的整数,@sum为计算结果.
     
    set @n=1                --> 变量初始化,@n从1开始计数..
    set @sum=1              --> 变量初始化,@sum计算结果初始为1.
     
    while @n<=10            --> 循环条件,@n小于等于10则进入循环结构..
    begin
     set @sum=@sum*@n       --> 变量@sum为1-10的相乘.
     set @n=@n+1            --> 变量@n加1后继续循环.
    end 
     
    print @sum    
      

  5.   


    declare @n int,@sum int --> 定义变量,@n为1-10之间的整数,@sum为计算结果.
     
    set @n=1                --> 变量初始化,@n从1开始计数..
    set @sum=1              --> 变量初始化,@sum计算结果初始为1.
     
    while @n<=10            --> 循环条件,@n小于等于10则进入循环结构..
    begin
     set @sum=@sum*@n       --> 变量@sum为1-10的相乘.
     set @n=@n+1            --> 变量@n加1后继续循环.
    end 
     
    print @sum    

    呵呵,我也这样写,不过得出来的结果是12
      

  6.   


    declare @n int,@sum int --> 定义变量,@n为1-10之间的整数,@sum为计算结果.
     
    set @n=1                --> 变量初始化,@n从1开始计数..
    set @sum=1              --> 变量初始化,@sum计算结果初始为1.
     
    while @n<=10            --> 循环条件,@n小于等于10则进入循环结构..
    begin
     set @sum=@sum*@n       --> 变量@sum为1-10的相乘.
     set @n=@n+1            --> 变量@n加1后继续循环.
    end 
     
    print @sum    

    呵呵,我也这样写,不过得出来的结果是12
    不好意思,这样写是对的,我看错了
      

  7.   

    和这段代码意思一样int n = 1;
    int sum = 0;
    for(n;i<=10;i++)
    {
    sum = sum + n;
    }
    Console.Writeline(sum);
      

  8.   

    写错了 应该是
    int n = 1;
    int sum = 0;
    for(n;n<=10;n++)
    {
    sum = sum + n;
    }
    Console.Writeline(sum);
      

  9.   

    楼主你就理解为SQL里面的变量名前都要有个@符号就对了,这样你就看得懂了