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

时间:2024-09-14 13:37:08

一、目的和要求

  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>

void main(){

  char command[20];

  char s[20][20]={"dir","cd","md","rd","cls","date","time","ren","copy","help","quit","haha","hehe","xixi"};

  int count,key;

  while(strcmp(command,"quit")!=0){

    printf("Please input command:\n");

    gets(command);

    for(count=0;count<20;count++){

      if(strcmp(command,s[count])==0){

        key=count;

      }

    }

    switch(key){

      case 0:

        printf("dir表示无参数:查看当前所在目录的文件和文件夹\n");

        break;

      case 1:

        printf("cd 目录名:进入特定的目录。\n");

        break;

      case 2:

        printf("md 目录名:建立特定的文件夹。dos下面习惯叫目录,win下面习惯叫文件夹\n");

        break;

      case 3:

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

        break;

      case 4:

        printf("cls 目录名:表示清屏功能\n");

        break;

      case 5:

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

        break;

      case 6:

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

        break;

      case 7:

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

        break;

      case 8:

        printf("copy表示复制命令,他的功能的复制信息\n");

        break;

      case 9:

        printf("我不会救你的\n");

        break;

      case 11:

        printf("哈哈\n");

        break;

      case 12:

        printf("呵呵\n");

        break;

      case 13:

        printf("嘻嘻\n");

        break;

     }

  }

  printf("you`ve quit the dos\n");

}

五.心得体会

虽然对C语言语法有一定的了解,但是要求在DOS命令程序中来实行还是有一定的困难,可能是初次接触这样的实验吧。还好在和同学的讨论之后,初步可以完成了该实验的编写,希望以后的实验课程可以越来越顺利。