0930实验一报告

实验一、DOS命令解释程序的编写

13物联网  谢敏  201306104116

一、 实验目的

(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. 源程序名1.c ;可执行程序名:1.exe

     2.原理分析及流程图

     先将命令符用一个字符串数组存储起来等待用户输入命令进行匹配,然后将用户输入的命令保存在一个字符串中,而后将该命令与已有的命令逐一进行比较,对比相同则输出对应内容,如果没找到则不做任何显示。

 

     3.主要程序段及其解释:

void chaxun(char str[20])
{
if(strcmp(str,cmd[0])==0)
printf("dir 表示无参数:查看当前所在目录的文件和文件夹 ");
else if(strcmp(str,cmd[1])==0)
printf("cd 目录名:进入特定的目录 ");
else if(strcmp(str,cmd[2])==0)
printf("md 目录名:建立特定的文件夹 ");
else if(strcmp(str,cmd[3])==0)
printf("rd 目录名:删除特定的文件夹 ");
else if(strcmp(str,cmd[4])==0)
printf("cls 目录名:表示清屏功能 ");
else if(strcmp(str,cmd[5])==0)
printf("date 设置日期命令,功能是设置日期 ");
else if(strcmp(str,cmd[6])==0)
printf("time 系统时钟设置命令,功能:设置或显示系统时间 ");
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 表示复制命令,功能:复制信息 ");

}
else if(strcmp(str,cmd[10])==0)
{
q=0;
printf("谢谢使用,拜拜! ");
}

}

      4.运行结果及分析

用户进入界面后,给出使用提示:

 

输入help可显示所有命令符及其作用:

 

举例输入cd命令后的界面:

 

输入quit,退出程序:

 

四、 实验总结

  本次实验并没有没什么难度,主要是要熟练strcmp的用法,太久没用有点忘了,但经过上网查资料已搞定!

原文地址:https://www.cnblogs.com/aa88/p/4865480.html