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

一、目的和要求

  1. 实验目的

    (1)认识DOS;

    (2)掌握命令解释程序的原理;

    (3)掌握简单的DOS调用方法;

    (4)掌握C语言编程初步。

  2.实验要求

    编写类似于DOS,UNIX的命令行解释程序

    (1)自行定义系统提示符

    (2)自定义命令集(8-10个)

    (3)用户输入HELP以查找命令的帮助

    (4)列出命令的功能,区分内部还是外部命令

    (5)用户输入QUIT退出

    (6)内部命令有dir, cd, md,rd, cls, date, time, ren, copy等。

 

二、实验内容

  根据要求,完成设计、编码、测试工作。

 

三、实验环境

  1.PC微机

  2.Windows 操作系统

  3.C/C++程序开发集成环境

 

四、实验原理及核心算法参考程序段

 

#include<stdio.h>
#include<string.h>
main()
{
char cmd[20][20]={"dir", "cd","md","rd", "cls", "date","time","ren","copy","help","quit"};
char str[20];
while(1)
{
printf("请输入显示符");
gets(str);
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目录名:建立特定的文件夹,dos下面习惯叫目录,win下面习惯叫文件夹 ");
}
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("data设置日期命令,功能是设置日期 ");
}
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目录名:建立特定的文件夹,dos下面习惯叫目录,win下面习惯叫文件夹 ");

printf("rd目录名:删除特定的文件夹 ");

printf("cls清除屏幕 ");

printf("data设置日期命令,功能是设置日期 ");

printf("time系统时钟设置命令,功能:设置或显示系统时期. ");

printf("ren表示文件改个名字,ren命令的格式是:ren源文件名的文件名 ");

printf("copy表示复制命令,把一个文件拷贝到另一个地方 ");
}
else if(strcmp(str,cmd[10])==0)
return;
else
{
printf("你输入错误的信息,请重新输入: ");
}
}

}

 实验结果分析

 1、输入其中一个命令

2、输入help显示所有命令

3、输入错误指令

4、输入quit直接关闭程序

五、实验总结

   通过本次实验,算是复习了一次c语言,里面的函数比较简单,通过while循环实现,但还是要多多学习更多知识。

原文地址:https://www.cnblogs.com/Tim1021/p/4866943.html