为什么运行结果不是生成的随机数的和,该如何修改?
m 圈内达人 2015-11-15 15:02:08
2529 5 0

#include<stdio.h>

#include<stdlib.h>

#include<time.h>

main()

{

int t,i,n,y;

time(&t);

srand(t);

while(1)

{

system("cls");

printf("请输入生成随机数的个数:");

scanf("%d",&n);

if(n==0)

break;

y=0;

for(i=1;i<=n;i++)

{

printf("%d\n",rand());

y=y+rand();

}

printf("y=%d\n",y);

system("pause");

}

}


问题来自: 随机数

共 5 个回答

    嘿嘿大人 一代宗师 3086天前

    #include<stdio.h>


    #include<stdlib.h>


    #include<time.h>


    main()


    {


    int t,i,n,y,s;


    time(&t);


    srand(t);


    while(1)


    {


    system("cls");


    printf("请输入生成随机数的个数:");


    scanf("%d",&n);


    if(n==0)


    break;


    y=0;


    for(i=1;i<=n;i++)


    {

    s=rand();


    printf("%d\n",s);


    y=y+s;


    }


    printf("y=%d\n",y);


    system("pause");


    }


    }

    因为rand()是一个库函数,所以像你之前那样用的话是不行的,因为你用一次这个rand()的值就会变一次,自然就不会是显示出来的那些随机数的和了

    m 圈内达人 3080天前

    回复 嘿嘿大人:改过之后,不知道为什么还是不行。

    嘿嘿大人 一代宗师 3080天前

    回复 m:你截图给我看看,我这里是可以的

    m 圈内达人 3080天前

    2345截图20151122110035.png


    m 圈内达人 3080天前

    #include<stdio.h>

    #include<stdlib.h>

    #include<time.h>

    main()

    {

    int t,i,n,y,s;

    time(&t);

    srand(t);

    while(1)

    {

    system("cls");

    printf("请输入生成随机数的个数:");

    scanf("%d",&n);

    if(n==0)

    break;

    y=0;

    for(i=1;i<=n;i++)

    {

    s=rand();

    printf("%d\n",rand());

    y=y+s;

    }

    printf("y=%d\n",y);

    system("pause");

    }

    }




您还没有登录,所以不能回复该问题
我要回复

  • 0

    点赞

  • 扫一扫分享朋友圈

    二维码

  • 分享

相关问题