对于给定的n,k找到和。

时间:2022-05-07 21:48:33

For given n,k find the sum 1^k+2^k+....+n^k: I compiled this:

对于给定n,k找到总和1 ^ k + 2 ^ k + ....+ n ^ k:我编译:

#include<stdio.h>
main()
{
    int n,k,i,j=1,t,s=0;
    printf("enter n,k");
    scanf("%d%d",&n,&k);
    for(i=1;i<=n;i++)
    {
        t=i;
        do{
            i=i*t;j++;
            if(j==k)
            {
                s=s+i;
                i=t;
            }
        }while(j!=k);
    }
    printf("%d",s);
}

while compiling this I found no error in Ubonto Terminal. It asks n ,k . But no display. Please help me to fix this.

编译时,我在Ubonto终端中没有发现错误。它问n k。但是没有显示。请帮我解决这个问题。

1 个解决方案

#1


1  

I think you need to set j back to 1 after jumping out of the do-while

我认为你需要把j重新设置为1。

    [...]
    for(i=1;i<=n;i++)
    {
        t=i;
        j=1; //<---HERE
        do{
            i=i*t;j++;
            if(j==k)
            {
                s=s+i;
                i=t;
            }
        }while(j!=k);
    }
    [...]

I can't test this solution right now

我现在不能测试这个解

#1


1  

I think you need to set j back to 1 after jumping out of the do-while

我认为你需要把j重新设置为1。

    [...]
    for(i=1;i<=n;i++)
    {
        t=i;
        j=1; //<---HERE
        do{
            i=i*t;j++;
            if(j==k)
            {
                s=s+i;
                i=t;
            }
        }while(j!=k);
    }
    [...]

I can't test this solution right now

我现在不能测试这个解