zoukankan      html  css  js  c++  java
  • 命令解析程序的编写

      1 #include<stdio.h> 
      2 #include <stdlib.h> 
      3 # include<string.h> 
      4 main() 
      5 { 
      6     char cmd[20][20]={"dir","cd","md","rd","cls","date","time","ren", "copy","quit","help"}; 
      7     char str[10];  
      8     int i;  
      9     printf("Microsoft Windows XP [版本 5.1.2600]
    ");
     10     printf("<c> 版权所有 1985-2001 Microsoft Corp
    
    ");
     11     while(1){
     12         printf("C:Documents and Settingshskd>"); 
     13         gets(str); 
     14         strlwr(str);
     15         for(i=0;i<20;i++)
     16         { 
     17             { 
     18                 if(strcmp(str,cmd[0])==0) 
     19                 {
     20                     printf("类型:内部命令
    "); 
     21                     printf("显示一个目录中的文件和子目录。
    "); 
     22                     printf("
    "); 
     23                     printf("
    "); 
     24                     break; 
     25                 }
     26                 else if(strcmp(str,cmd[1])==0) 
     27                 {
     28                     printf("类型:内部命令
    "); 
     29                     printf("显示当前目录的名称或将其更改。
    "); 
     30                     printf("
    "); 
     31                     printf("
    "); 
     32                     break; 
     33                 }
     34                 else if(strcmp(str,cmd[2])==0) 
     35                 {
     36                     printf("类型:内部命令
    "); 
     37                     printf("创建一个新目录···
    "); 
     38                     printf("
    "); 
     39                     printf("
    "); 
     40                     break; 
     41                 }
     42                 else if(strcmp(str,cmd[3])==0) 
     43                 { 
     44                     printf("类型:内部命令
    "); 
     45                     printf("删除该目录....
    "); 
     46                     printf("
    "); 
     47                     printf("
    "); 
     48                     break; 
     49                 }
     50                 else if(strcmp(str,cmd[4])==0) 
     51                 {
     52                 /*printf("类型:内部命令
    "); 
     53                     printf("清屏···
    "); */
     54                     system("cls");
     55                     printf("
    "); 
     56                     printf("
    "); 
     57                     break; 
     58                 } 
     59                 else if(strcmp(str,cmd[5])==0) 
     60                 {
     61                     printf("类型:内部命令
    "); 
     62                     printf("显示或设置日期。
    "); 
     63                     printf("
    "); 
     64                     printf("
    "); 
     65                     break; 
     66                 } 
     67                 else if(strcmp(str,cmd[6])==0)
     68                 {
     69                     printf(" 类型:内部命令
    "); 
     70                     printf("内部命令显示或设置系统时间。
    "); 
     71                     printf("
    "); 
     72                     printf("
    "); 
     73                     break; 
     74                 }
     75                 else if(strcmp(str,cmd[7])==0) 
     76                 {
     77                     printf("类型:内部命令
    "); 
     78                     printf("重命名文件···
    "); 
     79                     printf("
    "); 
     80                     printf("
    "); 
     81                     break; 
     82                 }
     83                 else if(strcmp(str,cmd[8])==0) 
     84                 {
     85                     printf("类型:内部命令
    "); 
     86                     printf("将至少一个文件复制到另一个位置。
    "); 
     87                     printf("
    "); 
     88                     printf("
    "); 
     89                     break; 
     90                 } 
     91                 else if(strcmp(str,cmd[9])==0) 
     92                 { 
     93                     return 0;
     94                 } 
     95                 else if(strcmp(str,cmd[10])==0) 
     96                 {
     97                     //printf("类型:外部命令
    "); 
     98                     printf("DIR	内部命令 显示一个目录中的文件和子目录。
    "); 
     99                     printf("CD	内部命令 显示当前目录的名称或将其更改。
    "); 
    100                     printf("MD	内部命令 创建一个目录。
    "); 
    101                     printf("RD	内部命令 删除目录。.
    "); 
    102                     printf("CLS	内部命令 清除屏幕。
    "); 
    103                     printf("DATE	内部命令 显示或设置日期。
    "); 
    104                     printf("TIME	内部命令 内部命令显示或设置系统时间。
    "); 
    105                     printf("REN	内部命令 重新命名文件。
    "); 
    106                     printf("COPY	内部命令 将至少一个文件复制到另一个位置。
    "); 
    107                     printf("HELP	外部命令 提供Windows命令的帮助信息。
    "); 
    108                     printf("QUIT	外部命令 退出命令解释程序
    ");
    109                     printf("
    "); 
    110                     printf("
    "); 
    111                     break;
    112                 }
    113                 else if(strcmp(str,cmd[i])!=0){ 
    114                     printf("此命令不是内部或外部命令,也不是可运行的程序或批处理文件
    "); 
    115                     printf("
    "); 
    116                     break;
    117                 }
    118             }
    119             }
    120             }
    121  }

    能兼容大小写:

    输入正确命令:

    输入错误命令:

    退出:

  • 相关阅读:
    n皇后问题
    POJ2155 Matrix二维线段树经典题
    hiho一下 第六十六周
    hdu1754 I hate it线段树模板 区间最值查询
    hdu5481 Desiderium
    自增运算符
    hdu-1823 Luck and Love
    Oracle 函数大全
    对前台传过来的实体是否为空 进行为空校验的N种方法
    IOC和DI的区别详解
  • 原文地址:https://www.cnblogs.com/14fzf/p/5317657.html
Copyright © 2011-2022 走看看