• 实验一 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:内部命令 创建一个目录。
    ");
        }
        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:内部命令 重新命名文件。
    ");
        }
        else if(strcmp(str,cmd[8])==0)
        {
            printf("copy:内部命令 将至少一个文件复制到另一个位置。
    ");
        }
        else if(strcmp(str,cmd[9])==0)
        {
        printf("类型:外部命令
    "); 
        printf("dir	内部命令 显示一个目录中的文件和子目录。
    "); 
        printf("cd	内部命令 显示当前目录的名称或将其更改。
    "); 
        printf("md	内部命令 创建一个目录。
    "); 
        printf("rd	内部命令 删除目录。.
    "); 
        printf("cls	内部命令 清除屏幕。
    "); 
        printf("date	内部命令 显示或设置日期。
    "); 
        printf("time	内部命令 内部命令显示或设置系统时间。
    "); 
        printf("ren	内部命令 重新命名文件。
    "); 
        printf("copy	内部命令 将至少一个文件复制到另一个位置。
    "); 
        printf("help	外部命令 提供Windows命令的帮助信息。
    "); 
        printf("quit	外部命令 退出命令解释程序
    "); 
        printf("
    "); 
        printf("
    "); 
        }
        else if(strcmp(str,cmd[10])==0)
        { 
             printf("quit:886
    :");
             return;
        }
        else
        {
            printf("你输入错误的信息,请重新输入:
    ");
        }
        }
    
    }

    实验结果分析:

    1.用户进入界面后:

    2:输入help后显示:

    3:举例输入date:

    五:实验总结

      对于这次的实验,总体来说还是对之前C语言的知识有所遗忘。刚开始并不知道该如何下手,但上网查阅资料后便顺利了很多。

  • 相关阅读:
    用的springboot+mybatis plus,报错bean无法实例化
    coding使用
    drop表后仍占表空间解决办法
    oracle从零开始学习笔记 三
    oracle从零开始学习笔记 二
    录制简单的自动化测试工具SlikMobile初体验
    appium 等待页面元素加载
    sdk 更新的时连接不上dl-ssl.google.com解决办法
    oracle从零开始学习笔记
    oracle: tochar(sysdate,'D')函数
  • 原文地址:https://www.cnblogs.com/dzfep/p/4866635.html
Copyright © 2020-2023  润新知