实验-界面和代码
java实验报告
java实验报告Java实验报告实验名称:Java图形界面编程实验对象:Java初学者实验目的:通过实际操作掌握Java图形界面编程的基本知识和技巧实验过程:1. 实验准备:安装Java JDK开发环境,并准备好IDE工具(如Eclipse或IntelliJ IDEA)2. 创建工程:打开IDE工具,新建一个Java工程,并指定工程名和保存路径3. 创建界面:在工程上新建一个Java类,命名为"MainUI"4. 设计界面:在"MainUI"类中使用Swing或JavaFX等GUI库,设计界面布局和组件5. 添加事件监听:在"MainUI"类中添加事件监听器,使组件与逻辑代码进行关联6. 编写逻辑代码:在"MainUI"类中编写逻辑代码,实现界面交互和功能实现7. 编译运行:将工程编译成可执行文件,并运行程序,查看界面效果和功能是否符合预期8. 调试修复:根据实际运行情况,对代码进行调试和修复,确保程序的稳定性和正确性9. 测试验证:使用不同输入数据对程序进行测试,验证程序的鲁棒性和准确性10. 总结反思:对实验过程进行总结和反思,提出改进和优化的建议实验结果:通过实验,我成功创建了一个简单的Java图形界面程序,并实现了基本的交互和功能。
在界面设计方面,我使用了Swing库进行布局和组件的添加,通过事件监听器实现了按钮点击和文本框输入的监听。
在逻辑代码方面,我实现了简单的计算器功能,能够进行加减乘除等基本运算。
通过测试验证,程序运行稳定,结果准确。
实验心得:通过这次实验,我对Java图形界面编程有了更深入的了解和掌握。
我学会了使用Swing或JavaFX等库进行界面设计,以及如何添加事件监听器和编写逻辑代码。
通过实际操作,我发现编写图形界面程序相对于命令行程序更加复杂,需要考虑到用户的交互和界面布局,还需要注意代码的可读性和可维护性。
python图形用户界面实验报告
python图形用户界面实验报告本实验主要是介绍Python图形用户界面(GUI)的基本概念和使用方法,包括使用Python 中的Tkinter模块创建GUI应用程序的基本结构、常用控件和事件处理方式。
一、实验目的1.掌握Python图形用户界面(GUI)的基本概念和使用方法。
2.学习使用Python中的Tkinter模块创建GUI应用程序。
3.了解在Tkinter中使用控件和事件处理方式。
二、实验内容1.创建基本的GUI应用程序Python的Tkinter模块提供了一系列GUI控件,如Label、Button、Entry、Canvas、Menu等。
下面我们将介绍如何使用Tkinter创建一个基本的GUI应用程序。
代码如下:```from tkinter import *#创建主窗口root = Tk()#设置窗口标题root.title("我的第一个GUI程序")#设置窗口大小(宽x高)root.geometry('400x300')# 创建一个Label控件label = Label(root, text="欢迎来到Python世界!")# 将Label控件添加到主窗口label.pack()#进入消息循环root.mainloop()```上述代码中,我们首先导入了Tkinter模块,然后创建了一个名为root的主窗口。
接下来,我们设置了窗口的标题和大小,并创建了一个Label(标签)控件,文本为“欢迎来到Python 世界!”并将其添加到主窗口。
最后,我们调用root.mainloop()方法以便程序能够执行GUI循环。
2.GUI控件的使用下面介绍一些常用的Tkinter控件的用法。
其中,控件的属性和方法的详细说明可参考Python 官方文档或其它相关资料。
Label(标签)控件Label控件用来显示文本或图像。
如下是一个Label控件的例子:```label = Label(root, text="Hello, world!")label.pack()```Button(按钮)控件Button控件用来响应用户点击事件。
实验报告二用户界面与 Shell 命令
实验二用户界面与Shell 命令实验环境:Linux 环境实验目的:(1)掌握图形化用户界面和字符界面下使用 Shell 命令的方法。
(2)掌握 ls、cd 等 Shell 命令的功能。
(3)掌握重定向、管道、通配符、历史记录等的使用方法。
(4)掌握手工启动图形化用户界面的设置方法。
实验内容:1.图形化用户界面下的 Shell 命令操作操作要求1:显示系统时间,并将系统时间修改为2011 年9 月17 日零点。
操作过程:(1)启动计算机,以超级用户身份登录图形化用户界面;用户名为root。
(2)依次单击顶部面板的「应用程序」菜单=>「附件」=>「终端」,打开桌面环境下的终端工具。
(3)输入命令“date”,显示系统的当前日期和时间。
(4)输入命令“date 0917********”,屏幕显示新修改的系统时间。
在桌面环境的终端结果:(1)输入命令“date”显示系统当前日期为:2015年4月20号星期一 18:16:12.(2)输入命令“date 0917********”修改系统的时间为2011年9月17号零点。
操作要求2:切换为普通用户,查看 2011 年 9 月 17 日是星期几。
操作过程:(1)输入“su - stu”命令切换当前用户为普通用户 stu。
(2)输入命令“cal 2011”,屏幕上显示出 2011 年的日历,结果:由下图可以看出2011 年 9 月 17 日是星期天。
操作要求3:查看 ls 命令的-s 选项的帮助信息操作过程:方法一:(1)输入“man ls”命令,屏幕显示出手册页中 ls 命令相关帮助信息的第一页,介绍ls 命令的含义、语法结构以及-a、-A、-b 和-B 等选项的意义。
(2)使用 PgDn 键、PgUp 键以及上、下方向键找到-s 选项的说明信息。
(3)由此可知,ls 命令的-s 选项等同于--size 选项,以文件块为单位显示文件和目录的大小。
计算机操作系统实验课实验报告
实验报告实验课程: 计算机操作系统学生姓名:XXX学号:XXXX专业班级:软件2014年12月25日目录实验一熟悉Windows XP中的进程和线程 (3)实验二进程调度 (7)实验三死锁避免—银行家算法的实现 (16)实验四存储管理 (22)实验一熟悉Windows XP中的进程和线程一、实验名称熟悉Windows XP中的进程和线程二、实验目的1、熟悉Windows中任务管理器的使用。
2、通过任务管理器识别操作系统中的进程和线程的相关信息。
3、掌握利用spy++.exe来察看Windows中各个任务的更详细信息。
三、实验结果分析1、启动操作系统自带的任务管理器:方法:直接按组合键Ctrl+Alt+Del,或者是在点击任务条上的“开始”“运行”,并输入“taskmgr.exe”。
2、调整任务管理器的“查看”中的相关设置,显示关于进程的以下各项信息,并完成下表:表一:统计进程的各项主要信息3、启动办公软件“Word”,在任务管理器中找到该软件的登记,并将其结束掉。
再从任务管理器中分别找到下列程序:winlogon.exe、lsass.exe、csrss.exe、smss.exe,试着结束它们,观察到的反应是任务管理器无法结束进程,原因是该系统是系统进程。
4、在任务管理器中找到进程“explorer.exe”,将之结束掉,并将桌面上你打开的所有窗口最小化,看看你的计算机系统起来什么样的变化桌面上图标菜单都消失了、得到的结论 explorer.exe是管理桌面图标的文件(说出explorer.exe进程的作用)。
5、运行“spy++.exe”应用软件,点击按钮“”,切换到进程显示栏上,查看进程“explorer.exe”的各项信息,并填写下表:进程:explorer.exe 中的各个线程6、注意某些线程前有“+”,如图所示:,说明二者之间的差异前有“+”其器线程下有窗口。
四、心得体会通过本次实验,我了解到了windows系统中进程的管理与操作,我了解了如何切出任务管理器,任务管理器应用与其他与进程相关的知识,明白了有些系统程序不能够关闭,系统中的进程与线程虽然很多,但是其中有许多关联,只要弄清楚其中的关联那么就能够运用好进程与线程,达到我们的目的。
《Android应用程序设计》实验报告 (2)
实验1 搭建开发环境与第1个Android程序【实验目的】1.熟悉Android开发环境的搭建2.掌握用Eclipse开发Android程序的流程【实验内容】一、搭建Android开发环境按照下面的步骤,完成Android环境的搭建。
1.1 JDK的安装及配置1.根据电脑的系统位数安装软件包里的JDK,安装目录设置为d:\jdk1.x。
(d为你的安装盘,可以设为任意盘;x为你安装的jdk版本)2. WIN7系统环境变量设置(1)环境变量设置一(2)环境变量设置二(3)环境变量设置三(4)环境变量设置四1)创建新的环境变量。
名:JA V A_HOME,值:x:\jdk1.72)修改系统变量Path,在path变量值前添加这段:%JA V A_HOME%\bin;3)修改系统变量classpath,值为:.;%JA V A_HOME%\lib\dt.jar;%JA V A_HOME%\lib\tools.jar;(5)环境变量设置五1)测试开发环境。
在开始->搜索程序和文件里输入cmd.exe,打开cmd。
输入cd c:\ 命令进入c盘根目录。
2)在c盘根目录下使用记事本编写源文件,并存为java文件。
public class MyApp {public static void main (String[] args) {System.out.println(“我能学好Java语言!”);} }3)使用javac命令编译程序,在cmd命令行输入:javac MyApp.java生成class类型文件。
4)使用java命令运行程序,在cmd命令行输入:java MyApp如果在命令行显示结果“我能学好Java语言!”,则JDK环境配置成功。
1.2 Android SDK的安装及配置1. 解压adt-bundle-windows-x86_64-20131030.zip文件,里面的SDK是免安装版。
VB实验--------所有实验题目
实验题目总体要求:本学期的所有的实验题目,希望同学们按如下步骤认真做,(1)先画出处理界面(窗体);(2)再给出处理步骤,(3)写出程序代码:可参考下面的例题:例如:设计程序,求1+2+3+...+N 的和值。
其处理过程是:(一)设计界面(在纸上画出界面,并注明各控件的名称):(二)处理步骤:单击命令按钮,按以下步骤处理(1)定义3个变量:N ,s ,x ,分别用于存放:输入的数值,和值,控制循环(2)将文本框1的值,提供给变量N ;(3)s=0(累加前,将变量s 初始化为0);(4)X=1(设置循环的开始值)(5) 当X<=N 时 重复执行S=s+xX=X+1(5)在文本框2中显示和值S(三)编写有关的代码:Private Sub Command1_Click()Dim n%,s%,x%N=val(text1.text)S=0X=1Do while x<=nS=s+xX=x+1LoopText2=sEnd Sub文本框1:TEXT1 文本框2:TEXT21:Command1标签1:Label1 标签2:实验一:用语言或流程图描述处理步骤(1次)1.判定一个数X是否是偶数的处理步骤;2.写出求5的阶乘的计算步骤;3.写出求1+2+3+...... +100的计算过程;4.写出计算1!+2!+3!+4!+......+20!的计算步骤;5.写出求一元二次方程解的处理步骤;6.给出将三个整数A,B,C按从小到大的顺序排列的处理步骤;实验二:表达式及其运算的实现(1次)1.设计一个程序,完成利用文本框输入任意两个数的乘法运算,并显示计算结果。
2.进一步完善程序,完成利用文本框输入任意两个数的加法、减法、乘法、除法运算,并显示计算结果,3.再进一步,改进,完成,利用随机函数,产生任意两个100到200之间的整数,并完成两个数的加法、减法、乘法、除法运算,并显示计算结果。
4.求方程AX+B=0的解。
字符显示实验报告
一、实验目的1. 熟悉计算机字符显示的基本原理。
2. 掌握字符显示编程的基本方法。
3. 了解字符显示在计算机图形界面设计中的应用。
二、实验原理计算机字符显示是计算机输出设备的基本功能之一。
它通过将字符编码转换为字符图形,并在屏幕上显示出来,实现信息的输出。
字符显示主要包括以下三个步骤:1. 字符编码:将字符转换为计算机可识别的编码,如ASCII码、GB2312等。
2. 字模转换:将字符编码转换为字符图形,即字模。
3. 显示输出:将字符图形输出到屏幕上。
三、实验内容1. 实验环境:Windows操作系统、C++编程环境。
2. 实验步骤:(1)创建一个新的C++项目。
(2)编写字符显示程序,实现以下功能:① 输入字符编码。
② 将字符编码转换为字符图形。
③ 在屏幕上显示字符图形。
3. 实验代码:```cpp#include <iostream>#include <windows.h>using namespace std;// 定义字模数组,存储字符图形unsigned char font[] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 空格 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, 0x00, 0x00, // 字母A // ... 其他字符的字模数据};// 字符显示函数void DisplayChar(unsigned char ch) {int width = 8; // 字模宽度int height = 16; // 字模高度int i, j;// 创建位图BITMAP bmp;bmp.bmWidth = width;bmp.bmHeight = height;bmp.bmWidthBytes = width;bmp.bmBits = new BYTE[bmp.bmWidthBytes bmp.bmHeight];// 初始化位图for (i = 0; i < bmp.bmHeight; i++) {for (j = 0; j < bmp.bmWidthBytes; j++) {bmp.bmBits[i bmp.bmWidthBytes + j] = 0;}}// 绘制字符图形for (i = 0; i < height; i++) {for (j = 0; j < width; j++) {if (font[(ch - 32) height + i] & (0x80 >> j)) {bmp.bmBits[i bmp.bmWidthBytes + j] = 0xFF;}}}// 创建设备上下文HDC hdc = GetDC(NULL);HDC memDC = CreateCompatibleDC(hdc);// 创建位图句柄HBITMAP hBitmap = CreateCompatibleBitmap(hdc, width, height); SelectObject(memDC, hBitmap);// 绘制位图BitBlt(memDC, 0, 0, width, height, hdc, 0, 0, SRCCOPY);// 清理资源DeleteObject(hBitmap);DeleteDC(memDC);ReleaseDC(NULL, hdc);// 输出字符cout << ch << endl;}int main() {unsigned char ch;cout << "请输入一个字符:";cin >> ch;DisplayChar(ch);return 0;}```4. 运行程序,输入一个字符,观察屏幕上是否显示对应的字符图形。
现代交换技术综合实验报告
综合实验报告( 2010 -- 2011年度第二学期)名称:现代交换技术综合实验题目:现代交换技术实验院系:电信系班级:通信0803班学号: 9学生:雷玉芬指导教师:鲍慧、项洪印、丽娟、智雄设计周数: 2周成绩:日期:2011 年 6月MGCP IAD 接入实验一、实验的目的与要求了解MGCP IAD接入SoftX3000的数据的配置,并实现各用户之间的呼叫。
二、正文1.实验原理IAD是基于IP的VoIP(Voice over IP)/ FoIP(Fax over IP)的媒体接入网关。
可提供基于IP网络的高效、高质话音服务,为企业、小区、公司等提供小容量VoIP/FoIP解决方案。
IAD属于媒体接入层,是一种小容量的综合接入网关,提供语音和数据的综合接入能力。
在网络位置中更靠近最终用户,无专门的机房。
提供丰富的上行和下行接口,满足用户的不同需求,下图是IAD典型的组网图:MGCP(Media Gateway Control Protocol)协议是一个分布式IP网关系统的部协议,用于控制来自外部呼叫控制单元的IP语音(VoIP)网关。
从本质上说MGCP是一个主/从协议,网关需要执行媒体网关控制器发出的命令。
IAD采用MGCP协议与SoftX3000对接典型组网如图所示:MGCP IAD对接实验程序流程与配置解释实验配置流程图如下:硬件配置是对设备进行相关信令、话音、控制信息、业务数据等之前必须要做的工作,这好比我们要组装一台电脑,要把CPU、网卡、显示器等等一系列硬件通过一定的规则把电脑组装起来,但这样装起来的电脑是不能使用的,因为这样的电脑没有操作系统,没有加电,没有应用软件。
但是在使用电脑之前我们必须把这些硬件正确的装配起来。
硬件数据配置和本局数据配置是整个配置流程的最前端,只有完成了这两项配置工作,下面的协议配置、网关配置、业务数据配置等等才能生效。
硬件配置流程如下“数据配置是对呼叫源、段、计费方式等进行配置。
《人机交互技术》实验一
《⼈机交互技术》实验⼀《⼈机交互技术》实验报告软件091班王晶092543实验⼀图形⽤户界⾯的设计⼀实验⽬的和要求1) 熟悉图形⽤户界⾯的设计原则2)利⽤⼀种设计⼯具完成图形化的⽤户界⾯设计⼆预备知识图形⽤户界⾯⼜称为WIMP界⾯,由窗⼝(windows)、图标(icons)、菜单(menu)、指点设备(pointing device)四位⼀体,形成桌⾯(desktop) ,如图所⽰。
图形⽤户界⾯是当前⽤户界⾯的主流,⼴泛应⽤于各档台式微机和图形⼯作站。
图形⽤户界⾯的共同特点是以窗⼝管理系统为核⼼,使⽤键盘和⿏标器作为输⼊设备。
窗⼝管理系统除了基于可重叠多窗⼝管理技术外,⼴泛采⽤的另⼀核⼼技术是事件驱动(event-driven)技术。
WIMP界⾯可看作是第⼆代⼈机界⾯,是基于图形⽅式的⼈机界⾯。
在WIMP界⾯中,⼈被称为⽤户,⼈机通过对话进⾏⼯作。
⽤户只能使⽤⼿这⼀种交互通道输⼊信息,通过视觉通道获取信息。
在WIMP界⾯中,界⾯的输出可以为静态或动态的⼆维图形或图像等信息。
这种⽅式能同时输出不同种类的信息,⽤户也可以在⼏个⼯作环境中切换⽽不丢失⼏个⼯作之间的联系,通过菜单可以执⾏控制型和对话型任务。
由于引⼊了图标、按钮和滚动条技术,⼤⼤减少键盘输⼊,提⾼了交互效率。
基于⿏标和图形⽤户界⾯的交互技术极⼤地推动了计算机技术的普及。
(1)图形⽤户界⾯的三个重要思想1)桌⾯隐喻(desktop metaphor)指在⽤户界⾯中⽤⼈们熟悉的桌⾯上的图例清楚地表⽰计算机可以处理的能⼒。
隐喻的表现⽅法:静态图标、动画、视频2)所见即所得(What Y ou See Is What Y ou Get,WYSIWYG)显⽰的⽤户交互⾏为与应⽤程序最终产⽣的结果是⼀致的。
3)直接操纵(direct manipulation)直接操纵是指可以把操作的对象、属性、关系显式地表⽰出来,⽤光笔、⿏标、触摸屏或数据⼿套等指点设备直接从屏幕上获取形象化命令与数据的过程。
idle的实验报告
idle的实验报告Idle的实验报告一、引言Idle是一种基于Python的集成开发环境(IDE),它提供了一个用户友好的界面和强大的编程工具,帮助开发者更轻松地编写、调试和运行Python代码。
本实验旨在探索Idle的功能和特点,以及它在Python编程中的应用。
二、Idle的界面和功能Idle的界面简洁明了,主要分为菜单栏、工具栏、编辑器窗口、交互式解释器窗口和输出窗口。
菜单栏提供了各种功能选项,如文件管理、代码编辑、调试和运行等。
工具栏则提供了常用的快捷操作按钮,方便用户快速访问常用功能。
Idle的编辑器窗口支持多标签页,可以同时编辑多个Python文件。
它具有自动缩进、语法高亮和代码补全等功能,大大提高了编程效率。
交互式解释器窗口则可以实时运行Python代码,并显示结果。
输出窗口用于显示程序的输出结果和错误信息。
三、Idle的特点和优势1. 用户友好:Idle的界面简单直观,适合初学者快速上手。
它提供了丰富的文档和教程,帮助用户理解Python语法和编程概念。
2. 调试功能:Idle内置了调试器,可以逐行执行代码并监控变量的值变化。
这对于定位和修复程序中的错误非常有帮助。
3. 扩展性:Idle支持插件扩展,用户可以根据自己的需求添加各种功能和工具。
这使得Idle可以适应不同的编程任务和项目。
4. 跨平台:Idle可以在多个操作系统上运行,包括Windows、MacOS和Linux等。
这使得开发者可以在不同的环境中无缝切换和共享代码。
四、Idle在Python编程中的应用Idle作为Python的官方开发工具,广泛应用于Python编程的各个领域。
以下是Idle在几个常见应用场景中的应用示例:1. 学习和教学:Idle的用户友好界面和丰富的教程使其成为学习Python的理想选择。
学生可以通过Idle编写和运行Python代码,深入理解编程概念和语法。
2. 脚本开发:Idle提供了强大的编辑和调试功能,适用于快速开发和测试Python脚本。
人机交互技术课后实验报告
人机交互技术课后实验报告一、实验目的本次人机交互技术课程的实验旨在加深学生对理论知识的理解,并通过实践操作掌握人机交互的基本方法和技巧。
通过对人机交互界面的设计、实现和评估,培养学生的创新思维和解决实际问题的能力。
二、实验内容1. 界面设计:根据给定的交互场景,设计一个用户友好的人机交互界面。
2. 技术实现:使用编程语言和交互设计工具,将设计转化为实际的交互系统。
3. 系统评估:通过用户测试,收集反馈信息,评估交互系统的有效性和用户体验。
三、实验过程1. 设计阶段:首先,我们根据实验要求,分析用户需求和使用场景,确定界面布局、交互流程和功能需求。
在设计过程中,我们充分考虑了用户的易用性和界面的美观性。
2. 实现阶段:我们选用了Python语言和Tkinter库来实现交互界面。
通过编写代码,我们实现了界面的布局、事件处理和数据交互等功能。
3. 评估阶段:在系统实现后,我们邀请了多位用户进行测试,并收集了他们的使用反馈。
根据用户的意见,我们对界面进行了优化,提高了系统的易用性和交互效率。
四、实验结果通过本次实验,我们成功设计并实现了一个人机交互系统。
系统界面简洁明了,功能齐全,用户反馈良好。
在评估过程中,我们发现并解决了一些设计和实现中的问题,进一步提升了系统的用户体验。
五、实验总结本次实验不仅巩固了我们在人机交互技术方面的理论知识,而且提高了我们的实践操作能力。
通过设计、实现和评估交互系统,我们更加深刻地理解了人机交互的重要性和复杂性。
在未来的学习和工作中,我们将继续探索和实践,以期达到更高的专业水平。
六、实验建议为了进一步提高实验效果,我们建议:1. 在设计阶段,可以采用更多的用户研究方法,更深入地了解用户需求。
2. 在实现阶段,可以尝试使用更多的编程语言和工具,以适应不同的交互场景。
3. 在评估阶段,可以引入更多的定量分析方法,更准确地评估系统的性能。
七、参考文献[1] 人机交互设计原理与实践. 张三,李四. 电子工业出版社,2020.[2] 用户体验的度量与评估. 王五. 清华大学出版社,2019.八、附录附录中包含实验过程中使用的所有代码、界面设计图和用户测试反馈表格等相关资料。
软件测试实验报告(测试用例 代码 截图)
软件测试实验报告(测试用例代码截图)计算机软件测试技术实验报告系别电子信息系专业计算机科学与技术班级学号姓名指导教师万聪2010年12月19月实验一黑盒测试用例设计一(实验内容:1( 三角形问题的等价类测试和边界值分析测试2( NextDate()函数决策表法测试二(实验要求:给出测试用例和测试结果三(实验步骤及结果:3.1(三角形)实验代码(c)#include<stdio.h> #include<stdlib.h>int a=0,b=0,c=0;void shuru();void panduan(int a1,int b1,int c1);void main(){char se;shuru();panduan(a,b,c);while(1){printf("是否要继续y or n :");scanf("%c",&se);if(se=='\n') scanf("%c",&se);switch(se){case 'y':shuru();panduan(a,b,c);break;case 'n':return;}}}void shuru(){printf("Please enter 三角形三边 (a,b,c)\n"); scanf("%d,%d,%d",&a,&b,&c);while((a<1||a>100)||(b<1||b>100)||(c<1||c>100)){if(a==0||b==0||c==0) printf("边长不能为0\n");else if(a<0||b<0||c<0) printf("边长不能为负\n");else printf("Please enter 1-100之间的整数\n");scanf("%d,%d,%d",&a,&b,&c);}}void panduan(int a1,int b1,int c1) {int m1=a1+b1;int m2=a1+c1;int m3=b1+c1;if(a1>=m3||b1>=m2||c1>=m1) printf("非三角形\n");else if(a1!=b1&&a1!=c1&&b1!=c1) printf("一般三角形\n");else if((a1==b1&&b1!=c1)||(a1==c1&&a1!=b1)||(c1==b1&&a1!=c1)) printf("等腰三角形\n");else if(a1==b1&&b1==c1) printf("等边三角形\n"); }3.2测试用例和结果(反映在图中)测试用例输入a,b,c 输出1 4,5,6 一般三角形2 2,3,6 非三角形3 4,4,7 等腰三角形4 6,6,6 等边三角形5 4,0,6 边长不能为06 4,-5,6 边长不能为负7 101,101,101 请输入1-100之间的整数图形结果:3.3(NextDate())实验代码(c)#include<stdio.h>#include<stdlib.h>#include<time.h>void main(){int year;int month,day;int leap;//标志是闰年还是平年,为1时是闰年,为2时是平年time_t t;//本来以下是用来判断格式输入是否正确的,但是结果不理想struct tm stm;//Awhile(1){//循环测试printf("请输入年(yyyy)/月(mm)/日(dd)\n");scanf("%d/%d/%d",&stm.tm_year,&stm.tm_mon,&stm.tm_mday);//B year=stm.tm_year;month=stm.tm_mon;day=stm.tm_mday;//Ct=mktime(&stm);//Dprintf("*****输出结果*****\n");if(t!=-1)//E有问题,不管输入格式是什么,t永远是-1{printf("输入的日期时间格式出错!\n");continue;}if(year%4==0)//年份判断{if(year%100==0){if(year%400==0){leap=1;printf("%ld年%d月%d日是闰年\n",year,month,day);}else{leap=2;printf("%ld年%d月%d日是平年\n",year,month,day); }}else{leap=1;printf("%ld年%d月%d日是闰年\n",year,month,day); }}else{leap=2;printf("%ld年%d月%d日是平年\n",year,month,day); }if(month==2){if(leap==1){printf("该月有29天\n");if(day>29){printf("对不起!您输入的日期超出该月范围\n"); continue;}else if(day==29){month=month+1;day=1;}else day=day+1;}if(leap==2){printf("该月有28天\n");if(day>28){printf("对不起!您输入的日期超出该月范围\n"); continue;}else if(day==28){month=month+1;day=1;}else day=day+1;}}else if(month==4||month==6||month==9||month==11){printf("该月有30天\n");if(day>30){printf("对不起!您输入的日期超出该月范围\n"); continue;}else if(day==30){month=month+1;day=1;}else day=day+1;}else{printf("该月有31天\n");if(day>31){printf("对不起~超出该月范围\n");continue;}else if(day==31){if(month==12&&day==31){year=year+1;month=1;day=1;}else{month=month+1;day=1;}}else day=day+1;}printf("NEXT日期:%ld年%d月%d日\n",year,month,day); }}3.4测试用例和结果(反映在图中)决策表测试用例 month day year 预期输出Test1~3 6 16 2001 2001/6/17Test4 6 30 2001 2001/7/1Test5 6 31 2001 对不起~超出该月范围Test6~9 1 17 2010 2010/1/18Test10 1 31 2013 2013/2/1Test 11~14 12 31 2010 2010/1/1Test15 2 28 2004 2004/2/29Test16 2 29 2004 2004/3/1Test17 2 28 2001 2001/3/1Test18 2 30 2001 对不起~超出该月范围界面效果:实验二白盒测试用例设计一(实验内容:求解一元二次方程程序控制流测试二(实验要求:给出控制流测试用例和测试结果三(实验步骤及结果:3.1实验代码(c)#include<stdio.h>#include<stdlib.h>#include<math.h>void main(){float a,b,c,x,y;float mid,x1,x2;y=a*x*x+b*x+c;printf("*************************************\n"); printf("二元一次方程的求解问题\n");printf("**************************************\n"); while(1){printf("请输入y方程中参数a,b,c: \n");scanf("%f,%f,%f",&a,&b,&c);if(a!=0){mid=b*b-4*a*c;if(mid>0){x1=(-b+sqrt(mid))/(2*a);x1=(-b-sqrt(mid))/(2*a);printf("该方程有两个解:x1=%f,x2=%f\n",x1,x2);//printf("y=(%f*%f*%f)+(%f*%f)+(%f)\n",a,x1,x1,b,x1,c);//printf("y=(%f*%f*%f)+(%f*%f)+(%f)\n",a,x2,x2,b,x1,c);}if(mid==0){x1=-b/(2*a);x2=x1;printf("该方程两个解相同:x1=x2=%f\n",x2);printf("y=(%f*%f*%f)+(%f*%f)+(%f)\n",a,x1,x1,b,x1,c);}if(mid<0){printf("该方程没有解\n");}}else printf("该方程不是二元方程,可能是一元一次方程\n");}}3.2测试用例和结果(反映在图中)测试用例 x,y,z a!=0 mid>0 mid==0 输出结果1 2,5,3 真真假该方程有两个解2 1,2,1 真假真该方程有两个相同解3 4,2,1 真假假该方程没有解4 0,2,1 假该方程不是二元方程,可能是一元一次方程图形结果:实验三基于缺陷模式的软件测试一(实验内容:C++语言、Java语言缺陷模式测试 (2学时) 二(实验要求:给出测试用例和测试结果三(实验步骤及结果:3.1实验代码(java)package hl.fengye.tt;public class base{//没必要的方法调用,System.exit()是没有必要的,应该抛出异常public String square(String x){try{int y=Integer.parseInt(x.toLowerCase());return y*y+"";}catch(NumberFormatException e){e.printStackTrace();System.exit(1);return "";}}//显示垃圾回收(缺陷)public String multiply(String x,int n){if(n<=0) return "";StringBuffer buf=new StringBuffer();while(n-->0){buf.append(x);}return buf.toString();}public String multiplyGc(String x,int n){ System.gc();//显示运行结果return multiply(x,n);}//字符串的低效操作(连接)public void connection(){String filed="东北大学秦皇岛分校 4080420 黄磊"; //this is badString s="";//System.out.print(s);//Startfor(int i=0;i<filed.length();++i){s=s+filed.charAt(i);//追加}System.out.print(s+'\n');//Stop1}public void connection2(){String filed="东北大学秦皇岛分校 4080420 黄磊";//this is betterString s="";StringBuffer buf=new StringBuffer();for(int i=0;i<filed.length();++i){buf.append(filed.charAt(i));}String ss=buf.toString();System.out.print(ss+'\n');//Stop2}public static void main(String[] args) {String h;base pp=new base();h=pp.square("100");System.out.print(h+"\n");String s="hello word!";h=pp.multiply(s, 2);//System.out.print(h+"\n");h=pp.multiplyGc(s,2);System.out.print(h+"\n");//以纳秒为单位计算的:long startTime = System.nanoTime();//获取当前时间pp.connection();long endTime = System.nanoTime();System.out.println("程序运行时间:"+(endTime-startTime)+"ms");long startTime2 = System.nanoTime();//获取当前时间pp.connection2();long endTime2 = System.nanoTime();System.out.println("程序运行时间:"+(endTime2-startTime2)+"ms"); }}3.2测试用例和结果(反映在图中)显示垃圾回收部分:测试用例输入String s ,int n 输出结果1 hello word !,2 hello word! hello word!2 ni hao ,1 ni hao3 love you ,0 (null)图形显示:低效字符串操作部分:测试用例输入String s 输出时间bad(ms) good(ms)1 hl 441694 271302 hello word 477785 378673 东北大学秦皇岛分校 4080420 黄磊 456245 392444 (空格) 313135 51604部分图形展示:实验四系统测试一(实验内容:数据库应用系统性能测试二(实验要求:给出响应时间、吞吐量测试用例和结果三(实验步骤及结果:3.1实验代码(java)import java.sql.Connection;import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement;public class huanglei {/*** @param args* @throws Exception*/public void execute() throws Exception{Class.forName("com.mysql.jdbc.Driver");Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","root");con.setAutoCommit(false);Statement st = con.createStatement();//st.execute("create table city (name varchar(20) not null)");for(int i = 100;i>0;i--){String str = "insert into city values('city"+i+"','huangeli','hebei')";System.out.println(str);st.addBatch(str);}//rs='select * from city';st.executeBatch();mit();}public static void main(String[] args) {// TODO Auto-generated method stubtry {new Luncher().execute();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}}3.2测试用例和结果(反映在图中)测试用例线程数循环次数响应时间(seconds)吞吐结果1 100 10 1 592.002/minute2 50 5 1 293.232/minute1 100 102 586.61/minute图形展示:实验总结:通过这些课时的实验,了解了一些软件测试的基本含义,学会了一些基本测试步骤的设计和用例的构造。
java实验报告实验六Java图形用户界面.docx
信息工程学院1JaVa程序设计实习报告JAVA图形用户界面实验六JaVa图形用户界面1. 实验目的(1)掌握图形用户界面基本组件。
(2)了解如何使用布局管理器对组件进行管理。
(3)掌握JaVa事件处理机制。
2. 实验内容实验题1编写一个模拟计算器的程序,使用面板和网格布局,添加一个文本框,10个数字按钮(0-9) , 4个加减乘除按钮,一个等号按钮,一个清除按钮,要求将计算公式和结果显示在文本框中。
运行结果:_•小程序亘看器:PaClCageI.Calculator.classI实验报告的内容与格式按任课教师的要求书写。
加法:主要代码:PriVate Void in itComp Onen ts() {jButt on1 = :new javax.swing.JButton();jButt on2 = :new javax.swing.JButton();jButt on3 = :new javax.swing.JButton();jButt on4 = :new javax.swing.JButton();jButt on5 = :new javax.swing.JButton();jButt on6 = :new javax.swing.JButton();jButt on7 = :new javax.swing.JButton();jButt on8 = :new javax.swing.JButton();jButt on9 = :new javax.swing.JButton();jButto n10 =new javax.swing.JButton();jButto n11 =new javax.swing.JButton();jButto n12 =new javax.swing.JButton();jButto n13 =new javax.swing.JButton();jButto n14 =new javax.swing.JButton();jButto n15 =new javax.swing.JButton();jTextField1 =new javax.swing.JTextField();SetStUb( null ); jButton1 .setText( "3" );jButton1 .addActionListener( new java.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent evt) {jButton1ActionPerformed(evt); }});jButton2 .setText( "1" );jButton2 .addActionListener( new java.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent evt) {jButton2ActionPerformed(evt); }});jButton3 .setText( "5" );jButton3 .addActionListener( new java.awt.event.ActionListener() {public voidactionPerformed(java.awt.event.ActionEvent evt) { jButton3ActionPerformed(evt);}});jButton4 .setText( "2" );jButton4 .addActionListener( new java.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent evt) {jButton4ActionPerformed(evt); }});jButton5 .setText( "6" );jButton5 .addActionListener(newjava.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent evt) {jButton5ActionPerformed(evt); }});jButton6 .setText( "8" );jButton6 .addActionListener( newjava.awt.event.ActionListener() {public voidactionPerformed(java.awt.event.ActionEvent evt) {jButton6ActionPerformed(evt); }});jButton7 .setText( "4" );jButton7 .addActionListener( newjava.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent evt) {jButton7ActionPerformed(evt); }});jButton8 .setText( "7" );jButton8 .addActionListener( newjava.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent evt) {jButton8ActionPerformed(evt); }});jButton9 .setText( "0" );jButton9 .addActionListener( newjava.awt.event.ActionListener() {public voidactionPerformed(java.awt.event.ActionEvent evt) {jButton9ActionPerformed(evt); }});jButton10 .setText( "9" );jButton10 .addActionListener( new java.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent evt) { jButton10ActionPerformed(evt);}});jButton11 .setText( "\u00f7" );jButton11 .addActionListener( new java.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent evt) {jButton11ActionPerformed(evt); }});jButton12 .setText( "\u00d7" );jButton12 .addActionListener( new java.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent evt) {jButton12ActionPerformed(evt); }});jButton13 .setText( "-" );jButton13 .addActionListener( new java.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent evt) {jButton13ActionPerformed(evt);});jButton14 .setText( "+" );jButton14 .addActionListener( newjava.awt.event.ActionListener() {public voidactionPerformed(java.awt.event.ActionEvent evt) {jButton14ActionPerformed(evt);}});jButton15 .setText( "=" );jButton15 .addActionListener( newjava.awt.event.ActionListener() {public voidactionPerformed(java.awt.event.ActionEvent evt) {jButton15ActionPerformed(evt);}});实验题2 编写一个程序,有一个窗口,该窗口为BorderLayout 布局。
实验报告GUI程序设计
实验报告GUI程序设计1.引言GUI(Graphical User Interface,图形用户界面)是计算机系统中用户与计算机之间进行交互的一种方式,它使用了图形和图标等视觉元素来代替传统的文本命令行界面。
在本次实验中,我们学习了GUI程序设计的基本原理和开发方法,并使用Python语言编写了一个简单的GUI程序。
2.实验目的通过本次实验,我们的主要目的是学习以下几个方面的内容:-了解GUI程序设计的基本原理和概念;- 熟悉Python语言中的GUI开发库;-掌握使用GUI开发工具设计和实现简单的GUI程序。
3.实验过程3.1确定需求在开始开发GUI程序之前,我们首先需要确定程序的需求。
在本次实验中,我们决定开发一个简单的计算器程序,该程序能够进行基本的四则运算,并显示计算结果。
3.2设计界面3.3编写代码3.4调试程序在完成代码的编写之后,我们对程序进行了调试。
在调试过程中,我们发现了一些错误,比如按钮的事件处理函数没有正确设置,导致无法进行相应的计算。
通过不断地调试和修改,我们最终成功地解决了这些问题。
3.5测试程序在完成调试之后,我们对程序进行了测试。
测试的过程包括输入不同的表达式,进行相应的计算,并对比计算结果是否正确。
通过多次测试,我们发现程序能够正确地进行四则运算,并显示出正确的计算结果。
4.实验结果通过本次实验,我们成功地实现了一个简单的GUI程序,该程序能够进行基本的四则运算,并显示出正确的计算结果。
该程序界面简洁明了,易于操作,符合用户的需求。
5.实验总结通过本次实验,我们深入学习了GUI程序设计的基本原理和开发方法,并通过实践运用了Python语言编写了一个简单的GUI程序。
在实验过程中,我们遇到了一些问题,并通过调试和测试最终解决了这些问题。
通过实验,我们对GUI程序的开发有了更深入的理解,并掌握了一定的开发技巧。
在今后的学习和工作中,我们将继续学习和探索GUI程序设计的更多内容,提高自己的技术水平,为用户提供更好的使用体验。
QT实验报告范文
QT实验报告范文实验报告-QT编程一、实验目的1.理解QT框架的概念和特点;2.掌握QT编程的基本语法和使用方法;3.学习使用QT进行界面设计和图形绘制。
二、实验内容本次实验主要分为三个部分:QT框架的概述、QT编程基础和实际操作。
2.1QT框架的概述QT(即"Qt")是一种跨平台C++应用程序开发框架。
它可以在不同的操作系统上如Windows、macOS和Linux上运行,并提供了一套完整的开发工具链。
QT提供了一个基于信号和槽机制的事件模型,使得开发者可以通过简单的代码连接不同的对象,实现对象之间的通信和交互。
这个机制使得QT编程变得简单而灵活。
2.2QT编程基础QT框架中的基本概念有:- QObject:所有的类都从QObject继承,使得类具有信号槽机制和对象树的功能。
- QWidget:继承自QObject,是所有GUI类的基类。
它可以显示在屏幕上,接受用户的输入,并显示自己的状态。
- QApplication:应用程序类,是QT程序的入口点。
在程序的主函数中创建一个QApplication对象后,可以调用exec(函数进入事件循环。
QT框架中的基本语法和使用方法包括:- 信号和槽机制:通过connect函数将信号与槽函数连接,使得当一些特定事件发生时,槽函数会被调用。
-事件处理:通过重写事件处理函数来处理各种不同的事件,如鼠标点击、键盘输入等。
- 布局管理器:QT提供了一些布局管理器来帮助开发者实现灵活的界面布局,如QVBoxLayout、QHBoxLayout等。
2.3实际操作本次实验中,我们将实际用QT进行界面设计和图形绘制。
首先,我们通过QT Designer创建一个简单的界面,包含一个按钮和一个文本框。
然后,我们使用QT Creator将界面和代码进行关联,使得按钮点击时,文本框中显示一段文字。
其次,我们使用QT自带的绘图类和函数进行图形绘制。
通过继承QWidget类,并重写其paintEvent函数,我们可以在界面上绘制各种图形,如直线、矩形、椭圆等。
40个Visual Basic 编程简单实例
目录实验题目1:设计窗体。
参考界面如下: (2)实验题目2: 设计一个计算器。
参考界面如下: (3)实验题目3:设计一个能够统计某学生三门课程成绩总分和平均分的程序。
参考界面如下: (4)实验题目4:设计界面,编写程序计算圆的周长和面积。
参考界面如下: (4)实验题目5:设计界面,编写程序验证算术运算符的功能。
参考界面如下: (5)实验题目6:设计界面,编写程序分离出一个三位数的个位、十位、百位上的数字。
参考界面如下: (6)实验题目7:输入一个三位数,将它按逆序输出。
参考界面如下: (7)实验题目8:输入两个数,将这两个数交换。
(8)实验题目9:设计文本编辑窗体。
(8)实验题目10:编写程序计算某个学生三门课程的平均成绩。
(10)实验题目12:编写程序计算长方体的体积。
(10)实验题目13:编写程序求出四个数中的最小数。
(11)实验题目14:编写程序判断某个数是否是水仙花数。
(11)实验题目15:编写程序,实现数字和英文单词的对应。
(12)实验题目16:设计程序,判断从键盘上输入的某个字符为哪类字符。
(大写字母、小写字母、数字字符或其他字符) (12)实验题目17:设计一个简单的文本编辑器,可以实现文本的简单格式化操作。
(13)实验题目18:编写程序输出图形,运行界面如下: (15)实验题目19:编写程序求n!。
(15)实验题目20:编写程序,求出某班所有同学某门课程的平均成绩。
(16)实验题目21:编写程序输出1-100之间所有能被3整除的整数,要求每行输出5个。
并输出这些整数的和。
(用for语句实现) (16)实验题目21:编写程序,统计输入的一个字符串中各类字符的个数。
(用for语句实现).17 实验题目22:编写程序,定义包含10个数组元素的一维数组,给该数组中的数组元素赋值为3,6,9,12......数字,并以顺序和逆序两种方式输出各元素值。
. (17)实验题目23:随机生成20个100以内的正整数,将其中的奇数和偶数分两行显示在窗体上,并分别统计奇数和偶数的个数。
正方教务管理系统实验室管理系统系统使用说明
一、登录系统1. 运行实验管理系统软件(软件名称为jwglsy),如下图:2. 输入账号及密码,点击确定按钮,进入系统,如下图:3. 注意:因账号初始密码均相同,请务必第一次运行该软件时修改密码,点击系统维护按钮,弹出的下拉菜单中点击口令维护项,进入下图界面进行修改:二、实验场地维护1.点击实验室管理,在下拉菜单中选择场地管理,在弹出菜单中点击实验室场地维护,进入如下页面:2. 点击增加按钮,在弹出的界面录入如下信息,实验室编号(编码规则为:院系代码+sysbh+三位数字编码,以化工学院CAD实验室为例,其编码为09sysbh001。
),填写实验室名称,选择所属实验中心,填写座位数、实验设备台套数,选择校区代码1,实验室类别选择为实验室,选择负责人职工号,完成以上操作后点击保存,关闭该页面,如需继续添加,则再次点击增加按钮。
三、实验代码维护1. 点击实验室管理,在弹出的下拉菜单中点击实验代码维护选项,进入如下界面:2. 点击实验模块代码选项,进入如下界面:3. 点击增加按钮,进行实验模块代码录入工作。
注意:实验模块指代的是实验课程名称,试验模块代码编码规则为系别代码+symk+三位数字编码,以中文系为例,其第一个实验模块的编码为01symk0001,所属实验中心对照实验中心代码表选择,填写录入完成后点击保存按钮,接着录入下一条。
如下图所示:4. 所有实验课程录入完成后点击实验项目代码选项,进入实验项目录入界面,点击增加,录入实验项目。
注意:(1)实验项目代码编码规则为系别代码+syxm+五位数字编码(实验模块代码后三位数字+两位顺序码),以中文系“电脑图文设计实验”为例,其第一次实验“认识CORELDRAW软件”的编码为01syxm00101。
(2)实验项目名称为单次实验的名称。
(3)点击实验模块代码下拉菜单,选择所属实验模块;点击项目性质、项目类别下拉菜单,选择所属项目性质和类别。
(4)选择所属实验中心及该项目所属实验室。
JSP实验代码
JSP实验代码作业一:实训三使用表格进行页面布局1、用户投票页面的制作要求利用表格布局页面,制作投票页面,效果参考图2-19所示,。
图2-19 投票界面要求:(1)利用表格进行布局实验代码:<html><head><title>投票界面</title><title> New Document </title><meta name="Generator" content="EditPlus"><meta name="Author" content=""><meta name="Keywords" content=""><meta name="Description" content=""></head><body bgcolor="silver" ><center><table bgcolor="white" width="178"height="380" border="0" cellspacing="0" cellpadding="0"><tr align="left" bgcolor="white"><td><img src="images/zxdc.jpg" alt="" width="178" height="27" ></td></tr><tr align="left" bgcolor="white"><td><img src="images/vote.gif" alt="" width="13" height="15" >你认为C语言课程在程序设计中的重要性</td></tr><tr><td><input type="radio" name="1" value="" >1.非常重要,学好它就可以独立完成程序设计</td></tr><tr><td><input type="radio" name="1" value="" >2.非常重要,但要辅以其他可成才能做好程序设计</td></tr><tr><td><input type="radio" name="1" value="" >3.一般重要,仅仅是基础启蒙课</td></tr><tr><td><input type="radio" name="1" value="" >4.不重要,学好其他课程也可以做程序员</td></tr><tr><td><input type="submit" name="2" value="提交" > <input type="submit" name="2" value="结果" > </td></tr></table></center></body></html>2、用户注册页面的制作要求利用表格进行布局,制作用户注册界面,效果参考图2-20所示:图2-20 用户注册界面要求:(1)利用表格进行布局实验代码:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "/TR/html4/loose.dtd"><html><head><title> New Document </title><meta name="Generator" content="EditPlus"><meta name="Author" content=""><meta name="Keywords" content=""><meta name="Description" content=""></head><body><table width="900" border="1" align="center" cellspacing="2" cellpadding="3" bordercolor="#385610"><td colspan="2" align="center" bgcolor=HTML\images\bg1.gif>用户注册</td></tr><tr><td width="" alight="right">用户名:<br>注册用户名长度不超过0-10字节</br></td><td width=""><input type="text" name="" value="" /></td></tr><tr><td aligh="right">性别:<br>请选择您的性别</br></td><td width=""><input type="radio" name="1" value="" /><img src="images\Male.gif" alt="" width="23" height="21" />男孩<input type="radio" name="1" value="" /><img src="images\Female.gif" alt="" width="23" height="21" />女孩</td></tr><tr><td aligh="right">密码(至少六位):<br>请输入密码,区分大小写</br>请不要使用任何类似‘*’、‘ ’或HTML字符</td><td width=""><input type="password" name="" value="" /></td></tr><tr><td aligh="right">密码(至少六位):<br>请在输入一遍确认</br></td><td width=""><input type="password" name="" value="" /></td></tr><td aligh="right">密码问题:<br>忘记密码的提示问题</br></td><td width=""><input type="text" name="" value="" /></td></tr><tr><td aligh="right">问题答案:<br>忘记密码的提示问题答案,用于取回论坛密码</br></td><td width=""><input type="text" name="" value="" /></td></tr><tr><td aligh="right">Email地址:<br>请输入有效的邮件地址,这将使您使用到论坛中的所有功能</br></td><td width=""><input type="text" name="" value="" /><input type="button" name="" value="检测账号" /></td></tr><tr><td aligh="right"><font color=red>*</font>一卡通账号:<br>请输入有效的一卡通账号,这才能使您注册</br></td><td width=""><input type="text" name="" value="" /></td></tr><tr><td aligh="right"><font color=red>*</font>一卡通密码:<br>请输入有效的一卡通密码,否则不能使您注册</br></td><td width=""><input type="text" name="" value="" /></td></tr><td colspan="2" align="left"><input type="checkbox" name="" value="" />显示高级用户设置选项<input align="center" type="button" name="" value="注册" /><input align="center" type="button"name="" value="清除" /></td></table></body></html>作业二基于脚本语言的综合实训1、要求参考铁路客户服务中心网站的页面风格设计页面。
c#实验报告(完整版)
C#实验报告班级:姓名:学号:实验一文本编辑器一:实验目的及要求1.熟悉VisualC#.NET的可视化界面,掌握控件的使用。
2.掌握System.IO类的文件流操作,会处理文件。
二:实验内容:1、假设有要排序的20个数存在文件Data.txt中。
编写程序,打开该文件并将排好序的数重新写回该文件。
2、重新打开第1题创建的文件,在文件的结尾再添加10个随机数。
3、参考Windows的记事本程序,编写一个简单的文本编辑器程序。
4、编写程序,在用户选择了一个目录后,找出该目录及其子目录中所有后缀名为doc的文件。
5、假设有文本文件1.txt和2.txt。
编写程序,创建一个新的文本文件,将1.txt中的内容和2.txt中的内容重复两遍,交替写入新的文本文件,并删除1.txt和2.txt。
三:实验环境Windows XP操作系统,Visual 2005四:实验源程序及关键代码的解释主界面:(1)排序/添加随机数程序代码:using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.IO;namespace 文本编辑器设计{public partial class Form2 : Form{public Form2(){InitializeComponent();}private void Form2_Load(object sender, EventArgs e){FileStream fs = new FileStream("D:\\1.txt", FileMode.Open, FileAccess.ReadWrite);StreamReader sr = new StreamReader(fs);richTextBox1.Text = sr.ReadToEnd();sr.Close();fs.Close();}private void button1_Click(object sender, EventArgs e){FileStream fs = new FileStream("D:\\1.txt", FileMode.Open, FileAccess.ReadWrite);StreamReader sr = new StreamReader(fs);string[] myDate = sr.ReadToEnd().Split(',');sr.Close();fs.Close();for (int i = 0; i < myDate.Length; i++){for (int j = 0; j < myDate.Length - i - 1; j++){if (Convert.ToInt32(myDate[j]) > Convert.ToInt32(myDate[j + 1])){string t;t = myDate[j];myDate[j] = myDate[j + 1];myDate[j + 1] = t;}}}foreach (string s in myDate){Console.WriteLine(s);}//将排好序的数写回到文件中FileStream fs1 = new FileStream("D:\\1.txt", FileMode.Open,FileAccess.ReadWrite);StreamWriter sw = new StreamWriter(fs1);for (int i = 0; i < myDate.Length - 1; i++){sw.Write(myDate[i]);sw.Write(",");}sw.Write(myDate[myDate.Length - 1]);sw.Close();fs1.Close();FileStream fs2 = new FileStream("D:\\1.txt", FileMode.Open, FileAccess.ReadWrite);StreamReader sr2 = new StreamReader(fs2);richTextBox2.Text = sr2.ReadToEnd();sr2.Close();fs2.Close();}private void button2_Click(object sender, EventArgs e){Random newRandom = new Random();//声明产生随机数对象FileInfo fi = new FileInfo("D:\\1.txt");using (StreamWriter sw = fi.AppendText()){//写入随机数for (int i = 0; i < 10; i++){sw.Write(',');sw.Write(newRandom.Next());}sw.Write(newRandom.Next());FileStream fs2 = new FileStream("D:\\1.txt", FileMode.Open, FileAccess.ReadWrite);StreamReader sr2 = new StreamReader(fs2);richTextBox2.Text = sr2.ReadToEnd();sr2.Close();fs2.Close();}}private void button3_Click(object sender, EventArgs e){this.Close();}}}运行结果(2)文本编辑器界面:源程序using System;using System.Collections.Generic; using ponentModel; using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.IO;namespace 文本编辑器设计{public partial class Form3 : Form{public Form3(){InitializeComponent();}private void 新建ToolStripMenuItem_Click(object sender, EventArgs e) {textBox1.Clear();this.Text = "新建文件";}private void 打开ToolStripMenuItem_Click(object sender, EventArgs e) {textBox1.Select();}private void 剪切ToolStripMenuItem_Click(object sender, EventArgs e) {textBox1.Cut();}private void 粘贴ToolStripMenuItem_Click(object sender, EventArgs e) {textBox1.Paste();}private void 复制ToolStripMenuItem_Click(object sender, EventArgs e) {textBox1.Copy();}private void 红色ToolStripMenuItem_Click(object sender, EventArgs e) {textBox1.ForeColor=Color.Red;}private void 黑色ToolStripMenuItem_Click(object sender, EventArgs e) {textBox1.ForeColor = Color.Black;}}}运行结果:(3)文件查找界面:源程序:using System;using System.Collections.Generic; using ponentModel; using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.IO;namespace 文本编辑器设计{public partial class Form4 : Form{public Form4(){InitializeComponent();}public void FindFile(string dir){DirectoryInfo Dir = new DirectoryInfo(dir);try{foreach (DirectoryInfo d in Dir.GetDirectories()) {FindFile(Dir + d.ToString() + "\\");}foreach (FileInfo D in Dir.GetFiles("*.doc")) {listBox1.Items.Add(Dir + D.ToString());}}catch (Exception e){MessageBox.Show(e.Message);}}private void button3_Click(object sender, EventArgs e){FindFile(textBox1.Text);}private void button2_Click(object sender, EventArgs e){this.Close();}private void button1_Click(object sender, EventArgs e){this.listBox1.Items.Clear();this.textBox1.Clear();}}}运行结果:(4)文件合并源程序:using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.IO;namespace 文本编辑器设计{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void button1_Click(object sender, EventArgs e) {Form2 x = new Form2();x.Show();}private void button2_Click(object sender, EventArgs e) {Form3 y = new Form3();y.Show();}private void button3_Click(object sender, EventArgs e){Form4 z = new Form4();z.Show();}private void button4_Click(object sender, EventArgs e){FileStream fs1 = new FileStream("1.txt", FileMode.Open);StreamReader sr1 = new StreamReader(fs1);string text1 = sr1.ReadToEnd();fs1.Close();sr1.Close();FileStream fs2 = new FileStream("2.txt", FileMode.Open);StreamReader sr2 = new StreamReader(fs2);string text2 = sr2.ReadToEnd();fs2.Close();sr2.Close();using (StreamWriter sw = File.CreateText("3.txt")){sw.WriteLine(text1);sw.WriteLine(text2);sw.WriteLine(text1);sw.WriteLine(text2);MessageBox.Show("文件添加完毕!", "提示", MessageBoxButtons.OK, rmation);File.Delete("1.txt");File.Delete("2.txt");MessageBox.Show("文件删除完毕!", "提示", MessageBoxButtons.OK, rmation);sw.Close();}}}}运行结果:实验二 C#图形程序设计基础一:实验目的:1、熟悉VisualC#.NET的图形基础知识,绘图的基本知识2、学会GDI+基础知识3、建立画笔,画刷4、画图的方法及使用二:实验内容:1、使用图形方法,画出5条不同颜色的直线并形成一个多边形。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
程序代码:
Private Sub Check1_Click()
Text1.FontItalic = True
End Sub
Private Sub Check2_Click()
Text1.FontBold = True
End Sub
Private Sub Option1_Click()
Text1.FontName = "楷体_GB2312" End Sub
Private Sub Option2_Click()
Text1.FontName = "黑体"
End Sub
Private Sub Option3_Click()
Text1.FontName = "仿宋_gb2312" End Sub
Private Sub Option4_Click()
Text1.FontName = "隶书"
End Sub
Private Sub Option5_Click()
Text1.ForeColor = QBColor(12) End Sub
Private Sub Option6_Click()
Text1.ForeColor = QBColor(9) End Sub
程序运行结果截图:
问题:
当选择“斜体”和“粗体”,再取消的时候,字体有变化吗?要做怎么样的修改?完善这个程序。
答:没变化。
程序运行结果截图:
代码的作如下修改:
Private Sub Check1_Click()
Text1.FontItalic = True
If Check1.Value = 0 Then Text1.FontItalic = False End Sub
Private Sub Check2_Click()
Text1.FontBold = True
If Check2.Value = 0 Then Text1.FontBold = False End Sub
Private Sub Option1_Click()
Text1.FontName = "楷体_GB2312"
End Sub
Private Sub Option2_Click()
Text1.FontName = "黑体"
End Sub
Private Sub Option3_Click()
Text1.FontName = "仿宋_gb2312"
End Sub
Private Sub Option4_Click()
Text1.FontName = "隶书"
End Sub
Private Sub Option5_Click()
Text1.ForeColor = QBColor(12)
End Sub
Private Sub Option6_Click() Text1.ForeColor = QBColor(9) End Sub
运行结果截图:。