实验一、认识DOS实验
物联网工程 施振成 201306104124
一、 实验目的
(1)认识DOS;
(2)掌握命令解释程序的原理;
(3)掌握简单的DOS调用方法;
(4)掌握C语言编程初步。
二、 实验内容和要求
要求:
编写类似于DOS,UNIX的命令行解释程序
(1)自行定义系统提示符
(2)自定义命令集(8-10个)
(3)用户输入HELP以查找命令的帮助
(4)列出命令的功能,区分内部还是外部命令
(5)用户输入QUIT退出
(6)内部命令有dir, cd, md,rd, cls, date, time, ren, copy等。
内容:
根据要求,完成设计、编码、测试工作。
三、 实验方法、步骤及结果测试
程序名称:1.C;1.EXE
程序思路:
程序源代码:
#include<stdio.h>
#include<string.h>
int q=1;
char cmd[20][20]={"dir","cd","md","rd","cls","date","time","ren","copy","help","quit"};
void chaxun(char str[20]) ---------该程序用于查询获得的字符的响应结果
{
if(strcmp(str,cmd[0])==0) ----------------------比较获得的字符;
printf("dir 表示无参数:查看当前所在目录的文件和文件夹
");------根据判断值相等输出结果
else if(strcmp(str,cmd[1])==0)
{
printf("cd 目录名:进入特定的目录
");
printf("例如:cd /home
");
}
else if(strcmp(str,cmd[2])==0)
{
printf("md 目录名:建立特定的文件夹
");
printf("例如:md /home
");
}
else if(strcmp(str,cmd[3])==0)
{
printf("rd 目录名:删除特定的文件夹
");
printf("例如:rd /home
");
}
else if(strcmp(str,cmd[4])==0)
printf("cls 目录名:表示清屏功能
");
else if(strcmp(str,cmd[5])==0)
{
printf("date 设置日期命令,功能是设置日期
");
printf("例如:当前日期2015/10/10 周六
");
printf("输入新日期:2015/10/11 周日
");
}
else if(strcmp(str,cmd[6])==0)
{
printf("time 系统时钟设置命令,功能:设置或显示系统时间
");
printf("例如:当前时间:15:11:36.90
");
printf("输入新时间:20:12:12.09
");
}
else if(strcmp(str,cmd[7])==0)
printf("ren 表示文件改个名字,ren命令的格式是:ren 源文件 目的文件名
");
else if(strcmp(str,cmd[8])==0)
printf("copy 表示复制命令,功能:复制信息
");
else if(strcmp(str,cmd[9])==0)
{
printf("dir 内部命令;表示无参数:查看当前所在目录的文件和文件夹
");
printf("cd 内部命令;目录名:进入特定的目录
");
printf("md 内部命令;目录名:建立特定的文件夹
");
printf("rd 内部命令;目录名:删除特定的文件夹
");
printf("cls 内部命令;目录名:表示清屏功能
");
printf("date 内部命令;设置日期命令,功能是设置日期
");
printf("time 内部命令;系统时钟设置命令,功能:设置或显示系统时间
");
printf("ren 内部命令;表示文件改个名字,ren命令的格式是:ren 源文件 目的文件名
");
printf("copy 内部命令;表示复制命令,功能:复制信息
");
printf("help 外部命令;帮助:查询各种命令符
");
}
else if(strcmp(str,cmd[10])==0)
{
q=0;
printf("谢谢使用,拜拜!
");
}
}
main()
{
char s[20];
printf(" ********************欢迎使用***********************
");
while(q)
{
printf("9-23>实验1>input cmd>");
gets(s);----------------------------------------------通过C语言默认的gets()函数获得输入的字符数据;
chaxun(s);-----------------------------------------调用查询函数将用户输入的字符数据与程序的命令符进行比对;
}
}