这是我们学校,我在上大一的时候第二学期的C语言课程设计课题
// 猜数字z.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "stdlib.h"
#include "stdio.h"
#include "time.h"
int qiuA();//声明求A值函数
int qiuB();//声明求B值函数
void suiji();//声明随机数生成函数(四个一位数)
void shuru();//声明用户输入的数函数(也是四个一位数)
int ba();//声明对用户第八次的输入进行判断的部分函数
int A;
int ys2[4],js2[4];
//ys[4]用户输入的数的各个数位上的数;js[4]机器生成的随机数上的各个数位上的数
void main(void)
{
int s;//当运行到第八次时用
int xcc; int B;
//xcc为主循环变量
//生成无重复数字的随机数(四个一位数)
suiji();
printf("猜数字游戏开始,请输入一个不重复数字的四位数\n");
for(xcc=1;;xcc++) //准备进行最多十五次的判断
{
//求出了用户输入的四位数的各个数位上的数(同时也求出了那个输入的四位数)
shuru();
/*求A*/
A=qiuA();
/*求B (B=b-A)*/
B=qiuB();
//验证此次输入是否正确
if(A==4)
{
printf("你棒真,这个数字就是%d%d%d%d,你一共猜了%d次哦!\n",js2[0],js2[1],js2[2],js2[3],xcc);
break;
}
/*一次循环,给出的提示结果*/
printf("第%d次输入 %dA%dB\n\n",xcc,A,B);
//进行八次判断
if(xcc==8)
{
printf("已经八次了,还要继续吗(1 or 0)\n");
s=ba();
if(s==1) { printf("那么,请继续输入四位数\n");continue;}
else if(s==0) break;
}
//进行15次的判断
if(xcc==15)
{
printf("你已经试了15次了,休息一会儿再来吧\n");
break;
}
}
system("pause");
}
/*以下为自定义函数
----------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------
*/
//生成一个无重复数字的随机数函数
void suiji()
{
int i,k;
srand(time(NULL));
for(i=0;i<=3;i++)
{
js2[i]=(rand()%10);
if(i==0)
{
if(js2[0]==0) {i=(-1);continue;}
}
if(i!=0)
{
for(k=i;k>=1;k--)
{
if(js2[i]==js2[k-1])
{i--;break;}
}
}
}
}
//用户输入,并得出输入的四个数字
void shuru()
{
int ys;
do
{
do
{
scanf("%d",&ys);
if(ys<1000||ys>9999) printf("你输入的不是四位数,请重新输入\n\n");
}
while(ys<1000||ys>9999);
ys2[0]=(ys/1000);
ys2[1]=((ys-1000*ys2[0])/100);
ys2[2]=((ys-1000*ys2[0]-100*ys2[1])/10);
ys
2[3]=(ys-1000*ys2[0]-100*ys2[1]-10*ys2[2]);
if(ys2[0]==ys2[1]||ys2[0]==ys2[2]||ys2[0]==ys2[3]||ys2[1]==ys2[2]||ys2[1]==ys2[3]||ys2[2]==ys2[3]
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库猜数字游戏-C语言课程设计在线全文阅读。
相关推荐: