c语言的猜数字问题

来源:百度知道 编辑:UC知道 时间:2024/06/30 05:33:09
出不来预想的结果,请大家帮忙改改,谢谢!!
#include<stdio.h>
void main()
{
int i,j,A=0,B=0,n=0;
int a[4]={1,2,3,4},b[4];
printf("please import 4 numbers from 1 to 10:");
for(i=0;i<4;i++)
{scanf("%d",&b[i]);}
for(;A!=4;n++)
{
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
if(b[j]=a[i])
{
i!=j?B++:A++;
}
}
}
printf("%dA%dB\n",A,B);
A=0;B=0;
printf("please import 4 numbers from 1 to 10:");
for(i=0;i<4;i++)
{scanf("%d",&b[i]);}
}
printf("Congratulations!!!\n");
printf("You have guessed %d times in all\n",n);
printf("The answer is:");
for(i=0;i<4;i++)
{
printf("%d ",a[i]);
}
printf("\n");
}
谢谢
我要做的是猜数字游戏 如果数字正确顺序也正确的话A++,如果数字正确但顺序不对的话B++

#include<stdio.h>
void main()
{
int i,j,A,B,n=0;
int a[4]={1,2,3,4},b[4];
do{
A=0;
B=0;
printf("please imput 4 numbers from 1 to 10:"); //我用的VC6.0,数据输入之间空格;
for(i=0;i<4;i++)
{
scanf("%d",&b[i]);
}
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
if(b[j]==a[i]) //等号==;
{
i!=j?B++:A++;
}
}
n++;
printf("%dA%dB\n",A,B);
}while(A<4);
printf("Congratulations!!!\n");
printf("You have guessed %d times in all\n",n);
printf("The answer is:");
for(i=0;i<4;i++)
{
printf("%d ",a[i]);
}
printf("\n");
}
你的循环有点问题,局部还有些错误,我这个可以了,不懂的在线HI

不知道你的程序要做什么,我发现的错误如下:
if(b[j]=a[i])
应该修改为:
if(b[j]==a[i])
相等判断是==

下面这句很怪,只要你不是怪人,有可能有错:
i!=j?B++:A++;
但是不知道你是什