一、目的和要求

  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命令程序中来实行还是有一定的困难,可能是初次接触这样的实验吧。还好在和同学的讨论之后,初步可以完成了该实验的编写,希望以后的实验课程可以越来越顺利。

实验一 DOS命令解释程序的编写的更多相关文章

  1. DOS命令解释程序的编写

    实验一.DOS命令解释程序的编写 专业:物联网工程   姓名:黄淼  学号:201306104145 一. 实验目的 (1)认识DOS: (2)掌握命令解释程序的原理: (3)掌握简单的DOS调用方法 ...

  2. 关于dos命令行脚本编写

    dos常用命令另查 开始之前先简单说明下cmd文件和bat文件的区别:在本质上两者没有区别,都是简单的文本编码方式,都可以用记事本创建.编辑和查看.两者所用的命令行代码也是共用的,只是cmd文件中允许 ...

  3. 实验一DOS报告

    实验一.DOS命令解释程序的编写实验 13物联网  李名贵  201306104123 一.        实验目的 (1)认识DOS: (2)掌握命令解释程序的原理: (3)掌握简单的DOS调用方法 ...

  4. 实验一 命令解释程序cmd的编写

    #include<stdio.h>#include<stdlib.h>#include<string.h>#define N 30main(){ char str[ ...

  5. 实验一 cmd命令的编写

    一.目的和要求 1. 实验目的 (1)掌握命令解释程序的原理: (2)*掌握简单的DOS调用方法: (3)掌握C语言编程初步. 2.实验要求 编写类似于DOS,UNIX的命令行解释程序 (1)自行定义 ...

  6. 实验一、熟悉DOS命令

    实验一.熟悉DOS命令 实验一.熟悉DOS命令 一.        实验目的 1.从操作系统理论的观点来了解和掌握DOS有关用户接口的特点: 2.熟悉常用DOS操作命令(md.cd.rd.copy.m ...

  7. C#程序集系列01,用记事本编写C#,IL代码,用DOS命令编译程序集,运行程序

    本篇主要体验:编写C#,IL代码,用"VS2012开发人员命令提示"编译成程序集,并运行程序. □ C#文件编译为程序集 →在F盘创建as文件夹→在as文件夹下创建MyClass. ...

  8. system , DOS 命令

    其实C语言也可以控制电脑关机什么的啊,以前竟然无知的连这个都不知道.悲哀啊.让各路大牛尽情嘲笑啊.. #include<stdio.h> #include<stdlib.h> ...

  9. 【转载】DOS 系统和 Windows 系统有什么关系?为什么windows系统下可以执行dos命令?

    作者:bombless 因为不同的系统都叫 Windows ,这些系统在界面上也有一定连续性并且因此可能造成误解,所以有必要稍微梳理一下几个不同的 Windows 系统.首先是 DOS 上的一个图形界 ...

随机推荐

  1. T-SQL语句简易入门(第一课)

    在微软官方,有一篇介绍T-SQL语句的教程,非常好理解,完全可以帮助新手入门,了解常用SQL语句的使用语法,而且又不涉及较为复杂的操作.不用安装示例数据库AdventureWorks.下面是教程里内容 ...

  2. [转]RAID基础,RAID10与RAID01比较,RAID10与RAID5比较

    原文:http://blog.itpub.net/787018/viewspace-666280/ 文档内容3部分:1.基本的RAID级别介绍2.RAID10和RAID01的比较3.RAID10和RA ...

  3. linux开启telnet

    windows客户端如果通过cmd窗口连接到远程linux服务器,可以使用telnet: centos系统默认telnet 23端口是关闭的. 服务器本地使用nmap ip地址 -p 23 查看tel ...

  4. vue.js存储--localStorage

    //list例子:绑定从localStorage中读取的数据,动态添加list并监听将数据变化存储在localStorage中,绑定点击事件改变样式, 页面 data数据: input_name:'' ...

  5. 荒废了很久的java以及微信公众平台今天拿起来看了看:这里有很好的教程

    我的微信公众号刚刚起步: ,感兴趣可以关注一下. 关于java开发微信公众号有一个很好的教程博客:推荐一下:http://blog.csdn.net/lyq8479/article/details/8 ...

  6. 后缀数组:倍增法和DC3的简单理解

    一些定义:设字符串S的长度为n,S[0~n-1]. 子串:设0<=i<=j<=n-1,那么由S的第i到第j个字符组成的串为它的子串S[i,j]. 后缀:设0<=i<=n- ...

  7. SQL数据库中字段类型 与C#中的对应字段类型

    数据库中的字段类型和对应的C#中的对应字段类型 数据库                 C#程序int int32text stringbigint int64binary System.Byte[] ...

  8. 点餐系统Sprint1总结

    经过第一个阶段的冲刺,大家基本上都熟悉自己要做什么,并且把界面做了出来.通过这个阶段的冲刺,大家都学到了很多东西,团队更加默契,遇到不懂的都会提出来一起解决. 团队贡献分 148彭宏亮 20 150张 ...

  9. How to fix the conflict between ROS Python and Conda

    Problem: Ever since I have installed Conda, ROS does not seem to work. And predictably it is because ...

  10. nginx 日志变量含义

    log_format logstash "remote_addr | $time_local | $request | $status | $body_bytes_sent | " ...