- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
命令解释程序的编写实验
实验一、命令解释程序的编写实验
专业 软件工程 姓名 谢永超 学号201006014117
实验目的
1. 实验目的
(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等。
实验方法、步骤及结果测试
本程序的总体设计主要运用一个程序调用txt文档进行对比,把txt文档调用进入自己设立的两个数组中,第一个数组放入一些代码命令,另一个数组放代码的解释,组成两个数组,当我们键盘输入对应的字符时,他就会和我的第一个数组命令字符进行对比,当我输入的字符和第一个数组命令一致时就会调用第二个数组的解释,否则就会报错,提示再次输入命令,当输入help命令,就会把程序所有的提示命令调用出来,方便使用者看,当我们输入quit命令就会退出程序。
主要的程序段
System.out.println(请输入显示符:);
BufferedReader input=new BufferedReader(new InputStreamReader(System.in));
s=input.readLine();FileReader fr1=new FileReader(txtfile);
BufferedReader br1=new BufferedReader(fr1);
String line1;
i=0;
a = 0;
b=0;
while((line1=br1.readLine())!=null){
if(i%2==0){
s2[a]=line1;
a++;
}
else{ s1[b]=line1;
b++;
}
i++;
}
br1.close();
fr1.close();
}
catch(IOException e){
e.printStackTrace();
System.out.println(e);
}
这一部分的程序是把txt文档的命令和解释文档分别输入到数组中,先定义数组a和b两个,当读到一个命令就会往数组中添加,每次记得a和b要加一下,增加一个位置
while(true){
Scanner reader=new Scanner(System.in);
System.out.println(请输入指令:);
String read=reader.nextLine();
boolean c=true;
for(j=0;js2.length;j++)
{
if(read.equals(s2[j])){
System.out.println(s1[j]);
c=false;break;}
}if(read.equals(help)){
for(k=0; ks1.length;k++){
if(s2[k]==null)
{
System.out.print();
}else{
System.out.println(s1[k]);
}
}
这段程序是help命令的调用,也是用一个for循环,把数组2的所有解释调用出来,当读完之后遇到null命令就会答应空字符,这样就可以看到一个完整的数组。
源码:
import java.util.*;
import java.io.*;
public class test1
{
public static void main(String args[])
{
File txtfile = new File(d:\\duomeiti.txt);
String[] s1 = new String[100];
String[] s2 = new String[100];
int k, j, a, i, b;
try
{
FileReader fr1 = new FileReader(txtfile);
BufferedReader br1 = new BufferedReader(fr1);
String line1;
i = 0;
a = 0;
b = 0;
while ((line1 = br1.readLine()) != null)
{
if (i % 2 == 0)
{
s2[a] = line1; a+
您可能关注的文档
- 合同解释规则本质上属于裁判规则探讨与研究.doc
- 合成氨生产厂变换工段DCS设计.doc
- 合理化建议2012.11.12.doc
- 合理化建议和改进技术创新管理办法.doc
- 合肥优派公司优化案例.doc
- 合肥八中高三第二次月考政治试题.doc
- 合肥四里河综合整治项目技术标.doc
- 合肥机场施工图设计计划.doc
- 合肥装饰设计专家分析装饰整体全过程.doc
- 合金元素对焊接性能的影响.doc
- Unit7Topic1-2022-2023学年七年级英语下册单元复习.docx
- 专题09几何综合题-2023年广东中考数学真题模拟题分类汇编(原卷版).docx
- 第3课太平天国运动(真题训练)-2021-2022学年八年级历史上册四件套.docx
- 七下期中专题03古诗文文阅读.docx
- 第12讲七年级上册期中考试总复习.docx
- 3.3中心对称(练习).doc
- 课题2酸和碱的中和反应第2课时(分层练习).docx
- 山西省吕梁市部分学校2024-2025学年高二上学期9月质量检测历史试卷.docx
- Unit2Ithinkthatmooncakesaredelicious.SectionB-2021-2022学年九年级英语课后培优练(人教版).doc
- 专题08固定短语搭配及词组百题练(最新名校期末精选)(原卷版)-2022-2023学年八年级英语下学期期末必考题型过关(牛津译林版).docx
文档评论(0)