匿名使用者
匿名使用者 發問時間: 電腦與網際網路程式設計 · 7 年前

function 亂數 問題

#include<stdio.h>

#include<stdlib.h>

#include<time.h>

void r_number(int n);

void main(void)

{

int user_number;

int x;

srand(time(NULL));

printf("I have a number between 1 and 100.\n");

printf("Can you guess my number??\n");

printf("Please type your first guess\n");

printf("first:");

r_number(x);

while(x != user_number)

{

scanf("%d",&user_number);

if(x==user_number)

printf("BINGO\n");

else

if(x<=user_number)

printf("Too low\n");

else

if(x>=user_number)

printf("Too high\n");

}

system("pause");

}

void r_number(int n)

{

int r;

r=rand()%100+1;

}

我目前是這樣

但他亂數傳不上去

我問朋友她說要設初始值

但我不懂

請問到底要怎麻改

3 個解答

評分
  • 7 年前
    最佳解答

    void r_number(int n)

    {

    int r;

    r=rand()%100+1;

    }

    為什麼這個function是void的﹖void好像是沒有傳回值﹖

    r_number(x);

    另外這個x從何輸入﹖

  • 阿平
    Lv 4
    7 年前

    用指標,你想把亂數放進x吧!

    void r_number(int *n){//定義函式

    *n=rand()%100+1;

    }

    r_number(&x);//呼叫

    另外,你判斷的地方有問題。

  • 7 年前

    你試試看把下面的function

    void 第一個字 改成int

    void 在最前面代表不回傳值 當然什麼值都不會給到主程式main

    換成int 應該可以回傳你要的隨機1~100

還有問題?馬上發問,尋求解答。