**********************************************************************************************
**********************************************************************************************
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
main()
{
int a[4],b[4];
int k=0,t=0,r=0,i,j,p=0;
char ch;
do{ if(p==0) {printf(“\n*********************\n”);
printf(“*welcome to the game*\n”);
printf(“*********************\n”);}
do{
srand((unsigned)time(NULL));
a[0]=rand()%10;
a[1]=rand()%10;
a[2]=rand()%10;
a[3]=rand()%10;
}while(a[0]==a[1]||a[0]==a[2]||a[0]==a[3]||a[1]==a[2]||a[1]==a[3]
||a[2]==a[3]);
do{
printf(“\nplease input four number(0-9):”);
scanf(“%d %d %d %d”,&b[0],&b[1],&b[2],&b[3]);
getchar();
if(b[0]==b[1]||b[0]==b[2]||b[0]==b[3]||b[1]==b[2]||b[1]==b[3]
||b[2]==b[3])
printf(“error!!!!please in put four different number!”);
else
{
r++;
for(i=0;i<4;i++)
for(j=0;j<4;j++)
{if((j==i)&&(b[j]==a)) k++;
if((j!=i)&&(b[j]==a)) t++;
}
printf(“%dA%dB”,k,t);
if(k!=4)
{k=0;
t=0;}
}
}while((r<=8)&&(k!=4));
if((r==9)&&(k!=4))
printf(“\n try you best next time!!!\nthe trut answer is:%d %d %d %d”,a[0],a[1],a[2],a[3]);
if(k==4) printf(“\n you are so smart!!!!”);
p++;
printf(“\ndo you want play it again(Y/N)?”);
ch=getchar();
getchar();
r=0;
}while(ch==’y'||ch==’Y');
}
/*说明:直接放在c中就可以运行 */
>> 本文固定链接: http://www.vcgood.com/archives/1622
循环有三种
for循环
while{}循环
do{}while循环
其中do{}while中的循环部分肯定会执行一次!
谢谢了。呵呵。刚刚看懂了。谢谢。 斑竹。好像论坛人不怎么多哦。呵呵。
再看了下这个程序。这个人好叼哦。居然从开始就一直循环。最大的那个do……while似乎太长了点。不容易看哈。
有点乱,不过大概意思还是能看懂的.
可以改一下,设置如下几个函数和程序运行流程!估计这样开起来比较方便!
[code]
//获取随机数
void GetRandNum();
//获取用户输入
void GetUserInput();
//检查数据
int CheckTheNum();
//获取用户输入用于判断用户是否继续玩
int GetInput();
do {
GetRandNum();
GetUserInput();
ret_input = CheckTheNum();
if( ret_input == 1 ) {
printf( "S\" );
} else {
printf( "F\" );
}
} while( GetInput() == 1 );
[/code]
这个程序做的是 猜数字游戏。
斑竹,GetRandNum() GetUserInput() GetInput() CheckTheNum()
这几个函数是不是在C中都已经定义了?
再研究研究。
不是啊,这几个是自己定义的函数,这里只是给出了一个框架和大概需要实现哪些功能!
这样的话程序结构就比较清晰了,而且修改起来也方便多了!
呵呵。我以为咯。呵呵。知道了。谢谢。