第10章例题源程序
微机原理及接口技术重点及例题

第一章思考题与习题:1.什么叫微处理器、微机?微机系统包含哪些部分?2 .为什么计算机使用二进制计数制?3.CPU 在内部结构上由哪几部分组成?4 .十六进制的基数或底数是。
5.将下列十进制数分别转换成十六进制、二进制、八进制数:563 6571 234 1286 .将下列十进制小数转换成十六进制数(精确到小数点后4 位数):0.359 0.30584 0.9563 0.1257.将1983.31510转换成十六进制数和二进制数。
8.将下列二进制数转换成十进制数、十六进制数和八进制数:(1)101011101.11011 (2 )11100011001.011 (3 )1011010101.00010100111 9.将下列十六进制数转换成十进制数和二进制数:AB7.E2 5C8.11FF DB32.64E10.判断下列带符号数的正负,并求出其绝对值(负数为补码):10101100;01110001;11111111;10000001。
11.写出下列十进制数的原码、反码和补码(设字长为8 位):+64 -64 +127 -128 3/5 -23/12712.已知下列补码,求真值X :(1)[X]补=1000 0000(2 )[X]补=1111 1111(3 )[-X]补=1011011113.将下列各数转换成BCD 码:30D,127D,23D,010011101B,7FH14.用8421 BCD 码进行下列运算:43+99 45+19 15+3615.已知X =+25,Y =+33,X = -25,Y = -33,试求下列各式的值,并用其对应的真值进行验证:1 12 2(1)[X +Y ]补1 1(2 )[X -Y ]补1 2(3 )[X -Y ]补1 1(4 )[X -Y ]补2 2(5 )[X +Y ]补1 2(6 )[X +Y ]补2 216.当两个正数相加时,补码溢出意味着什么?两个负数相加能产生溢出吗?试举例说明。
《浙工大C语言课本习题答案》

《浙工大C语言课本习题答案》C程序设计习题参考答案习题一 ................................................ . (2)习题二 ................................................ . (3)习题三 ................................................ . (5)习题四 ................................................ . (8)习题五 ................................................ .. (14)习题六 ................................................ .. (17)习题七 ................................................ .. (20)习题八 ................................................ .. (26)习题九 ................................................ .. (33)习题十 ................................................ .. (35)习题十一 ................................................ (36)1习题一1. 填空题⑴计算机程序设计语言按其发展可分为三类,即机器语言、汇编语言和高级语言。
⑵ C程序是函数构成的,一个C程序中至少包含 1个main函数。
因此,函数是C程序的基本单位。
⑶ C程序注释是 /* 和 */ 所界定的文字信息组成的。
⑷函数体一般包括函数首行和函数体。
《精通C程序设计教程》二~九章习题答案

《精通C程序设计教程》部分习题答案2005年4月说明:本答案没有仔细校对,如果发现错误,请自行更正;蓝色的程序经过了上机验证.第二章 C源程序基本语法与顺序结构简单程序设计2.10 ABEFG2.11 A CFHJMNPQRT2.12 (1)3 (2)0 (3)0 (4)1 (5)–1 (6)160 (7)4 (8)4 (9)8 (10)8(11)1 (12)2 (13)1 (14)0 (15)6 (16)0 (17)29(18)3 (19)1 (20)12.13 2.52.143.52.15(1) 4 3 1 1 (2) 4 2 2 2 (3) 3 2 1 22.16(1) 0 0 (2) 100 100 (3) 2 2 (4) 1 1(5) 20 20 (6) 114 1152.17(1) –y*y*y*y*(a*a-b*b) (2) sin(y/sqrt(x*x+y*y))(3) sqrt(1+3.14/2*tan(48.5/180*3.14))(4) a/x/(a/(a+y)+b/(a+b/(a+b/z)))(5) p*q*(r+1)*(r+1)/((r+1)*(r+1)-1)(6) fabs(3-exp(-x)*log(fabs(1+x)))2.20 #include “stdio.h”void main(){long a;int b; double x;float y;scanf(“%l d%d%l f%f”,&a,&b,&x,&y);printf(“a=%l o,b=%.0f,x=%0G,y=%Lg\n”,a,(float)b,x,(long double)y);}2.22#include “stdio.h”#inclu de “math.h”void main(){ double a,b,c,p,s;printf(“Input a b c:”);scanf(“%lf%lf%lf”,&a,&b,&c);p=0.5*(a+b+c);s=sqrt(p*(p-a)*(p-b)*(p-c));printf(“s=%.4f\n”,s);}2.23解:第1月开始: a(尚未还清的借款本金)第2月开始: a(1+p)-x第3月开始: (a(1+p)-x)(1+p)-x=a(1+p)2-x(1+p)-x第4月开始: (a(1+p)2-x(1+p)-x)(1+p)-x=a(1+p)3-x(1+p)2-x(1+p)-x…第n+1月开始:a(1+p)n -x((1+p)n-1+(1+p)n-2+…+1)=0 于是()1)1(1)1(1))1(1(1)1(1)1()1()1(21-++=+-+-+=+⋅⋅⋅+++++=--nnnn n n n p pp a p p p a p p p a x#include "stdio.h" #include "math.h" void main(){ double a,p,x;int n;printf("Input a n p:");scanf("%lf%d%lf",&a,&n,&p); x=a*p*pow(1+p,n)/(pow(1+p,n)-1); printf("x=%.2f\n",x); }输入a n p 为100000 120 0.004,输出为1050.91第三章 选择结构与循环结构3.3 a=2, b=1, c=2 3.4 x=10, y=6 3.5 BCD153.6 循环体共执行了3次,输出为: 12 9 3.7 abcd43.8 解:a 的值就是循环体被执行的次数 先分析内两层循环: 最内层循环次数 j=1 1 j=2 2 ... ... j=i i 总计: 1+2+ (i)2)1(+i i由于i 从1循环到n-1,因此,总的循环次数是4)1(12)12)(1(21212)1(1111112nn n n n i i i i n i n i n i -+++=+=+∑∑∑-=-=-=3.9 BF3.10#include <stdio.h> main(){ char c,i , ;long s =0; for(i=1;i<=10;i++) ; { c=getchar();if(…1‟<=c<=‟9‟ c>=‟1‟&&c<=‟9‟) putchar(c);else if(c= =‟0‟) putchar(…*‟);else s+=(long)c*c;printf(“\ns=%d\n”,s);}printf(“\ns=%l d\n”,s);}3.12 解:/* if 语句求解*/#include “stdio.h”void main(){ double I,p=0;printf(“Input I=”);scanf(“%lf”,&I);if(I>100) { p+=(I-100)*0.01; I=100; } if(I>60) { p+=(I-60)*0.015;I=60; }if(I>40) { p+=(I-40)*0.03;I=40; }if(I>20) { p+=(I-20)*0.05;I=20; }if(I>10) { p+=(I-10)*0.075;I=10; }p+=I*0.1;printf(“p=%f\n”,p);}/* switch语句求解*/#include “stdio.h”void main(){ double I, p=0;printf(“Input I=”);scanf(“%lf”,&I);if(I>=100) { p+=(I-100)*0.01;I=100; } swith((int)(I/10)){ case 10: case 9:case 8:case 7:case 6: p+=(I-60)*0.015;I=60;case 5:case 4:p+=(I-40)*0.03;I=40;case 3:case 2:p+=(I-20)*0.05; I=20;case 1:p+=(I-10)*0.075;I=10;default:p+=I*0.1;}printf(“p=%f\n”,p);}3.19 解:#include “stdio.h”void main(){ int s1,s2,s3; float av; char level;while(1){ printf(“Input three scores of one student:\n”); scanf(“%d%d%d”,&s1,&s2,&s3); if(s1<0||s2<0||s3<0) break; av=(s1+s2+s3)/3.0F; switch((int)(av/10)){ case 9:case 10: level=‟A ‟;break; case 8:level=‟B‟;break; case 7:level=‟C‟;break; case 6:level=‟D‟;break; default:level=‟F‟; }printf(“level=%c \n”,leve l); } }第四章 基本程序设计技术4.3 解:#include “stdio.h” void main(){ double s,a;int k,n;printf(“Input n=”);scanf(“%d”,&n); s=0;a=1;for(k=0;k<=n;k++) { s+=a;a=(n+1)*a;} printf(“s=%.0f \n”,s); }4.4 根据本章打印杨辉三角形例题中组合数的递推计算方法计算组合数:m n C ,要求输入n 、m 值,输出组合数。
经典C++源程序

求数组最大值,最小值及其下标# include<iostream.h>void cout_max(void*p,int x,int n){int max=0,min=0;if(x==4){float*p1;p1=(float*)p;for(int i=1;i<n;i++){if(p1[i]>p1[max])max=i;if(p1[i]<p1[min])min=i;}cout<<"float型数组中:\n";cout<<"最大值为:"<<p1[max]<<"其下标为:"<<max<<endl;cout<<"最小值为:"<<p1[min]<<"其下标为:"<<min<<endl;}if(x==8){double*p1;p1=(double*)p;for(int i=1;i<n;i++){if(p1[i]>p1[max])max=i;if(p1[i]<p1[min])min=i;}cout<<"double型数组中:\n";cout<<"最大值为:"<<p1[max]<<"其下标为:"<<max<<endl;cout<<"最小值为:"<<p1[min]<<"其下标为:"<<min<<endl;}}void main(){float a[]={12.3,25.3,21,36,21.0,54.32,1,9,8.53,4};double b[]={12.3,60,25.3,21,21.0,54.32,1,0.56,9,8.53,4};cout_max(a,sizeof(a[0]),sizeof(a)/sizeof(a[0]));cout_max(b,sizeof(b[0]),sizeof(b)/sizeof(b[0]));}统计字母,数字等各类字符# include<iostream.h># include<string.h>void choose(char*p,int n){int sum1=0,sum2=0,sum3=0,sum4=0;for(int i=0;i<n;i++){if(p[i]>='A'&&p[i]<='z'||p[i]>='a'&&p[i]<='z')sum1++;if(p[i]==' ')sum2++;if(p[i]>='0'&&p[i]<='9')sum3++;elsesum4++;}cout<<"统计结果为:\n";cout<<"字母总数为:"<<sum1<<endl;cout<<"空格总数为:"<<sum2<<endl;cout<<"数字总数为:"<<sum3<<endl;cout<<"其他字符总数为:"<<sum4<<endl;}void main(){char ch[100];cout<<"请输入一段字符";cin.getline(ch,81);choose(ch,strlen(ch));}用调用函数,实现从两个数为输出较大者(要求用指针变量传递参数值# include<iostream.h>void cout_max(float*a,float*b){cout<<"最大数为:"<<((*a>*b)?*a:*b);cout<<endl;}void main(){float a,b;cout<<"请输入要比较的两个数:\n";cin>>a>>b;cout_max(&a,&b);}坐标系下的坐标转化为极坐标下的坐标# include<iostream.h># include<math.h>void cout_change(float&x,float&y){float c,q;x=sqrt(x*x+y*y);y=atan(y/x);}void main(){float x,y;cout<<"请输入直角坐标系下的坐标:\n";cout<<"x=";cin>>x;cout<<"y=";cin>>y;cout_change(x,y);cout<<"极坐标系下的坐标为:\n";cout<<"c="<<x<<endl;cout<<"q="<<y<<endl;}C++程序链表例题# include<iostream.h># include<string.h>struct node{char num[12];char name[20];int age;node*next;};struct LikedList{node*head;int size;};struct student{char num[12];char name[20];int age;};LikedList create(){LikedList list;node*p;p=new node;list.head=p;list.size=0;strcpy(p->name,"0");strcpy(p->num,"0");p->age=0;p->next=NULL;return list;}LikedList create(student*a,int n){LikedList list=create();list.size=n;node*p1,*p2;p2=list.head;for(int i=0;i<n;i++){p1=p2;p2=new node;strcpy(p2->num,(a+i)->num);strcpy(p2->name,(a+i)->name);p2->age=(a+i)->age;p1->next=p2;}p2->next=NULL;return list;}void search(LikedList&list,int a){node*p1,*p2;p2=list.head;int sum=0;for(int i=0;p2->next!=NULL;i++){p1=p2;p2=p2->next;if(p2->age==a){cout<<"在链表中找到一个这个年龄的学生,并已删除该结点!\n";p1->next=p2->next;delete p2;p2=p1;sum++;list.size--;}}if(sum!=0){cout<<"共删除"<<sum<<"个结点\n";}else{cout<<"无该年龄的学生,该结点已插入到链表尾端。
课后习题七(第八、九、十章)

课后习题(第八、九、十章)1、CPU是指( B )A. 控制器B. 运算器和控制器C. 运算器、控制器和主存D. 运算器、控制器、主存和I/O2、指令周期是( C )A. CPU执行一条指令的时间B. CPU从主存取出一条指令的时间C. CPU从主存取出一条指令加上执行这条指令的时间D. 对应于不同的指令,时间长短一致3、同步控制是( B )A. 只适用于CPU控制的方式B. 由统一时序信号控制的方式C. 所有指令执行时间都相同的方式D. 具有应答联络控制信号的方式4、异步控制常用于( A )A. CPU访问外设时B. 微程序控制中C. 微型机的CPU控制中D. CPU访问主存时5、下列说法中( C )是正确的A. 指令周期等于机器周期B. 指令周期小于机器周期C. 指令周期大于机器周期D. 指令周期是机器周期的两倍6、下列说法中( A )是错误的A. 计算机的速度完全取决于主频B. 计算机的速度不完全取决于主频C. 计算机的速度与主频、机器周期内平均含主振周期数有关D. 计算机的速度与机器的平均指令执行速度有关24、微程序控制器中,机器指令与微指令的关系是( B )A. 每一条机器指令由一条微指令来执行B. 每一条机器指令由一段微指令编成的微程序来解释执行C. 一段机器指令组成的程序可由一个微程序来执行D. 一段机器指令组成的程序可由一条微指令来执行26、Intel 8086 CPU是( B )A. 8位微处理器B. 16位微处理器C. 32位微处理器D. 准16位微处理器28、控制器的控制方式中,局部控制( B )A. 和异步控制相同,都不存在基准时标系统B. 属于同步控制,它和中央控制的基准时标是保持同步的C. 属于同步控制并有独立的时标系统,与中央控制的基准时标系统无关D. 属于异步控制,它和中央控制的基准时标应答联络33、隐指令是指( B )A. 操作数隐含在操作码中的指令B. 指令系统中没有的指令C. 在一个机器周期里完成全部操作的指令D. 用户特殊使用的指令34、中断向量可提供( C )A. 被选中设备的地址B. 传送数据的起始地址C. 中断服务程序入口地址D. 主程序的断点地址36、同步通讯之所以比异步通讯具有较高的传输率是因为( E )A. 同步通讯不需要应答信号B. 同步通讯方式的总线长度较短C. 同步通讯用一个公共的时钟信号进行同步D. 同步通讯中各部件存取时间比较接近E. 以上各项因素综合的结果40、下述( D )种情况会提出中断请求A. 产生存储周期“窃取”B. 一次I/O操作结束C. 两数相加结果溢出D. 上述B、C两项41、中断发生时,程序计数器内容的压栈保护,是由( C )完成的A. 压栈指令B. 转移指令C. 中断隐指令D. 中断服务程序44、在中断响应周期,置“0”中断允许触发器是由( A )完成的A. 硬件自动B. 关中断指令C. 程序员在编制中断服务程序时设置的D. 开中断指令45、采用DMA方式传送数据时,每传送一个数据要占用( C )的时间A. 一个指令周期B. 一个机器周期C. 一个存储周期D. 一个时钟周期46、DMA 方式( B )A. 既然能用于高速外围设备的信息传送,也就能代替中断方式B. 不能取代中断方式C. 是一种纯粹的软件方式D. 是一种操作时与主存无关的操作方式47、I/O编址方式通常可分为统一编址和不统一编址,( B )A. 统一编址就是将I/O地址看作是存储器地址的一部分,可用专门的I/O指令对设备进行访问B. 不统一编址是指I/O地址和存储器地址是分开的,所以对I/O访问必须有专门的I/O指令C. 统一编址是指I/O地址和存储器地址是分开的,所以用访存指令实现CPU对设备的访问D. 不统一编址就是将I/O地址看作是存储器地址的一部分,但对I/O访问必须有专门的I/O指令48、带有处理器的终端一般被称为( B )A. 交互式终端B. 智能终端C. 远程终端D. 移动终端49、目前在小型机和微型机里普遍采用的字母与字符编码是( C )A. BCD码B. 十六进制代码C. ASCII码D. 补码以下为书上相关例题50、某机器字长16位,主存按字节编址,转移指令采用相对寻址,由2字节组成,第一个字节为操作码字段,第二字节为相对位移量字段。
编译原理例题与习题解答

G2(S): S→AB A→aA|ε B→bBc|bc
L3={anbnambm| m,n≥0} G3(S): S→AB A→aAb|ε B→aBb|ε
20
编译原理
L4={1n 0m 1m 0n| n,m≥0} 可以看成是两部分: 中间部分是 0m 1m : A→ 0A1 | ε 剩下两边的部分就是: S→ 1S0 | A 所以G4[S]可以写为: S→ 1S0 | A A→ 0A1 |ε
S i S e S i S S
i
S
i
i
i
S e S
i i
结论:因为该文法存在句子iiiei对应两棵 不同的语法树,因而该文法是二义的。
编译原理
18
10. 把下面文法改写成无二义性的文法 S->SS | (S) | ( )
解答: S-> TS | T T->(S) | ( )
编译原理
19
11、给出下面语言的相应文法 L2={aibncn| n≥1,i≥0}
编译原理
21
例题与习题解答
第三章
22
非确定有限自动机状态图的改造
1. 假定NFA M=<S, , , S0, F>,我们对M的 状态转换图进行以下改造:
1) 引进新的初态结点X和终态结点Y,X,YS, 从X到S0中任意状态结点连一条箭弧, 从F 中任意状态结点连一条箭弧到Y。
2) 对M的状态转换图进一步施行替换,其中k是 新引入的状态。
法G是一个四元式G=(VT,VN,S,P),其中
VT:终结符集合(非空)
VN:非终结符集合(非空),且VT VN=
S:文法的开始符号,SVN
P:产生式集合(有限),每个产生式形式为
ex2_10-数值微分法例题源程序及注释

SUBROUTINE LGRG2(X,Y,N,T,Z) DIMENSION X(N),Y(N) DOUBLE PRECISION X,Y,T,Z,S Z=0.0 IF(N.LE.0)RETURN IF(N.EQ.1)THEN Z=Y(1) RETURN END IF IF(N.EQ.2)THEN Z=(Y(1)*(T-X(2))-Y(2)*(T-X(1)))/(X(1)-X(2)) RETURN END IF IF(T.LE.X(2))THEN K=1 M=3
!非线性问题转化为线性问题
!调用线性回归子程序 !反应级数 !速率常数
! 程序结束
SUBROUTINE CF(N,H,X,Y,Z) DIMENSION X(N),Y(N),Z(N) DOUBLE PRECISION X,Y,Z,H,T,YA,YB T=X(1)+H CALL LGRG2(X,Y,N,T,YA) T=X(1)+2*H CALL LGRG2(X,Y,N,T,YB) Z(1)=(4*YA-3*Y(1)-YB)/(2*H)
!线性回归子程序
!子程序结束 !拉格朗日插值子程序
ELSE IF(T.GE.X(N-1))THEN K=N-2 M=N
ELSE
K=1
M=N
10 IF(IABS(K-M).NE.1)THEN
L=(K+M)/2
IF(T.LT.X(L))THEN
M=L
ELSE
K=L
ENDIF
GOTO 10
ASP网络应用程序设计教程(第二版)例题源代码

ASP_SE 各章示例代码
【例 1.1】简单静态 HTML 网页示例 <!-- File Name: 世界你好.htm --> <html> <head> <title> 简单静态网页示例 </title> </head> <body> <p align="center"><font color="blue">Hello World!</font></p> <p align="center"><font face="黑体">世界你好!</font></p> </body> </html>
src = "left.htm" >
totay = Date() theTime = Time() If left(theTime,2)> "12" Then
Response.Write "<H3>下午好!</H3>" Else
Response.Write "<H3>上午好!</H3>" End If %> 今天是 <%=totay%>,时间 <%=theTime%> </body> </html>
【例 1.2】客户端动态网页示例 <!-- File Name: hello.htm --> <html> <head> <script language="JavaScript"> function getname(str) {alert("您好! "+ str+"!");} </script> </head> <body> 请输入您的姓名: <form> <input type="text" name="name" onBlur="getname(this.value)" value=""> </form> </body> </html>
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例10.1 设系统的微分方程为:
⎪⎩⎪⎨⎧==-t e
x x t x x 5.02'22'1 试建立系统仿真模型。
例10.2 利用Simulink 构建函数曲线y=5t 2+16。
例10.3 利用Simulink 仿真求I=⎰
+10)1ln(dx x x 。
例10.4 有初始状态为0的二阶微分方程x"+0.2x'+0.4x=0.2u (t), 其中u(t)是单位阶跃函数,试建立系统模型并仿真。
例10.5 PID 控制器是在自动控制中经常使用的模块,在工程应用中其标准的数学模型为
)()/11()(s E N
s T s T s T K s U d d i p ++= 其中采用了一阶环节来近似纯微分动作,为保证有良好的微分近似的效果,一般选N ≥10。
试建立PID 控制器的模型并建立子系统。
例10.6 利用使能子系统构成一个正弦半波整流器。
例10.7 利用触发子系统将一锯齿波转换成方波。
例10.8 采用S 函数实现模块y=nx ,即模块的功能是把一个输入信号n 倍以后再输出。
(1) 利用MATLAB 语言编写S 函数。
程序如下:
%*************************************************
%S 函数timesn.m ,其输出是输入的n 倍
%*************************************************
function [sys,x0,str,ts]=timesn(t,x,u,flag,n)
switch flag,
case 0 %初始化
[sys,x0,str,ts]=mdlInitializeSizes;
case 3 %计算输出量
sys=mdlOutputs(t,x,u,n);
case {1,2,4,9} %未使用的flag 值
sys=[];
otherwise %出错处理
error(['Unhandle flag=',num2str(flag)]);
end
%*************************************************
%mdlInitializeSizes :当flag 为0 时进行整个系统的初始化
%*************************************************
function [sys,x0,str,ts]=mdlInitializeSizes(T)
%调用函数simsizes 以创建结构体sizes
2
sizes=simsizes;
%用初始化信息填充结构体sizes
sizes.NumContStates=0; %无连续状态
sizes.NumDiscStates=0; %无离散状态
sizes.NumOutputs=1; %有一个输出量
sizes.NumInputs=1; %有一个输入信号
sizes.DirFeedthrough=1; %输出量中含有输入量 sizes.NumSampleTimes=1; %单个采样周期
%根据上面的设置设定系统初始化参数
sys=simsizes(sizes);
%给其他返回参数赋值。
x0=[]; %设置初始状态为零状态
str=[]; %将str 变量设置为空字符串 ts=[-1,0]; %假定继承输入信号的采样周期 %初始化子程序结束
%************************************************* %mdlOutputs :当flag 值为3时,计算输出量
%************************************************* function sys=mdlOutputs(t,x,u,n)
sys=n*u;
%输出量计算子程序结束。
(2) 模块的封装与测试。
例10.9 采用S 函数来构造非线性分段函数。
2
2
13133(3)342452(5)5616x x x x y x x x x ⎧<⎪≤<⎪⎪--≤<⎪=⎨≤<⎪⎪--≤<⎪≥⎪⎩
(1) 利用MATLAB 语言编写S 函数。
程序如下: function [sys,x0,str,ts]=sfunction(t,x,u,flag) switch flag,
case 0,
[sys,x0,str,ts]=mdlInitializeSizes;
case 3,
sys=mdlOutputs(t,x,u);
case {1,2,4,9}
sys=[];
otherwise
error(['Unhandled flag=',num2str(flag)]); end
function[sys,x0,str,ts]=mdlInitializeSizes sizes= simsizes;
sizes.NumContStates= 0;
sizes.NumDiscStates= 0;
sizes.NumOutputs= 1;
sizes.NumInputs= 1;
sizes.DirFeedthrough= 1;
sizes.NumSampleTimes= 1;
sys=simsizes(sizes);
x0=[];
str=[];
ts=[0 0];
function sys=mdlOutputs(t,x,u)
if u<1
sys=3*sqrt(u);
elseif u>=1&u<3
sys=3;
elseif u>=3&u<4
sys=3-(u-3)^2;
elseif u>=4&u<5
sys=2;
elseif u>=5&u<6
sys=2-(u-5)^2;
else
sys=1;
end
(2) 模块的测试。
3。