#include<stdio.h>
#include<stdlib.h>
#include <time.h>
void menu()
{
printf("1. play 0.exit\n");
}
int main()
{
int input = 1;
do
{
menu();
printf("请选择>:");
scanf("%d", &input);
switch(input)
{
case 1:
{
int ret = 0;
srand( (unsigned)time( NULL ) );
//srand产生一个无符号整形的随机数
ret = rand() % 100;
/*printf("ret=%d\n",ret);*/
//如果你是游戏的设计者你可以把这个随机数自己先知道
//产生一个1—100之间的随机数
while(1)
{
int n = 0;
printf("你猜>:");
scanf("%d", &n);
if(n > ret)
{
printf("你猜大了\n");
}
else if(n < ret)
{
printf("你猜小了\n");
}
else
{
printf("恭喜你,猜对了\n");
break;
}
}
printf("%d\n",ret);
}//
break;
case 0:
//
break;
}
}while(input);
return 0;
}
//2.编写二分查找。
#include<stdio.h>
bin_search(int arr[],int key,int left,int right)
{
while(left <= right)
{
int mid=left-(left-right);
if(arr[mid] < key)
{
left=mid+1;
}
else if(arr[mid] > key)
{
right=mid-1;
}
else
return mid;
}
}
int main()
{
int arr[]={0,1,2,3,4,5,6,7,8,9};
int key=7;
int left=0;
int right=sizeof(arr)/sizeof(arr[0])-1;
int ret=bin_search(arr,key,left,right);
if(ret!=-1)
{
printf("%d\n",arr[ret]);
}
return 0;
}
//杨辉三角
#include<stdio.h>
#define N 10
int main()
{
int i=0;
int j=0;
int a[N][N];
for(i=0; i<N; i++)
{
for(j=0; j<N-i-1; j++)//输出每一行前面的空格
{
printf(" ");
}
for(i=0; i<N; i++)
{
a[i][i]=1;
a[i][0]=1;
}
for(i=2; i<N; i++)
for(j=1; j<i; j++)
a[i][j]=a[i-1][j-1]+a[i-1][j];
for(i=0; i<N; i++)
{
for(j=0; j<=i; j++)
printf("%5d",a[i][j]);
printf("\n");
}
}
return 0;
}