自己用10分钟写了一个猜数字的小游戏娱乐室友

数字为整数,范围为[0,1000],游戏关键点在于怎么样获取一个0到1000的随机数,并且每次随机数都不相同,代码实现如下:

/***********************************************************************
    Copyright (c) 2015,wangzp
    All rights no reserved.
  
    Name: 《Guess Number》
    ID:   guess.cpp
    问题简述:  猜数字游戏,1000以内。
 
    Date: SEP 10, 2015 
 
***********************************************************************/
#include 
   
   
    
    
#include 
    
    
     
     
#include
     
     
      
      
#include
      
      
       
       

typedef struct  
{
	char name[15];
	int guess_num;
	int guess_sum;
}USER;

int guess_fun(int n,int seed_num)
{
	if (n < seed_num)
	{
		printf("Too small,Please input a number again:\n");
		return 0;
	} 
	else if(n > seed_num)
	{
		printf("Too large,Please input a number again:\n");
		return 0;
	}
	else
	{
		printf("Congratulations!You are correct!\n");
		return 1;
	}
}
int main(void)
{
	USER a[100];
	int i,n,seed;
	char *s;
	memset(a,NULL,sizeof(USER)*100);
	printf("Please input the number of People:\n");
	scanf("%d",&n);
	for (i = 0;i < n;i++)
	{
		srand((unsigned)time(NULL)); 
		seed = rand() % 1000 + 1;
		printf("Please input your name.\n");
		scanf("%s",a[i].name);
		printf("Hello!%s\n",a[i].name);
		printf("Please input a number more than 0 and less than 1000.:\n");
		scanf("%d",&a[i].guess_num);
		while(!guess_fun(a[i].guess_num,seed))
		{
			a[i].guess_sum++;
			scanf("%d",&a[i].guess_num);
		} 
	}
	s = a[0].name;
	for (i = 1;i < n;i++)
	{
		if (a[i].guess_sum < a[i - 1].guess_sum)
		{
			s = a[i].name;
		}
	}
	for (i = 0;i < n;i++)
	{
		printf("%s spend %d times.\n",a[i].name,a[i].guess_sum);
	}
	printf("The winner is %s.\n",s);
	return 0;
}
      
      
     
     
    
    
   
   

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值