⑴ 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。
⑵ C語言猜數字游戲怎麼編程,必須用循環
猜數函數的話必須用隨機函數,先隨機一個數,然後用if語句判斷 大了顯示「大了」,小了顯示「小了」,如此反復 直到等於那個隨機數 循環的話就while(1)就行 等於隨機數時 使用break語句跳出循環就行 希望能幫到你
⑶ c語言 ,編寫一個猜數游戲程序,輸入一個設定的整數,供玩者猜。
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#defineGUESS_LIMIT1000
char*infos[]={
"【猜數游戲已啟動】 數字已經設定好,請玩家進行猜測,數字范圍在0~%d ",
"猜測數字大了!請繼續猜測:",
"猜測數字小了!請繼續猜測:",
"恭喜猜中數字!!!共猜測了%d次 "
};
intguess_program(){
inttarget_num,guess_num,guess_time;
guess_time=0;
target_num=rand()%(GUESS_LIMIT+1);
printf(infos[0],GUESS_LIMIT);
do{
printf(">>");
scanf("%d",&guess_num);
guess_time++;
if(guess_num>target_num)
printf("%s ",infos[1]);
elseif(guess_num<target_num)
printf("%s ",infos[2]);
}while(guess_num!=target_num);
printf(infos[3],guess_time);
return0;
}
intmain(){
srand(time(NULL));
guess_program();
return0;
}
⑷ C語言中猜數游戲的編程
前面要加上:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
⑸ C語言 編寫一個猜數字游戲,規則:使用隨機函數產生一個5位數,輸入猜測數據,判斷幾個正確,詳細如下:
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>
void main()
{
intA=0,B,i,j,k=0,a[5],g[5];
printf("請輸入你猜測的一個5位數數字\n");
scanf("%d",&k);
while(k<12345||k>99999)
{
printf("你輸入了一個非常規數據,請重新輸入\n");
scanf("%d",&k);
}
srand((unsignedint)time(NULL));
for(i=0;i<5;i++)
{
a[i]=rand()%9+1;
for(j=0;j<i;j++)
while(a[i]==a[j])
{
a[i]=rand()%9+1;
j=-1;
}
}
printf("隨機給出的數字為\n");
for(i=0;i<5;i++)
printf("%d",a[i]);
printf("\n");
for(i=4;i>=0;i--)
{
g[i]=k%10;
k=(k-g[i])/10;
}
for(i=0;i<5;i++)
for(j=0;j<5;j++)
{
if(g[i]==a[j])
{
A++;
if(i==j)
B=i+1;
}
}
if(A==5)
printf("你猜測的全部正確\n");
else
{
printf("你猜對的個數:%d\n",A);
printf("你猜對數字的位置:第%d個\n",B);
}
}
⑹ 用c語言編寫一個猜數字游戲,有一定的容錯功能,界面友好,功能齊全。
# include <stdio.h>
void ss(int * b,int aa)
{
int i;
b[0]= aa/1000;
b[1]= aa/100 -b[0]*10;
b[2]=aa/10-b[0]*100-b[1]*10;
b[3]=aa%10;
//for (i=0;i<4;i++)
//printf("%d\n",b[i]);
}
int main (void)
{
int aa;
int i;
int j;
int a1=0,b1=0;
int bb=1234;
int a[4];
ss(a,bb);
int b[4];
while(1)
{
printf("請輸入一個每位各不同四位數\n");
scanf("%d",&aa);
a1=0;
b1=0;
ss(b,aa);
for (i=0;i<4;i++)
{
if(a[i]==b[i])
{
b1++;
}
for(j=0;j<4;j++)
{
if(a[i]==b[j])
{
a1++;
break;
}
}
}
if(b1==4)
{
printf("%dA%dB",a1,b1);
printf("恭喜你猜對了,這個數是%d",bb);
break;
}
printf("很遺憾這次沒猜對,提示:%dA%dB\n",a1,b1);
}
}
⑺ 猜數游戲c語言
#include<stdio.h>
#include<stdlib.h> //隨機數生成函數srand()與rand() 所需的頭文件
#include<time.h> //time()所需的頭文件
int main()
{
int sysdata;//系統生成的數據
int n; //所猜的數據
int sum = 0;//記錄猜的次數
srand((unsigned)time(NULL)); //隨機數發生器初始化函數,以時間為種子
sysdata = rand()%100+1; //隨機生成1到100的隨機數
printf("退出程序請按:ctrl + c!\n");
while(1)
{
printf("請輸入你猜的數據(1-100): ");
if(scanf("%d",&n) != 1) //用於判斷用戶是否結束游戲
{
break; //跳出while循環,結束游戲
}
sum++; //每輸入一次數據,猜的次數加1
if(sum == 10) // 當猜的次數大於10次的時候重新生成新的隨機數
{
if(n == sysdata) //最後一次猜數正確,輸出結果,結束游戲
{
printf("猜數正確,總共猜了%d次!\n",sum);
break; //跳出while循環,結束游戲
}
else //最後一次猜數不正確則重新開始游戲
{
printf("猜數次數超過%d次,重新開始游戲!\n",sum);
sysdata = rand()%100+1; //隨機生成1到100的隨機數
sum = 0;
}
}
else
{
if(n == sysdata)
{
printf("猜數正確,總共猜了%d次!\n",sum);//猜數正確,結束游戲
break; //跳出while循環,結束游戲
}
else if(n > sysdata)
{
printf("你猜的數據太大!\n");
}
else
{
printf("你猜的數據太小!\n");
}
}
}
printf("猜數游戲結束!\n");
return 0;
}
測試結果:
退出程序請按:ctrl + c!
請輸入你猜的數據(1-100): 50
你猜的數據太小!
請輸入你猜的數據(1-100): 75
你猜的數據太小!
請輸入你猜的數據(1-100): 85
你猜的數據太大!
請輸入你猜的數據(1-100): 80
你猜的數據太小!
請輸入你猜的數據(1-100): 82
你猜的數據太小!
請輸入你猜的數據(1-100): 84
猜數正確,總共猜了6次!
猜數游戲結束!
Press any key to continue
⑻ C語言編寫猜數字游戲
#include<stdio.h>
#include<time.h>
#include<math.h>
int main()
{
int i,a,n;
srand((int)time(NULL));
n=rand()%100+1;
for(i=0; i<5; i++)
{
printf("請輸入一個介於1到100的整數:");
scanf("%d",&a);
if(a<n)
printf("猜小了!\n");
if(a>n)
printf("猜大了!\n");
if(a==n)
{
printf("猜對了!\n");
break;
}
}
return 0;
}
⑼ c語言猜數游戲編程
在VC 平台測試通過。
#include"stdio.h"
#define MAX_NUM 4
#define TRUE 1
#define FALSE 0
void main()
{
int i,j;
int guess_num[MAX_NUM];//隨機生成四個數
int input[MAX_NUM];//用戶輸入四個數
int pos_same = 0;//位置相同個數
int num_same = 0;//數字相同個數
int correct = FALSE;//判斷輸入是否完全正確
//隨機生成四個0到10之間的數
for(i = 0;i<MAX_NUM;i++)
{
guess_num[i] = (int)rand()%10;
}
for(i = 0;i<MAX_NUM;i++)
{
printf(" %d",guess_num[i]);
}
printf("\n");printf("請輸入四個0到10之間的數\n");
while(!correct)
{
//輸入四個數
for(i = 0;i<MAX_NUM;i++)
{
scanf("%d",&input[i]);
}
//獲得位置相同的個數
for(i = 0;i<MAX_NUM;i++)
{
if(input[i] == guess_num[i])
pos_same++;
}
//獲得與隨機數相同的個數
for(i = 0;i<MAX_NUM;i++)
{
for(j = 0;j<MAX_NUM;j++)
{
if(input[i] == guess_num[j])
{
num_same++;
break;
}
}
if(i>0)//判斷與之前的數字是否相同
{
for(j=i;j>0;j--)
{
if(input[i] ==input[j-1])
{
num_same--;
break;
}
}
}
}
printf("數字正確個數: %d \n位置正確個數: %d\n",num_same,pos_same);
num_same = (num_same ==MAX_NUM)?num_same:0;
pos_same = (pos_same ==MAX_NUM)?pos_same:0;
if(pos_same ==MAX_NUM && num_same ==MAX_NUM)
correct = TRUE;
}
printf("你猜對了!\n數字就是");
for(i = 0;i<MAX_NUM;i++)
{
printf(" %d",guess_num[i]);
}
printf("\n");
}