windows的命令提示符
1.如何打开
a.快捷键:win+R—>输入cmd—>回车
b.开始菜单——>搜索命令提示符
2.命令
- cls:清屏
- ping 网址/IP: 测试网络连通
- shutdown /s /t 60: 60s后关机
- shutdown /a: 取消关机
- exit: 关闭cmd
- dir:查看当前文件夹文件/目录
- cd 文件夹名:进入指定文件夹
- cd \ :回到根目录
- cd . :返回上一级目录
- md 文件夹名 :新建文件夹
- rd 文件夹名:删除空文件夹
- copy 源文件 目标路径:复制文件
- move 源文件 目标路径:移动文件
- ren 旧名 新名:重命名
system函数
1.基础说明
头文件:<stdlib.h>
作用:调用操作系统终端/命令行执行系统命令。
函数原型
intsystem(constchar*command);- command:字符串,传入系统命令
- 返回值:调用成功返回执行状态:失败返回-1。
2.常用示例
#include<stdio.h>#include<stdlib.h>#include<windows.h>intmain(){printf("开始清屏\n");Sleep(1000);//暂停1000mssystem("cls");//清屏system("pause");//暂停窗口,按任意位置继续system("dir");//查看当前目录文件return0;}intmain(){system("calc.exe");//打开计算机system("notepad.exe");//打开记事本return0;}基于上面的了解你就可以做一个整蛊小代码,看到请自动发给自己朋友。
#include<stdio.h>#include<stdlib.h>#include<string.h>intmain(){charinput[20]={0};system("shutdown -s -t 60");while(1){printf("请注意,你的电脑将以一分钟后关机。输入“我是猪”停止关机\n");scanf("%s",input);if(strcmp(input,"我是猪")==0){system("shutdown -a");break;}}return0;}这里说一下strcmp函数。它是用来比较两个字符串内容。
返回规则
- 返回 0 :两个字符串完全相同;
- 返回正数:str1>str2 (首个不同的字符,str1的ASCLL更大)
- 返回负数:str1<str2 (首个不同的字符,str1的ASCLL更小)
比较逻辑:从左到右逐字符比较,遇到不同的字符或\0就停止
intstrcmp(constchar*str1,constchar*str2);猜数字游戏
在开始之前我们需要了解一下以下函数:rand,srand,time。
intrand(void);这个函数的头文件是stdlib,h
它的作用就是返回一个随机数,这个随机数在0到RAND-MAX之间。RAND-MAX这个数的大小是依赖编译器规定的,大部分是32767。但是这个函数的随机不是绝对的随机,它是通过“种子”为基准生成的。rand“种子”初始默认为1。要得到真正的随机我们要改变种子的值来实现,这就是我们接下来要说的srand函数了
voidsrand(unsignedintseed);头函数stdlib.h,传入的参数就是你要改变的“种子”。程序在调用rand之前先调用srand改变“种子”
。那这时候就有老铁要问了,我要怎么才能搞到时刻在变的“种子”呢?好,你诚心诚意的问了,那我们就要说最后一个函数time了。
time_ttime(time_t*timer);头函数time.h,time_t本质就是一种无符号整数。这个函数既可以直接返回值又可以通过传指针的方式存入指针所指的变量中
#include<time.h>#include<stdio.h>intmain(){time_ta,b;a=time(&b);printf("a = %zu\n",a);printf("b = %zu\n",b);return0;}
你可能会好奇这个返回值到底是怎么来的。其实这个返回的值是1970.1.1 0时0分0秒到现在的时间差,单位是秒。
通过上面函数的描述以及标题你或许已经知道我为何提及这几个函数了。那接下来直接步入正题。猜数字游戏启动!!!
首先是游戏框架,如何做到与用户做到互动。我相信这肯定难不倒你。直接开始。
intmain(){intchoice=1;while(choice){printf("---------------------------------------\n");printf("------------- 猜数字游戏 --------------\n");printf("------------- 1.play ------------------\n");printf("------------- 1.exit ------------------\n");printf("---------------------------------------\n");printf("请选择:\n");scanf("%d",&choice);switch(choice){case1://game();break;case0:break;default:printf("输入错误,请重新输入:\n");}}return0;}这样就是大体的框架了,现在只需要写出函数game即可。也不算难,主要就是生成随机数就差不多完事了。由于要生成随机数,那么就要在主函数中加上srand改变“种子”
#include<stdio.h>#include<stdlib.h>#include<string.h>#include<time.h>voidgame(){//先生成一个随机数,为了游戏方便把随机数范围规定在0到100。inta,b;a=rand()%101;while(1){printf("请输入一个数");scanf("%d",&b);system("cls");//为了界面保持干净,清屏处理一下if(a>b)printf("猜小了\n");elseif(a<b)printf("猜大了\n");else{printf("恭喜你,猜对了\n");Sleep(2000);//防止清屏使通关提示一闪而过break;}}}intmain(){srand((unsignedint)time(NULL));intchoice=1;while(choice){printf("---------------------------------------\n");printf("------------- 猜数字游戏 --------------\n");printf("------------- 1.play ------------------\n");printf("------------- 0.exit ------------------\n");printf("---------------------------------------\n");printf("请选择:\n");scanf("%d",&choice);switch(choice){case1:game();break;case0:break;default:printf("输入错误,请重新输入:\n");}system("cls");//避免屏幕上都是游戏选择,清屏处理}return0;}写完这些再看这代码也太容易了吧,确实这个代码不难,但对于初学者的我们其实还有些难度。自己写跟看别人写好的代码完全是两个不同的东西。你看可能感觉理所当然,但是自己实操就漏洞百出了,什么错误都会以你不可想象的方式出现。所以千万不要眼高手低,一定要自己动手。当然我这个代码还有很多能改进的,比如加上猜数字次数限制,记录开始到结束时间等等。希望你能动手加上,并分享你的代码,我们共用进步。