zoukankan      html  css  js  c++  java
  • 实验一 命令解释程序的编写

    
    

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

                                                          班级:13级网络工程  姓名:麦嘉雯  学号:201306114130

    
    

    一、目的

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

    
    

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

    
    

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

    
    

    二、实验要求

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

     

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

     

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

    
    

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

    
    

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

    
    

    (5)用户输入QUIT退出

    
    

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

    三、实验方法、步骤以及实验结果

     

    源代码:
       #include <stdio.h>
        #include
    <stdlib.h>
        #include
    <string.h>
        int main(int argc, char *argv[]){
       
    char *cmd[11]={"dir","cd","md","rd","cls","date","time","ren","copy","quit","help"};
       
    char *str[11];
       
    while(1)
        {
            printf(
    "请输入提示符:>");
            gets(str);
               
    if(strcmp(str,cmd[0])==0)
                {
                    printf(
    "内部命令\n");
                    printf(
    "显示一个目录中的文件与子文件\n");
                    printf(
    "\n");
                }
               
    else if(strcmp(str,cmd[1])==0)
                {
                    printf(
    "内部命令·\n");
                    printf(
    "显示当前目录的名称或将其更改\n");
                    printf(
    "\n");
                }
               
    else if(strcmp(str,cmd[2])==0)
                {
                    printf(
    "内部命令\n");
                    printf(
    "创建一个目录\n");
                    printf(
    "\n");
                }
               
    else if(strcmp(str,cmd[3])==0)
                {
                    printf(
    "内部命令\n");
                    printf(
    "删除目录\n");
                    printf(
    "\n");
                }
               
    else if(strcmp(str,cmd[4])==0)
                {
                    printf(
    "内部命令\n");
                    printf(
    "清除屏幕\n");
                    printf(
    "\n");
                }
               
    else if(strcmp(str,cmd[5])==0)
                {
                    printf(
    "内部命令\n");
                    printf(
    "显示或者设置日期\n");
                    printf(
    "\n");
                }
               
    else if(strcmp(str,cmd[6])==0)
                {
                    printf(
    "内部命令\n");
                    printf(
    "显示或者设置系统时间\n");
                    printf(
    "\n");
                }
               
    else if(strcmp(str,cmd[7])==0)
                {
                    printf(
    "内部命令\n");
                    printf(
    "重命名文件夹\n");
                    printf(
    "\n");
                }
               
    else if(strcmp(str,cmd[8])==0)
                {
                    printf(
    "内部命令\n");
                    printf(
    "将至少一个文件复制到另一个位置\n");
                    printf(
    "\n");
                }
               
    else if(strcmp(str,cmd[9])==0)
                {
                   
    return 0;
                }
               
    else if(strcmp(str,cmd[10])==0)
                {
                    printf(
    "外部命令\n");
                    printf(
    "dir\t显示一个目录中的文件与子文件。\n");
                    printf(
    "cd\t显示当前目录的名称或将其更改。\n");
                    printf(
    "md\t创建一个目录。\n");
                    printf(
    "rd\t删除目录。\n");
                    printf(
    "cls\t清除屏幕。\n");
                    printf(
    "date\t显示或设置日期。\n");
                    printf(
    "time\t显示或设置系统时间。\n");
                    printf(
    "ren\t重新命名文件。\n");
                    printf(
    "copy\t将至少一个文件复制到另一个位置。\n");
                    printf(
    "help\t提供命令的帮助信息。\n");
                    printf(
    "quit\t退出。\n");
                    printf(
    "\n");
                }
               
    else
                {
                    printf(
    "该命令不是内部或外部命令,也不是可运行的程序或批处理文件。\n");
                    printf(
    "\n");
                }
        }
       
    return 0;
    }

    运行结果截图:





     

                  四、实验总结

        刚看到这个实验题目的的时候,我觉得无从下手,后来参照文档中所给的提示以及上网搜索的资料,慢慢的开始了编写。当我编写完以后,发现只有“dir”这个提示符可以显示,其他的都会引起程序自动关闭,我想了很久,还是不明白问题出在哪里。后来同学告诉我,是我的符号出现错误,修改以后,程序就可以正常运行了。这次是我第一次运用strcmp这个函数,感觉挺好用的。一开始的无从下手到后来的成功运行,真的感觉编程是个很好玩的东西;同时其中出现的问题更是让我知道很多错误都是一些小细节引起的,要注意细节。做完这个实验,我知道了做事要细心注意细节,我也知道我还有很多不足之处,需要慢慢的去学习、去改正。





  • 相关阅读:
    leetcode5 Longest Palindromic Substring
    leetcode17 Letter Combinations of a Phone Number
    leetcode13 Roman to Integer
    leetcode14 Longest Common Prefix
    leetcode20 Valid Parentheses
    leetcode392 Is Subsequence
    leetcode121 Best Time to Buy and Sell Stock
    leetcode198 House Robber
    leetcode746 Min Cost Climbing Stairs
    tomcat下使用druid配置jnid数据源
  • 原文地址:https://www.cnblogs.com/qing0715/p/4385965.html
Copyright © 2011-2022 走看看