• 实验报告一


    一、 实验目的

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

    2.流程图:

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

    #include<stdio.h>
    #include<string.h>
    main()
    {
    	char cmd[20][20]={"cd"," md","rd","dir", "cls", "date","time","ren","copy","help","quit"};
    	char str[20];
    	while(1)
    	{
    	    printf("输入字符:");
    	    gets(str);
         if(strcmp(str,cmd[0])==0)
    	{
    		printf("cd目录名:进入特定的目录
    ");
    	}
    	else if(strcmp(str,cmd[1])==0)
    	{
    		printf("md目录名:建立特定的文件夹,dos下面习惯叫目录,win下面习惯叫文件夹
    ");
    	}
    	else if(strcmp(str,cmd[2])==0)
    	{
    		printf("rd目录名:删除特定的文件夹
    ");
    	}
    	else if(strcmp(str,cmd[3])==0)
    	{
    		printf("dir表示无参数:查看当前所在的目录的文字和文件夹
    ");
    	}
    	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:表示文件改个名字,ren命令的格式是:ren源文件名的文件名
    ");
    	}
    	else if(strcmp(str,cmd[8])==0)
    	{
    		printf("copy:表示复制命令,把一个文件拷贝到另一个地方
    ");
    	}
    	else if(strcmp(str,cmd[9])==0)
    	{
    		printf("cd:进入特定的目录;md:建立特定的文件夹,dos下面习惯叫目录,win下面习惯叫文件夹;rd:删除特定的文件夹;dir:查看当前所在的目录的文字和文件夹;cls:清除屏幕;date:设置日期命令,功能是设置日期;time:系统时钟设置命令,功能:设置或显示系统时期;ren:表示文件改个名字,ren命令的格式是:ren源文件名的文件名;copy:表示复制命令,把一个文件拷贝到另一个地方;quit:退出
    ");
    
    	}
    	else if(strcmp(str,cmd[10])==0)
        return;
    	else
    	{
    		printf("输入有误,请重新输入:
    ");
    	}
    	}
    
    }
    4.运行结果

    
    
    
    四.实验总结:
    通过此次的实验内容,让我重新拾回了最初的C语言命令,在刚开始编译次程序的时候多少都会存在写遗忘了词汇,但经过与同学的交流学习最终得到正确的答案,并且让自己对此部分的内容更加难忘,所以说是很有意义的。

      

  • 相关阅读:
    【spring-boot】spring-boot 事物管理——之注解@Transactional
    【spring-boot】Spring-boot学习-helloWorld
    【Maven】failOnMissingWebXml
    【java基础领域】高内聚、低耦合理解
    Pascal's Triangle
    Remove Nth Node From End of List
    Valid Palindrome
    Longest Common Prefix
    Roman to Integer
    Palindrome Number
  • 原文地址:https://www.cnblogs.com/georgechou666/p/4866933.html
Copyright © 2020-2023  润新知