Ⅰ c语言猜数题,怎么修改程序,使得如果连续输入十次都猜不对正确答案88,就结束游戏。
在c++后面,scanf前面,加一句:
if(c>10)break;
最后的printf改成:
if(b==88)橡猜printf("梁早型Right!用了%d次尝试。",c);
elseprintf("Wrong!很遗憾,已睁斗经尝试了10次,依然没有猜中。");
Ⅱ C语言猜数游戏(高低游戏)
#include <stdio.h>
#include <stdlib.h>
void clear()
{
scanf("%*[^\n]");
scanf("%*c");
} //清除输入缓冲区
void Inspect(int number,int cn)
{
int innum,flag=0;
while(cn<7 && flag==0){
printf("输入猜测的数据(0~99):");
scanf("%d",&innum);
if(innum==number)
{
flag=1;
printf("恭喜,猜对了,共用了%d次!\n",cn);
}
else if(innum>number)
{
cn++;
printf("很遗憾,你猜错了,是更小的数,你还有%d次机会!\n",7-cn);
}
else
{
cn++;
printf("很遗憾,你猜错了,是更大的数,你还有%d次机会!\n",7-cn);
}
}
if(cn==7){
printf("你已经没有机会尝试了,请重新再来\n");
printf("%d\n",number);
}
} //游戏主体判断函数
int main()
{
int number=rand()%100;
int cn=0;
char tp='y';
Inspect(number,cn);
while(tp=='y'){
printf("你还想继续尝试吗?(y/n):");
clear(); //清除输入缓冲区,防止之前的输入影响后面的代码执行
scanf("%c",&tp);
if(tp=='y') {cn=0;Inspect(number,cn);}
}
return 0;
}
Ⅲ 猜数,用函数,c语言,猜一个随机数有三次机会
参考代码:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
intmain()
{
inti,randomnum,yourguess;
randomize();
randomnum=random(101);
printf("请猜一个1-100间的数: ");
for(i=1;i<=3;i++)
{
scanf("%d",&yourguess);
if(yourguess==randomnum)
{
printf("这是第%d次猜数,恭喜猜对了! ",i);
printf("按任意键退出 ",i);
getch();
break;
}
elseif(yourguess<仔亩randomnum)
{
if(i<3)
侍戚拆{
老枣printf("这是第%d次猜数,猜小了!还剩%d次机会,请继续... ",i,10-i);
continue;
}
else
printf("这是最后一次猜数,猜小了!很遗憾... ");
}
elseif(yourguess>randomnum)
{
if(i<3)
{
printf("这是第%d次猜数,猜大了!还剩%d次机会,请继续... ",i,10-i);
continue;
}
else
printf("这是最后一次猜数,猜大了!很遗憾... ");
}
}
return0;
}
Ⅳ 如何猜数游戏C语言程序设计
编程如下:
#include
#include
#include
int main(int argc, char * argv[])
{
srand((unsigned)time(NULL));
int a = rand()%100;
a+=1;
int b,c;
c = 0;
while (c {
printf("Please enter a number: ");
if (scanf("%d", &b) == 0)
{
fprintf(stderr, "Invalid entry. ");
return EXIT_FAILURE;
}
else
{
if (b == a)
{
printf("You are correct, the number is %d! ", a);
printf("You used %d times to get the answer. ", c);
break;
}
else if (b >a)
printf("The number is bigger than it suppose to. ");
else
printf("The number is smaller than it suppose to. ");
c++;
}
if (c == 10)
{
printf("You used 10 times, please try again! ");
break;
}
}
return EXIT_SUCCESS;
}
Ⅳ C语言编写猜数游戏
建议判断部分改一下。
1 分成两个循环判断
2 第一个循环先判断位置和值都正确的
3 第二个循环为嵌套循环,对于第一个循环判断正确的情况,不再判断。否则会出现错误结果。
另外一个建议,不要每次都去计算guess的各个位值,而是直接存到一个4位的数组中,对元素进行判断,代码会简单清晰得多。
Ⅵ C语言编程 猜数游戏
#include
#include
//用到了rand函数,所以要有这个头文件
#include
//用到了time函数,所以要有这个头文件
int
main()
{
int
number;
//number用于存储随机数
int
guess=0;
//guess用于存储玩家猜的数
srand((unsigned)
time(null));//用系统时间作为rand函数使用的种子
number=rand()%100;
//随机除以100,取余数
number++;
//余数加1
printf("猜数字游戏\n");
printf("该数字在1到100之间\n");
while(guess!=number)
{
printf("请输入您所猜的数:");
scanf("%d",&guess);
//如果玩家猜的数较小,给予提示
if
(guess
number)
{
printf("大了\n");
}
}
//猜中则循环结束,输出猜中的数字
printf("猜对了,这个数字就是:%d\n",number);
return
0;
}
Ⅶ c语言猜数字游戏
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<time.h>
char*getHint(char*secret,char*guess)
{
inti,countA=0,countB=0;
intcount[10]={0};
char*result=(char*)malloc(strlen(secret));
if(strlen(secret)!=strlen(guess))
{
printf("UnequalLength!");
returnNULL;
}
for(i=0;i<4;i++)
{
if(secret[i]==guess[i])
countA++;
else
{
count[secret[i]-'0']++;
if(count[secret[i]-'0']<=0)
{
countB++;
}
count[guess[i]-'0']--;
if(count[guess[i]-'0']>=0)
{
countB++;
}
}
}
sprintf(result,"%d%c%d%c",countA,'A',countB,'B');
returnresult;
}
intmain()
{
inti=0,j=0;
charnum[4]={0},input[5]={0};
srand((unsigned)time(NULL));//初始化随机数
for(i=0;i<4;i++)//生成4个随机数
{
num[i]=(rand()%10)+48;
}
for(j=0;j<10;j++)
{
printf("pleaseinput4-digtalsnumber[%d]times:",j+1);
fgets(input,sizeof(input),stdin);
fflush(stdin);
if(strlen(input)!=4)
{
continue;
}
printf("input[%s] ",input);
strcpy(input,getHint(num,input));
printf("ret=[%s] ",input);
if(strcmp(input,"4A0B")==0)
{
printf("YouareWin! ");
break;
}
}
return0;
}
Ⅷ c语言设计猜数字游戏
基本实现功能,但菜单和计分庆尘腔自己实现!
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include <windows.h>
#define MAXTIMES 10
#define winer 1
#define loser 0
int main()
{
int aid[4],num[4],i,j,times,key,key2,A,B;
char ch;
time_t now;
Initialize:now=time(0);
srand(now);
aid[0]=(rand()+90)%10;/*生成目标数组*/
Sleep(20);
aid[1]=(rand()+90)%10;
Sleep(20);
aid[2]=(rand()+90)%10;
Sleep(20);
aid[3]=(rand()+90)%10;
for(i=0;i<4;i++) /*判断是否产生相同的数字*/
{
for(j=0;j<4;j++)
{
if((i!=j)&&(aid[i]==aid[j]))
goto Initialize;
}
}
printf("\n");
times=1;
while(times<=MAXTIMES) /*程序主体部分*/
{
key=0;
key2=0;
printf("NO.%d:\n\tPlease input 4 different int numbers to play!\n\t",times);
scanf("%d,%d,%d,%d",&num[0],&num[1],&num[2],&num[3]);
for(i=0;i<4;i++) /*判断所输数字是否合法则*/
{
if(!((num[i]<=9)&&(num[i]>=0)))
{
printf("\tError!The numbers you input must be int numbers which from 0 to 9\n");
key=1;
break;
}
}
if(key==1)
continue;
for(i=0;i<4;i++) /*判断是否输入了相同的数字*/
{
for(j=i+1;j<4;j++)
{
if(num[i]==num[j])
{
printf("\tError!The numbers you input must be different!\n");
key2=1;
}
break;
}
}
if(key2==1)
continue;
A=0;
B=0;
for(i=0;i<4;i++) /兄罩*比较两组数字*/
{
if(num[i]==aid[i])
A++;
}
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
if(num[i]==aid[j])
B++;
}
}
B=B-A;
printf("\tA%dB%d\n",A,B);
if(A==4) /*游戏成功,提示并返回*/
{
printf("Congratulations!\n");
printf("Press any key to exit.!\n");
getchar();
return(winer);
}
else /*这次不誉衫完全对,允许次数内重新猜*/
{
printf("\t\tPress ENTER to continue,or press A to see about answer and exit.\n"); /*选择是否放弃,看答案*/
ch=getchar();
if(ch=='n')
{
continue;
}
if((ch=='a')||(ch=='A'))
{
printf("The four numbers:%d,%d,%d,%d\n",aid[0],aid[1],aid[2],aid[3]);
getchar();
return(loser);
}
}
times++;
}
printf("Sorry!You have lost all the chances!nPress any key to exit!\n");
getchar();
}
Ⅸ 用C语言编写猜数游戏
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
int main()
{
int n,g,i=10;
srand((unsigned)time(NULL));
n=rand()%100+1;//////////////////////////////随机数
while(i--)
{
printf("Input A Number: ");////////////////////////提示输入
scanf("%d",&g);
if(n==g)
break;
else if(g<n)
printf("Lower Than That\n");
else
printf("Higher Than That\n");
}
if(i==0)
printf("Game Over!\n");//////////////////////////////10次
else
printf("%d Times\n",10-i);///////////////////////////猜中
return 0;
}
Ⅹ 猜数游戏c语言
#include <stdio.h>
#include <stdlib.h>
main()
{
int n,t,g;
char c;
while(1)
{
n = 1 + rand() % 100;
printf("请猜一个1~100的数字:");
scanf("%d",&g);
t=1;
while(g!=n)
{
if(t==10) break;
if(g<n) printf("猜小了哦\n");
else printf("猜大了哦\n");
scanf("%d",&g);
t++;
}
if(t==1) printf("太棒了,一次就猜对了!\n");
else if(t>2 && t<5) printf("猜了%d次,也不错哦。\n",t);
else if(t>4 && t<8) printf("猜了%d次,还可以\n",t);
else if(t==8 || t==9) printf("猜了%d次才对,你乱猜的吧\n",t);
else if(t==10) printf("怎么猜了10次还不对啊,算了,猜下一个吧。\n");
if((c=getchar())=='q') break;
}
}