实验一、认识DOS实验

专业 物联网工程  姓名 叶慧敏 学号 201306104139

一、 实验目的

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

2.原理分析及流程图

1)主要运用switch{}多分支选择方法实现实验要求。

2)定义二维数组,因为字符串要通过数组要实现,另外是多个字符串,因此需要用到二维数组。

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

#include<stdio.h>

#include<stdlib.h>

#include<String.h>

void main()

{

char str[30];

char cmd[][12]={"dir","cd","md","rd","cls","date","time","ren","copy","HELP","QUIT","\0"};

while(1){

printf("请输入显示符:");

gets(str);

if(strcmp(str,cmd[0])==0)

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

else if(strcmp(str,cmd[1])==0)

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

else if(strcmp(str,cmd[2])==0)

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

else if(strcmp(str,cmd[3])==0)

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

else if(strcmp(str,cmd[4])==0)

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

else if(strcmp(str,cmd[5])==0)

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

else if(strcmp(str,cmd[6])==0)

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

else if(strcmp(str,cmd[7])==0)

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

else if(strcmp(str,cmd[8])==0)

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

else if(strcmp(str,cmd[9])==0)

{

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

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

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

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

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

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

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

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

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

}

else if(strcmp(str,cmd[10])==0)

return;

else

printf("输入的信息有误,请重新输入:\n");

}

}

4.运行结果及分析

四、 实验总结

通过这次实验,练习了自己C语言的知识。长时间没有接触C语言,让自己发现知识薄弱的地方,懂得了定义字符串的方法,还有声明初始化字符串数组的时候要注意的地方。

认识DOS的更多相关文章

  1. 如何使用dos命令打开当前用户、当前日期、当前时间以及当前用户加当前时间?

    1.dos命令安装mysqld --stall.启动net start mysql.进入MySQL数据库mysql -uroot -p后,输入select user();当前用户 select cur ...

  2. 如何使用dos命令查看MySQL当前使用的数据库?

    1.dos命令安装mysqld --stall.启动net start mysql.进入MySQL数据库mysql -uroot -p后,输入select database(); 如图:

  3. 怎样在Dos里切换盘符

    一:在Dos里切换盘符 a:在电脑左下角右击显示图片;(我用的是win10系统,其他系统类似) b:点击运行,输入cmd; c:点击确定: d:输入盘符:(如f:) 或F: 只写字母,不写分号是不行的 ...

  4. Java在DOS命令下的运行及其API文档制作过程

    该文档主要描述java程序在DOS命令下的运行,以及一些常用的命令 常用DOS命令: d: 回车 盘符切换 dir(directory):列出当前目录下的文件以及文件夹 md (make direct ...

  5. 如何dos中查看当前MySQL版本信息?

    dos中MySQL安装服务成功--启动服务成功--登录MySQL成功后输入:select version();  如图:

  6. DOS下windows系统查看wifi密码

    DOS下windows系统查看wifi密码 首先,按win+R键,win键如下 弹出框中输入cmd 在弹出界面输入 netsh wlan show profiles 你可以看到你链接过的所有wifi名 ...

  7. 如何使用DOS命令(cd命令)

    如何使用DOS命令 DOS是Disk Operation System(磁盘操作系统)的简称,是个人计算机上的一类操作系统.它直接操纵管理硬盘的文件,一般都是黑底白色文字的界面.顾名思义,DOS主要是 ...

  8. dos命令

    一 .常用命令 1 dir无参数:查看当前所在目录的文件和文件夹./s:查看当前目录已经其所有子目录的文件和文件夹./a:查看包括隐含文件的所有文件./ah:只显示出隐含文件./w:以紧凑方式(一行显 ...

  9. dos 批处学习笔记

    dos 批处理@ 只显示命令结果echo 回显pause 暂停del 删除set 查看系统变量>nul 正确命令输入空洞2>nul 错误命令输入空洞dir 显示目录和文件&& ...

  10. 计算机常用dos命令

    一.简单的dos命令 win+R ------打开"运行"窗口 cmd ------回车进入"dos"命令窗口 ipconfig ------查看本机ip地址 ...

随机推荐

  1. 安装使用RESTful 框架SLIM方法

    相关框架: http://www.golaravel.com 是一个PHP框架,内置名为LUMEN的RESTful API框架,有中文文档, http://lumen.golaravel.com/do ...

  2. set_include_path — 设置 include_path 配置选项为当前脚本设置 include_path 运行时的配置选项。

    说明 string set_include_path ( string $new_include_path ) 为当前脚本设置 include_path 运行时的配置选项. 参数 new_includ ...

  3. MyCalView.php

    <html> <head> <title>我的计算器</title> <script language="javascript" ...

  4. MVP+RXJAVA+RecyclerView实现sd卡根目录下的所有文件中的照片加载并显示

    初学Rxjava,目前只能遍历加载指定目录下的所有文件夹中的照片,文件夹中如果还嵌套有文件夹目前还没找到实现方法. 先看mvp目录结构: 很抱歉,没有model. 接下来是view层的接口代码和pre ...

  5. javaScript去除空格或换行

    js 去掉空格.回车.换行 1 releaseDesc = releaseDesc.replace(/\ +/g,"").replace(/[\r\n]/g,"" ...

  6. Pots 分类: 搜索 POJ 2015-08-09 18:38 3人阅读 评论(0) 收藏

    Pots Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 11885 Accepted: 5025 Special Judge D ...

  7. 使用Texture2D创建Cubemap

    网上有很多,但大多使用Camera.RenderToCubemap接口,不能满足需求. 写了段代码可以载入Texture2D生成Cubemap(在Editor下运行): /// <summary ...

  8. Poj(1511),SPFA

    题目链接:http://poj.org/problem?id=1511 嗯,最后一次写SPFA了,以后就套模板了. 题意:给出n个点和n条有向边,求所有点到源点1的来回最短路之和(保证每个点都可以往返 ...

  9. MBB类似jquery.bxslider插件轮播效果

    首先,如图一:当打开页面是,产品出现了淡入淡出切换轮播状态,当鼠标点击左边的小图时,就会切换出相对应的大图,当鼠标移开的时候,这个轮播就会停止自动轮播,只有人工手动才能进行切换:是一个不错的体验! 如 ...

  10. C语言中的++和--

    这个问题是老生常谈的问题了,虽然诸多大牛都深恶痛绝的告诉所有人不要那样写,但这永远挡不住学校的老师和考试. 今天我们来辨析一下这个东西. 首先我们来名词辨析一下吧: ++i 这个叫   前自增 i++ ...