#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include <stdlib.h>
#include<time.h>//引入time库函数,
#include<stdlib.h>
#include<string.h>
//指令:shutdown -s -t 60—电脑将在60s后关机 shutdown -a——取消关机
int main()
{
char arr[20] = { "0" };
system("shutdown -s -t 60");//system函数需引入
again:
printf("请注意,您的电脑将在1分钟后关机,如果输入:我是猪,则取消关机\n请输入:");
scanf("%s", arr);
if (strcmp("我是猪", arr) == 0)
{
system("shutdown -a");//引入头文件<stdlib.h>
}
else
goto again;
}
//go to语句——使程序执行随意跳转的一个语句——终止某些程序下进行深层嵌套出现错误时特别适用,其他场景不建议使用
//go to语句可以用循环替代 eg:
//int main()
//{
// again:
// printf("hello word\n");
// goto again;
//}
//产生一个1~100之间的随机数,猜数字游戏的实现
void menu()//创建自定义函数—简易菜单
{
printf("************************\n");
printf("****1.play 0.excit****\n");
printf("************************\n");
}
void game()//创建自定义函数—game函数
{
int ret = 0;
int guess = 0;
ret=rand()%100+1;//引入rand函数,并将产生的1~100随机数赋值给ret
//rand—库函数—产生随机数—产生随机数最大值为RAND_MAX—即最大值为32767
while(1)
{
printf("请猜数字\n");
scanf("%d", &guess);
if (guess > ret)
printf("你猜大了\n");
else if (guess < ret)
printf("你猜小了\n");
else
{
printf("恭喜你,你猜对了\n");
break;
}
}
}
int main()
{
int input = 0;
srand((unsigned int)time(NULL));//引入srand函数作为rand函数的初始指针。unsighed—将time函数的类型强行进行转换为int类型。NULL为空的时间戳,引入时间即可
do
{
menu();
printf("请选择 :");
scanf("%d",&input);
switch(input)//进入相对应的case语句
{
case 0:
printf("退出游戏\n");
break;
case 1:
game();//猜游戏的过程
break;//退出switch语句,input=1—重新进入do while循环,重新输入后,重新进入switch语句
default:
printf("输入错误,请重新输入\n");
}
} while (input);
return 0;
}
猜中间数
int main()
{
int arr[20] = {1,2,3,4,5,6,7,8,9,10};
int left = 0;
int right = sizeof(arr) / sizeof(arr[0])-1;
int average = 0;
int key = 7;
for (;;)
{
average = (left + right) / 2;
if (arr[average] < key)
{
left = average;
}
else if (arr[average] > key)
right = average;
else {
printf("找到了\n值为%d", arr[average]);
break;
}
}
return 0;
}