您的位置:

猜编号c语言,猜数C语言

本文目录一览:

C语言编程_幸运52猜数游戏__

加分啊,哈哈

#includeiostream.h

const int N=10;

void compare(double p[],int n);

void sort(double g[],double p[]);

void main()

{

cout"欢迎进入幸运52猜数游戏""t""制作人:电气 C097 张欣瑞 096133"endl;

double g[N]={12,16,20,40,60,55,91,43,33,50},p[10];

char choice;//记录输入的判断是否进行的字符

for(int a=1;;a++)

{

cout"现在开始游戏?请选择n(否)或者y(是)"endl;

cinchoice;

if(choice=='y')

{

cout"游戏规则:\n"

"1.由玩家自选商品序号并对商品价格进行猜测""\n"

"2.系统会对玩家所给出的价格进行分析并提示高了或者低了""\n"

"3.对于每件商品玩家都有十次机会猜出其价格若10次机会都没有猜中则该轮游戏结束""\n"

"4.若玩家在10次之内猜出商品价格则可以选择是否继续猜另一种商品的价格""\n"

"5.游戏结束后系统会自动对商品进行价格排序并且现实出来商品编号""\n";

coutendl;

for (int m=0;m10;m++)

{

cout"请选择商品编号(0至9)"endl;

int n;//n记录输入的所猜的题号

cinn;

compare(p,n);//调用函数

}

}

else

{

cout"游戏结束"endl;

break;

}

}

sort(g,p);

}

void compare(double p[],int n)//判断猜出价格的高低以及是否正确的分函数

{

double g[N]={12,16,20,40,60,55,91,43,33,50};

for(int b=0;b10;b++)

{

cout"请输入商品价格"endl;

cinp[b];

if(p[b]g[n])

cout"Wrong""\t""低了"endl;

else if(p[b]g[n])

cout"Wrong""\t""高了"endl;

else if(p[b]==g[n])

{

cout"Right!""\t""您猜了"b+1"次价格就猜对了""\n""不错!"endl;

b=+10;

}

}

}

void sort(double g[],double p[])//把商品按照价格由低到高排序,并把排序后的商品序号显示出来的分函数

{

double t,k[N];//c1

for(int i=0;iN;i++)

k[i]=g[i];

for(int j=0;jN-1;j++)

for(int m=0;mN-1-j;m++)

if(g[m]g[m+1])

{

t=g[m];

g[m]=g[m+1];

g[m+1]=t;

}//c2---c1-c2为用冒泡法排序

for(i=0;iN;i++)

for(int j=0;jN;j++)

{

if(k[j]==g[i])

coutg[i]"\t""商品编号"jendl;//用查找的方法显示数组原来的序

}

}

用C语言编写猜数字(喜欢挑战的人可以来看看哦)

// 猜数字.cpp : Defines the entry point for the console application.

//

#include stdafx.h

#include stdlib.h

#include stdio.h

#include time.h

//随机生成4位数,要求没有重复数字

void ProduceRandomNumber(int data[4])

{

int z;

/*随机选取1-9999的数,放弃1-999的数,选择1000-9999的数*/

do

{

srand( (unsigned)time( NULL ) );

z=(rand()%100)*(rand()%100);/*随机选数*/

data[3]=z%10;/*把随即数分成4个*/

data[2]=z/10%10;

data[1]=z/100%10;

data[0]=z/1000%10;

}while(z1000||data[0]==data[1]||data[0]==data[2]||data[0]==data[3]||data[1]==data[2]||data[1]==data[3]||data

[2]==data[3]||data[0]==0);/*判断每一位数是否相同,如果是则重新输出*/

return ;

}

void Indata(int number,int data[4])

{

data[0]=number/1000%10;

data[1]=number/100%10;

data[2]=number/10%10;

data[3]=number%10;

}

int PosRight(int question[4],int answer[4])

{

int i,count=0;

for(i=0;i=3;i++)

{

if(question[i]==answer[i])

{

count++;

}

}

return count;

}

int NumRight(int question[4],int answer[4])

{

int i,j,count=0;

for(i=0;i=3;i++)

{

for(j=0;j=3;j++)

{

if((question[i]==answer[j])(i!=j))

{

count++;

}

}

}

return count;

}

int main(int argc, char* argv[])

{

int answer,count=0,input[4],output[4],m=0,n=0,choice;

ProduceRandomNumber(input);

printf(" 欢迎来玩猜数字游戏!\n 游戏开始啦!!!\n");

do

{

count++;

scanf("%d",answer);

Indata(answer,output);

m=PosRight(input,output);

n=NumRight(input,output);

if(m==4)

{

printf("你真棒!!!\n这个数字就是%d%d%d%d\n你一共猜了%d次了!\n",input[0],input[1],input[2],input[3],count);

break;

}

else

{

printf("不好意思你错了哦!! 提示: %dA%dB\n",m,n);

}

if(count==8)

{

printf("你已经猜了八次了!还要继续吗?(1:yes/0:false)\n");

scanf("%d",choice);

if(choice==1)

printf("继续吧!\n");

else

{printf("结束游戏!\n");

break;}

}

else if(count==15)

{

printf("你已经猜了15 次了,可能方法不对!下次继续吧!!!\n");

break;

}

}while(1);

return 0;

}

c语言猜数字

#includestdio.h

#include time.h

#include stdlib.h

int zishu;

int min=1,max=100;

void jieshou()

{

printf("请在%d到%d中输入您猜的数:",min,max);

scanf("%d",zishu);

if(zishumin||zishumax)

{

printf("\n对不起,您输入的数不合法,请重新输入!");

scanf("%d",zishu);

}

}

void main()

{

srand( (unsigned)time( NULL ) );

int suiji=rand()%100+1; //产生随机数

int cishu=0;

jieshou(); //接受用户猜的数

while(cishu!=10)

{

if(zishusuiji) //判断

{

max=zishu;

jieshou();

}

else if(zishusuiji)

{

min=zishu;

jieshou();

}

else

{

printf("您真牛逼!!这样也能猜对!!");

break;

}

cishu++;

}

if(cishu==10)

exit(0);

}

猜数字游戏: 要c语言的代码

#includestdio.h

#includestdlib.h

#includetime.h

#define menu printf("1:开始游戏!2:查看积分榜!3:输出帮助信息!4:系统设置!0:退出程序!\n")

void sort(int *start, int *end)

{

int *key, *i , *j, temp;

key = start; i = start; j = end;

if(start=end) return;

while(i != j)

{

while(*j = *key j i) j--; {temp = *j; *j = *key; *key = temp; key = j; }

while(i j *i = *key) i++; {temp = *i; *i = *key; *key = temp; key = i; }

}

sort(start, key-1);

sort(key+1, end);

}

void game(int count, int times)

{

int i, j, f, f1, a[10], b[10], f2, score=100;

FILE *fp;

printf("输入%d个1至9之间不重复的数 中间用空格隔开\n", count);

srand((unsigned)time(NULL));

for(i=0; icount; i++)

{ a[i]=rand()%10;

while(1)

{

for(j=0, f=1; ji; j++)

if(a[i]==a[j]) {a[i]=rand()%10; f=0; break;}

if(f) break;

}

}

printf("产生随机数为:");

for(i=0; icount; i++) printf("%d ", a[i]); printf("\n");

while(times)

{

printf("你还有%d次机会\n", times);

f=0, f1=0, f2=1;

for(i=0; icount; i++)

if(scanf("%d", b[i])!=1) { printf("输入格式不正确..你浪费了一次机会\n\n"); f2=0; break;}

if(f2)

for(i=0; icount; i++)

{ if(f2==0) break;

for(j=i+1; jcount; j++)

if(b[i]==b[j]) { printf("输入有重复..你浪费了一次机会\n\n"); f2=0; break;}

}

if(f2)

{

for(i=0; icount; i++)

for(j=0; jcount; j++)

if(a[i]==b[j])

if(i==j) f++;

else f1++;

if(f==count) {printf("你蒙对了!!!\n\n"); ; break;}

printf("有%d个数数值和位置都相同! 有%d个数数值相同,但位置不同\n\n", f, f1);

}

times--; score-=10;

fflush(stdin);

}

if(score0)

{

fp=fopen("dat.txt", "r");

fread(a,sizeof(int),7,fp);

a[7] = score;

sort(a+2, a+7);

for(i=7; i2; i--) b[9-i]=a[i]; b[0]=a[0]; b[1]=a[1];

fclose(fp);

fp=fopen("dat.txt", "w");

fwrite(b,sizeof(int),7,fp);

fclose(fp);

}

}

void viewrecord()

{

FILE *fp;

int a[7], i;

if((fp=fopen("dat.txt", "r"))==NULL) printf("无记录");

else fread(a,sizeof(int),7,fp);

for(i=2; i7; i++)

printf("第%d名 %d分\n", i-1, a[i]);

printf("按任意键键退出积分榜\n\n");

fclose(fp);

getchar();

}

void set()

{

int a[7], i;

FILE *fp;

fp=fopen("dat.txt", "r");

fread(a,sizeof(int),7,fp);

printf("修改数字个数\n");

scanf("%d", a[0]);

printf("修改尝试次数\n");

scanf("%d", a[1]);

fp=fopen("dat.txt", "w");

i=fwrite(a,sizeof(int),7,fp);

if(i==7) printf("修改成功!\n");

else printf("修改失败\n");

printf("按任意键键回主菜单\n\n");

fclose(fp);

getchar();

}

void main()

{

int a[7], i;

FILE *fp;

char ch;

if((fp=fopen("dat.txt", "r"))==NULL)

{

fp=fopen("dat.txt", "w");

for(i=2; i7; i++)

a[i]=0; a[0]=4; a[1]=4;

fwrite(a,sizeof(int),7,fp);

fclose(fp);

}

else

fread(a,sizeof(int),7,fp);

printf("1:开始游戏!2:查看积分榜!3:输出帮助信息! 4:系统设置!0:退出程序!\n");

while((ch=getchar())!='0')

switch(ch)

{

case '1' : fp=fopen("dat.txt", "r"); fread(a,sizeof(int),7,fp); fclose(fp); game(a[0], a[1]); menu; break;

case '2' : viewrecord();menu;break;

case '3' : printf("帮助\n"); getchar(); break;

case '4' : set(); menu; break;

default : ;

}

}