| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1010 人关注过本帖
标题:一个猜数字程序,我错在哪儿了,帮看下
取消只看楼主 加入收藏
蝴蝶效应
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2005-3-22
收藏
 问题点数:0 回复次数:4 
一个猜数字程序,我错在哪儿了,帮看下
4位数猜测,不对就给出提示A表示位置和数字都对,B表示数字对位置不对

在线等答案






#include <math.h>
#include <stdio.h>
void main(void)
{
int answer[4]={1,3,5,2},guess,a,b,times=0,i,j;    /*初始化被猜答案为1352*/
printf("please guess\n");
while(a!=4)
{                                                 /*进入猜数字循环*/
a=0;
b=0;
times++;                                          /*猜测次数加1*/
printf("%d",times);                               /*显示猜测次数*/
scanf("%d",&guess);                               /*数取玩家输入数字*/
for(i=3;i>-1;i--)
{                                                 /*开始循环*/
for(j=0;j<4;j++)
{
if((int)(guess/pow10(i))==answer[j])
if(i+j==3)                                        /*如果位置相同A加1*/
a=a+1;
else
b=b+1;                                            /*如果位置不同B加1*/
}
}
guess=guess-(int)(guess/pow10(i)*pow10(i)
}                                                 /*对比下一位猜测数字*/
printf("%dA%dB\n",a,b);                           /*显示本次猜测AB正确性*/
}

搜索更多相关主题的帖子: 数字 times void 
2005-03-22 20:08
蝴蝶效应
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2005-3-22
收藏
得分:0 

谢谢先


立志:吃遍成都路边摊!
2005-03-22 21:38
蝴蝶效应
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2005-3-22
收藏
得分:0 
大哥,错的啊,无法编译

立志:吃遍成都路边摊!
2005-03-22 23:14
蝴蝶效应
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2005-3-22
收藏
得分:0 
#include <math.h>
#include <stdio.h>
void main(void)
{
int answer[4]={1,3,5,2},guess,a,b,times=0,i,j;    /*初始化被猜答案为1352*/
printf("please guess\n");
while(a!=4)
{                                                 /*进入猜数字循环*/
a=0;
b=0;
times++;                                          /*猜测次数加1*/
printf("%d",times);                               /*显示猜测次数*/
scanf("%d",&guess);                               /*数取玩家输入数字*/
for(i=3;i>-1;i--)
{                                                 /*开始循环*/
for(j=0;j<4;j++)
{
if((int)(guess/pow10(i))==answer[j])
if(i+j==3)                                        /*如果位置相同A加1*/
a=a+1;
else
b=b+1;                                            /*如果位置不同B加1*/
}
}
guess=guess-(int)(guess/pow10(i))*pow10(i);
}                                                 /*对比下一位猜测数字*/
printf("%dA%dB\n",a,b);                           /*显示本次猜测AB正确性*/
}



我的我修改了,但是和你有同样的问题就是死循环,今天搞定,

立志:吃遍成都路边摊!
2005-03-23 11:52
蝴蝶效应
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2005-3-22
收藏
得分:0 
是啊,正在修改当中,新人嘛!

立志:吃遍成都路边摊!
2005-03-23 14:07
快速回复:一个猜数字程序,我错在哪儿了,帮看下
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.034414 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved