第一篇:实验二 字符串与正则表达式
实验二 字符串与正则表达式
(二)实验目的:
1、掌握正则表达式的使用 实验内容:
1、调试课本实例。
2、完成实验指导(3、正则表达式)
3、编写一个控制台应用程序,找出字符串“My friend Bill will pay the bill”中,以“ill”结尾的单词,并显示出匹配的位置。
4、处理一个单位的电话列表,取出其中的姓名和电话号码,并且将它们打印出来,其中电话列表中的每一条记录的形式如下: Dr.David Jone,Ophthalmology,x2441 Ms.Cindy Harriman,Registry,x6231 Mr.Chester Addams,Mortuary,x6231 Dr.Hawkeye Pierce,Surgery,x0986 „„
提取出其中的姓名和分机的结果如下所示: 2441
Jone
5、如右图,设计一个Windows窗体用于填写个人资料,出生日期自动从身份证号码中提取,在提交时检查以下内容:(可根据自己的能力选择以下一项或多项)(常用的正则表达式:http://wenku.baidu.com/view/908f5022aaea998fcc220e56.html)
检查用户名是否由6-18个字符组成,组成用户名的字符只能是英文大小写字母、数字、下划线、汉字; 检查真实姓名是否由2-4个汉字组成;
密码和确认密码是否一致,是否符合强密码规定;
强密码应该具有如下特征: 强密码长度至少有 8 个字符; 不包含全部或部分用户帐户名;
至少包含以下四类字符中的三类:大写字母、小写字母、数字,以及键盘上的符号(如!、@、#); 字典中查不到; 不是命令名; 不是人名; 不是用户名; 不是计算机名; 定期更改;
与以前的密码明显不同。 检查Email格式;
检查电话号码是否由11个数字(手机号)或8位数字(固定电话)或区号加固定电话号码组成; 检查邮政编码是否由6位数字组成
检查身份证号码是否符合以下三种情况:
a、身份证号码为15位数字; b、身份证号码为18位数字;
c、身份证号码为17位数字+1个字母X。
我国现行居民身份证是全国统一编号,由十五位阿拉伯数字组成,每个公民是一人一号,同年、同月、同日所出生的按地区人数,按县固定次序进行合理分配顺序号代码。做到不重、不漏、不错。编号排列的含义是:
1、第l一6位数为行政区划代码;
2、第7—12位数为出生日期代码;
3、第13---15位数为分配顺序代码;
(1)、行政区划代码,是指公民第一次申领居民身份证时的常住户口所在地的行政地区。
(2)、出生日期代码,第7—8位数代表年份(年份前面二位数省略),第9—10位数代表月份(月份为l位数的前面加零)。第11一12位数代表日期(日期为1位数的前面加零)。(3)、分配顺序代码,是按人口数统一合理分配以固定顺序给予每个人的顺序号,最末一位数是奇数的分配给男性,偶数分配给女性。
新式身份证号码是否还和旧式身份证号码一样,男的尾号为单数,女的尾号为双数?
国务院规定,自1999年10月1日起在全国建立和实行公民身份证号码制度。
公民身份证号码按照GB11643—1999《公民身份证号码》国家标准编制,由18位数字组成:前6位为行政区划分代码,第7位至14位为出生日期码,第15位至17位为顺序码,第18位为校验码。
第18位号码是校验码,目的在于检测身份证号码的正确性,是由计算机随机产生的,所以不再是男性为单数,女性为双数。作为尾号的校验码,是由号码编制单位按统一的公式计算出来的,如果某人的尾号是0-9,都不会出现X,但如果尾号是10,那么就得用X来代替,因为如果用10做尾号,那么此人的身份证就变成了19位,而19位的号码违反了国家标准,并且我国的计算机应用系统也不承认19位的身份证号码。Ⅹ是罗马数字的10,用X来代替10,可以保证公民的身份证符合国家标准。但是我国的居民身份证在升位后,一些人的尾号变成了X。检查不合格时弹出消息框提示,例如: MessageBox.Show(“电话号码错误”,“个人资料填写错误”,MessageBoxButtons.OK,MessageBoxIcon.Error);
第二篇:实验:字符数组与字符串
实验11:字符数组与字符串
一、实验目的1、理解字符数组和字符串的概念。
2、掌握字符数组的定义、初始、数组元素引用、输入输出。
3、掌握字符数组的处理
4、掌握常用字符串处理函数
二、实验内容
1、编制程序:对键盘输入的字符串进行逆序,逆序后的字符串仍然保留在原来字符数组中,最后输出。
(1)不得调用任何字符串处理函数,包括strlen;
(2)允许使用可用的字符串处理函数。
例如:输入hello world 输出dlrow olleh2、编写程序:对键盘输入的两个字符串进行连接。
(1)尽管我们知道strcat()可以简单完成此任务,仍然规定不得调用任何字符串处理函数,包括strlen;
(2)允许使用可用的字符串处理函数。
例如:输入hello
(1)不得调用任何字符串处理函数,包括strlen;
(2)允许使用可用的字符串处理函数。
例如:输入:Hello World!输出:hELLO wORLD!
三、实验小结
实验中碰到的问题,以及思考。
第三篇:实验二
实验二 总账管理系统初始设置
【实验目的】
1.掌握用友ERP-U8管理软件中总账管理系统初始设置的相关内容。
2.理解总账管理系统初始设置的意义。
3.掌握总账管理系统初始设置的具体内容和操作方法。
【实验内容】
1.总账管理系统参数设置。
2.基础档案设置:会计科目、凭证类别、外币及汇率、结算方式、辅助核算档案等。
3.期初余额录入。
【实验准备】
引入“实验一”账套数据:
1.以系统管理员身份注册进入系统管理。
2.选择“实验一”账套数据所在的D盘,找到帐套文件UfErpAct.Lst,单击“确认”按钮,引入账套。
【实验要求】
以帐套主管“陈明”的身份进行总账初始设置。
【实验步骤】
1.登录总账。
双击打开桌面的“企业应用平台”,以“陈明”的身份登入。在“业务”选项卡中,单击“财务会计——总账”选项,展开总账下级菜单。
2.设置总账控制参数。
3.设置基础数据:外币及汇率、凭证类别、结算方式、项目目录,建立会计科目等。
4.输入期初余额:录入完后,要试算平衡,若试算不平衡会影响下面的操作。
【实验心得】
通过这次实验,掌握了总账管理系统的概念、功能及与其他系统的关系、设置控制系数、设置基础数据、输入期初余额等内容。总账管理系统是财务及企业管理软件的核心系统,适用于各行业账务核算及管理工作。总账管理系统既可以独立运行,也可以同其他系统协同运行。总账管理主要功能有:初始设置、凭证管理、出纳管理、账簿管理、辅助核算管理和月末处理。总账管理系统的重要地位不可忽视,其他管理如:工资管理、固定资产、应收应付款、资金管理、成本管理、存货管理等都是在围绕着总账管理来运作的。总账管理系统最后一步是期末处理,主要包括银行对账、自动转帐、对账、月末处理和年末处理。手工做账数量不多但是业务种类繁杂时间紧迫,而在计算机操作下许多期末处理具有规律性,不但减少会计人员的工作量而且加强了财务核算的规范性。
通过对总账管理的学习,我基本掌握了总账管理中系统初始化、日常业务处理和期末业务处理的内容、工作原理和应用方法。了解了总账系统与其他子系统之间的关系、总账管理中错误凭证的修改方法、银行对账的方法和各种账表资料的作用和查询方法。
第四篇:实验二
北京理工大学珠海学院实验报告
ZHUHAI CAMPAUS OF BEIJING INSTITUTE OF TECHNOLOGY 班级:10自动化 学号:100104031036 姓名:傅万年 指导教师:雷剑刚 成绩: 实验题目:练习选择结构 实验时间:2011-4-19
题目一:1.编程判断输入整数的正负性和奇偶性。代码:#include
题目二:2.有3个整数a、b、c,由键盘输入,输出其中最大的数。代码:#include 题目三:3.分别使用if语句和switch语句,以10分为一段,分别输出实际成绩和所在分数段。 代码:#include printf(“please input the score:”);scanf(“%d”,&score);if(score>=90)printf(“good”);else if(score>=80&&score<=89)printf(“beter”);else if(score>=70&&score<=79)printf(“middle”);else if(score>=60&&score<=69)printf(“ok”);else printf(“no ok”);} 结果截图: 实验小结:通过本次实验我知道了路径问题将影响实验,所以实验前一定要设好路径。 一、实验目的 1. 熟练掌握step()函数和impulse()函数的使用方法,研究线性系统在单位阶跃、单位脉冲及单位斜坡函数作用下的响应。2. 通过响应曲线观测特征参量和 n对二阶系统性能的影响。 3. 熟练掌握系统的稳定性的判断方法。 二、实验内容 1.观察函数step()和impulse()的调用格式,假设系统的传递函数模型为 s23s7G(s)4s4s36s24s 1可以用几种方法绘制出系统的阶跃响应曲线?试分别绘制。 2.对典型二阶系统 n2G(s)22s2snn (1)分别绘出n2(rad/s),分别取0,0.25,0.5,1.0和2.0时的单位阶跃响应曲线,分析参数对系统的影响,并计算=0.25时的时域性能指标(2)绘制出当=0.25,p,tr,tp,ts,ess。 n分别取1,2,4,6时单位阶跃响应曲线,分析参数n对系统的影响。 432(3)系统的特征方程式为2ss3s5s100,试用二种判稳方式判别该系统的稳定性。 (4)单位负反馈系统的开环模型为 G(s) K(s2)(s4)(s26s25) 试分别用劳斯稳定判据和赫尔维茨稳定判据判断系统的稳定性,并求出使得闭环系统稳定的K值范围。 三、实验结果及分析 1.可以用两种方法绘制系统的阶跃响应曲线。(1)用函数step()绘制 MATLAB语言程序: >> num=[ 0 0 1 3 7]; >> den=[1 4 6 4 1 ]; >>step(num,den); >> grid; >>xlabel('t/s');ylabel('c(t)');title('step response'); MATLAB运算结果: (2)用函数impulse()绘制 MATLAB语言程序: >> num=[0 0 0 1 3 7]; >> den=[1 4 6 4 1 0]; >> impulse(num,den); >> grid; >> xlabel('t/s');ylabel('c(t)');title('step response'); MATLAB运算结果: 2.(1)n2(rad/s),分别取0,0.25,0.5,1.0和2.0时的单位阶跃响应曲线的绘制: MATLAB语言程序: >> num=[0 0 4]; >> den1=[1 0 4]; >> den2=[1 1 4]; >> den3=[1 2 4]; >> den4=[1 4 4]; >> den5=[1 8 4]; >> t=0:0.1:10; >> step(num,den1,t); >> grid >> text(2,1.8,'Zeta=0'); hold Current plot held >> step(num,den2,t); >> text(1.5,1.5,'0.25'); >> step(num,den3,t); >> text(1.5,1.2,'0.5'); >> step(num,den4,t); >> text(1.5,0.9,'1.0'); >> step(num,den5,t); >> text(1.5,0.6,'2.0'); >> xlabel('t');ylabel('c(t)');title('Step Response '); MATLAB运算结果: 实验结果分析: 从上图可以看出,保持 n2(rad/s)不变,依次取值0,0.25,0.5,1.0和2.0时,系统逐渐从欠阻尼系统过渡到临界阻尼系统再到过阻尼系统,系统的超调量随的增大而减小,上升时间随的增大而变长,系统的响应速度随的增大而变慢,系统的稳定性随的增大而增强。相关计算: n2(rad/s),=0.25时的时域性能指标p,tr,tp,ts,ess的计算: (2)=0.25, n分别取1,2,4,6时单位阶跃响应曲线的绘制: MATLAB语言程序: >> num1=[0 0 1]; >> den1=[1 0.5 1]; >> t=0:0.1:10; >> step(num1,den1,t); >> grid; hold on >> text(2.5,1.5,'wn=1'); >> num2=[0 0 4]; >> den2=[1 4]; >> step(num2,den2,t);hold on >> text(1.5,1.48,'wn=2'); >> num3=[0 0 16]; >> den3=[1 16]; >> step(num3,den3,t);hold on >>text(0.8,1.5,'wn=4'); >> num4=[0 0 36]; >> den4=[1 36]; >> step(num4,den4,t);hold on >> text(0.5,1.4,'wn=6'); >> xlabel('t');ylabel('c(t)');title('Step Response '); MATLAB运算结果: 实验结果分析: 从上图可以看出,保持=0.25不变,n依次取值1,2,4,6时,系统超调量不变,延迟时间、上升时间、峰值时间、调节时间均减小,系统响应速度变快,稳定性变强。 3.特征方程式为2ss3s5s100的系统的稳定性的判定:(1)直接求根判定稳定性 MATLAB语言程序及运算结果: >> roots([2,1,3,5,10]) ans= 0.7555 + 1.4444i; 0.75550.9331i; 判定结论: 系统有两个不稳定的根,故该系统不稳定。(2)用劳斯稳定判据routh()判定稳定性 MATLAB语言程序及运算结果和结论: >> den=[2,1,3,5,10]; >> [r,info]=routh(den) r = 2.0000 3.0000 10.0000 432 1.0000 5.0000 0 -7.0000 10.0000 0 6.4286 0 0 10.0000 0 0 Info= 所判定系统有 2 个不稳定根! >> 4.开环模型为 G(s)K(s2)(s4)(s26s25)的单位负反馈系统稳定性的判定(劳斯判据判定)(系统特征方程式为D(s)=(s+2)(s+4)(s2+6s+25)+K=0): MATLAB语言程序及运算结果和结论: (取K=200) den=[1,12,69,198,200]; [r,info]=routh(den) r = 1.0000 69.0000 200.0000 12.0000 198.0000 0 52.5000 200.0000 0 152.2857 0 0 200.0000 0 0 info = 所要判定系统稳 继续取K的值,试探: (取K=350) den=[1,12,69,198,350]; [r,info]=routh(den) r = 1.0000 69.0000 350.0000 12.0000 198.0000 0 52.5000 350.0000 0 118.0000 0 0 350.0000 0 0 info = 所要判定系统稳定! (取K=866.3) den=[1,12,69,198,866.3]; [r,info]=routh(den) r = 1.0000 69.0000 866.3000 12.0000 198.0000 0 52.5000 866.3000 0 -0.0114 0 0 866.3000 0 0 info = 所判定系统有 2 个不稳定根! (取K=866.2) den=[1,12,69,198,866.2]; [r,info]=routh(den) r = 1.0000 69.0000 866.2000 12.0000 198.0000 0 52.5000 866.2000 0 0.0114 0 0 866.2000 0 0 info = 所要判定系统稳定! (取K=866.25) den=[1,12,69,198,866.25]; [r,info]=routh(den) r = 1.0000 69.0000 866.2500 12.0000 198.0000 0 52.5000 866.2500 0 105.0000 0 0 866.2500 0 0 info = 所要判定系统稳定! (取K=866.26) den=[1,12,69,198,866.26]; [r,info]=routh(den) r = 1.0000 69.0000 866.2600 12.0000 198.0000 0 52.5000 866.2600 0 -0.0023 0 0 866.2600 0 0 info = 所判定系统有 2 个不稳定根!结论: 由试探可得,在K=866.25系统刚好稳定,则可知时系统稳定的K值范围为0 本次实验我们初步熟悉并掌握了step()函数和impulse()函数的使用方法以及 判断闭环系统稳定的方法。 在实验中,我们根据内容要求,写出调试好的MATLAB语言程序,并调用step() 函数 s23s7G(s)4s4s36s24s1在取不同的n和不 同和impulse()函数求出了控制系统的时在单位阶跃和单位脉冲作用下的瞬态响应,然后记录各种输出波形,并根据实 验结果分析了参数变化对系统的影响。 控制系统稳定的充要条件是其特征方程的根均具有负实部。因此,为了判别系统 的稳定性,就要求出系统特征方程的根,并检验它们是否都具有负实部。MATLAB中对多 项式求根的函数为roots()函数。所以我们可以直接求根判定系统的稳定性。 我们也可 以用劳斯稳定判据判定系统的稳定性,劳斯判据的调用格式为:[r, info]=routh(den),该函数的功能是构造系统的劳斯表,其中,den为系统的分母多项式系数向量,r为返回的routh表矩阵,info为返回的routh表的附加信息。在实验中我们通过调用 G(s)这两个函数,判定了系统 K(s2)(s4)(s26s25)的稳定性并求得了使其稳定的K值范围。 整个实验过程的操作和观察使得我们对二阶系统的动态性能及其参数对其的影响、系统的稳定性及其判定有了更深刻的认识,也深深的体会到了Matalab软件的功能的强 大并意识到了掌握其相关应用的必要性。第五篇:实验二