1. 有沒有大神給我講解一下這個猜數字小程序的演算法(代碼在裡面)
這里哪有演算法,就是循環,讓人猜數字大小。電腦生成隨機一個[1,100]中的數,人猜,輸入的如果比隨機值大就顯示too big,小就too small,直到猜對為止。
2. c語言怎麼使用隨機函數rand編寫一個猜數字的游戲程序
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 10
main()
{
int i,a,b;
srand(time(0)); /*設置種子,並生成偽隨機序列*/
while(~scanf("%d",&b))
{
for(i=0;i<N;++i) rand()%10;
a = rand()%100;
while(1)
{
if(a == b) {puts(" 恭喜你 猜對了 !\n***************\n"); break;}
else if(a > b) puts("你輸入的數 小了!");
else puts("你輸入的數 大了!");
scanf("%d",&b);
}
}
system("pause");
}
3. 猜數字游戲: 讓系統隨機生成一個1-100之間的隨機數,循環錄入猜數直到猜中為止
這是我寫的語句:
staticvoidMain(string[]args)
{
Randomd=newRandom();
intnum=d.Next(1,100);//隨機數
intnum1=0;//用來保存輸入的數
Console.WriteLine("輸入一個數");
while(true)
{
stringstr=Console.ReadLine();
int.TryParse(str,outnum1);
if(num1==0)
{
Console.WriteLine("輸入有誤,重新輸入");
continue;
}
else
{
if(num1>num)
{
Console.WriteLine("數字大了,重新輸入");
continue;
}
elseif(num1<num)
{
Console.WriteLine("數字小了,重新輸入");
continue;
}
elseif(num1==num)
{
Console.WriteLine("正確");
break;
}
}
}
Console.Read();
}
4. 猜數程序.要完整的程序!(用rand產生一個隨機數)
#include<iostream.h>
#include<stdlib.h>
#include<time.h>
void
main()
{
int
m,s,t,flag;
char
ch;
for(;;)
{
flag=0;
s=0;
srand(time(0));
do
m=rand();
while(m<0||m>100);
cout<<"我已經想到了一個0-100的整數,請你猜猜看。"<<endl;
for(;;)
{
if(flag)break;
cin>>t;
s++;
if(t>m)
cout<<"你猜的數太大了。"<<endl;
else
if(t<m)
cout<<"你猜的數太小了。"<<endl;
else
{
cout<<"恭喜!你猜對了!你猜了"<<s<<"次"<<endl;
cout<<"還想玩嗎?(Y/N)";
cin>>ch;
if(!(ch=='Y'||ch=='y'))
return;
else
flag=1;
}
}
}
}
5. 急求c語言 猜數字演算法
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 4/*隨機抽N個數*/
#define NUM 8/*NUM次猜數的機會*/
void detect(char s[])
{
int i,j,num;
int a,b;
char ch[N];
for(num=0;num<NUM;num++)
{
a=b=0;
printf("第%d次機會:",num+1);
for(i=0;i<N;i++)
{
ch[i]=getch();
if(ch[i]>='0'&&ch[i]<='9')
{
for(j=0;j<i;j++)
if(ch[i]==ch[j]) break;
if(j<i) i--;
else
{
putchar(ch[i]);
for(j=0;j<N;j++)
{
if(ch[i]==s[j])
if(i==j) a++;
else b++;
}
}
}
else
i--;
}
printf(" %dA%dB\n",a,b);
if(a==N)
{
printf("恭喜你答對了!\n");
break;
}
}
if(num==NUM)
printf("很遺憾,正確答案為:%s\n",s);
}
main()
{
int i,j;
char s[N+1];
srand(time(0));
for(i=0;i<N;i++)
{
s[i]=rand()%10;
for(j=0;j<i;j++)
if(s[i]==s[j]) break;
if(j<i) i--;
else
{
s[i]+='0';
putchar('*');
}
}
s[i]='\0';
printf("\n總共%d次機會\n",NUM);
detect(s);
}
6. C語言編程:編寫一個猜數的游戲,系統自動產生一個隨機數,你來猜,程序給出提示,直到猜對為止。
import java.util.*;
class Assignment8{
public static void main(String[]args){
Scanner sc=new Scanner(System.in);
int x=(int)(Math.random()*100);//生成一個0~100的隨機數
int y=-1;
System.out.println("已生成0~100的隨機整數,請輸入您所猜的數:");
while(x!=y)
{
y=sc.nextInt();
if(y>x)
{
System.out.println("輸入的數過大");
}
else if(y<x)
{
System.out.println("輸入的數過小");
}
}
System.out.println("正確!該隨機數是"+x);
sc.close();
}
}
while循環的格式:while(表達式){語句;}
while循環的執行順序:當表達式為真,則執行下面的語句,語句執行完之後再判斷表達式是否為真,如果為真,再次執行下面的語句,然後再判斷表達式是否為真……就這樣一直循環下去,直到表達式為假,跳出循環。
例:
int a=NULL;
while(a<10){
a++;//自加
if(a>5)//不等while退出循環,直接判斷循環
{break;//跳出循環}
}
結果:結束後a的值為6。