程序的运行结果
程序运行结果的流程
程序运行结果的流程下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!1. 程序开始:当你运行程序时,计算机将开始执行程序中的指令。
2. 输入数据:程序可能会要求你输入两个数,例如通过命令行界面或图形用户界面。
c语言程序的运行结果
c语言程序的运行结果在计算机编程中,C语言是一种常用的编程语言,被广泛应用于操作系统、嵌入式系统和各种应用程序的开发中。
当我们编写C语言程序并执行时,我们总是期待看到程序正确地运行,并且能够输出正确的结果。
本文将探讨C语言程序的运行结果以及可能出现的一些情况。
一、程序的运行结果在C语言中,程序的运行结果取决于代码的逻辑和语法是否正确,并且还与输入数据和计算机的环境有关。
通常情况下,C语言程序会根据代码的指示执行相应的操作,最终产生一个或多个运行结果。
C语言程序的运行结果可以是以下几种情况之一:1. 正常输出结果:当程序按照预期执行,并且输出与预期一致时,我们称之为正常的运行结果。
2. 错误输出结果:当程序在执行过程中发生错误,并且输出与预期不一致时,我们称之为错误的运行结果。
这可能是由于代码逻辑错误、语法错误、输入数据错误或者计算机环境问题等引起的。
二、常见的运行结果1. 正常输出当C语言程序按照预期执行时,它们可能会输出一些信息,例如计算结果、文本信息或者其他形式的数据。
这些输出结果通常在控制台窗口中显示,并且与程序设计的意图一致。
例如,以下是一个简单的C语言程序,用于计算两个整数的和并输出结果:```c#include <stdio.h>int main() {int a = 10;int b = 20;int sum = a + b;printf("The sum is: %d\n", sum);return 0;}```运行上述程序,它将输出:```The sum is: 30```可以看到,这是一个正常的运行结果,与我们的预期一致。
2. 错误输出C语言程序在执行过程中也可能遇到各种错误情况,并产生错误的运行结果。
这些错误输出通常包含错误信息和错误代码,用于提示开发者程序出现了何种错误情况。
例如,以下是一个简单的C语言程序,用于除法运算,但在除数为0的情况下会产生错误:```c#include <stdio.h>int main() {int dividend = 20;int divisor = 0;int quotient = dividend / divisor;printf("The quotient is: %d\n", quotient);return 0;}```运行上述程序,它将输出:```Floating point exception (core dumped)```这是一个错误的运行结果,由于除数为0导致了浮点异常的错误。
写出下列程序运行结果
写出下列程序运行结果:理解PRINTA=5:B=3PRINT A,B,A+BENDX=9:Y=7PRINT "X=";X,"Y=";YPRINT "X+Y=";X;"+";Y;"=";X+Y ENDA=4:B=7PRINT "C=";A+B*2-A/2END理解变量(包括字符串变量)X=6:Y=0PRINT X-2,X=X+7PRINT “Y=”;X+2PRINT YENDM=12:N=6X=M/N:Y=M+NPRINT X,YX=X+N:Y=M+XPRINT X,YENDA=7:B=4A=A+B:B=A-B:A=A-BPRINT “A=”;A,”B=”;BEND A$=”123”:B$=”321”C$=A$+B$PRINT A$;”+”;B$;”=”;C$END理解INPUTINPUT X,YC=X*YPRINT “C=”;CEND? 4, 8INPUT “A,B=”;A,BD=A+A+B+BPRINT DENDA,B=? 2,3绘图语句SCREEN 12LINE (100,100)-(400,300),2,B LINE (100,100)-(400,300),2 ENDSCREEN 12LINE (100,100)-(400,100) LINE –(100,300)LINE –(100,100)ENDSCREEN 12CIRCLE (200,200),100LINE (200,100)-(200,300) LINE (200,200),(300,200)END简单函数A=12.34: B=-5.34: C=0D=A*A: E=B*BPRINT ABS(A),ABS(B),ABS(C)PRINT FIX(A),FIX(B),FIX(C)PRINT SQR(D),SQR(E)ENDA=3.14: B=A^2: C=-AD=FIX(A):E=ABS(C):F=SQR(B)PRINT ABS(D),E,FEND子字符串函数A$=”123456789”L$=LEFT$(A$,4)+MID$(A$,3,3)+RIGHT$(A$,2) PRINT L$ENDA$=”I am a student.”B$=”I like sing.”C$=”I often use computer.”D$=LEFT$(A$,2)+MID$(B$,3,5)+RIGHT$(C$,9) PRINT “D$=”;D$END读数置数语句READ A,B,CPRINT A,B+CDATA 3,2,5ENDREAD X,YPRINT “X=”;X,”Y=”;YREAD XPRINT X,Y DATA 3,2,5ENDM=0 : READ A : M=M+A READ B : M=M+BPRINT MDATA 21,34,26END理解循环语句FOR I=1 TO 10 STEP 3PRINT “I=”;I,”I^2=”;I*I NEXT IENDM=0FOR A=2 TO 10 STEP 3M=M+ANEXT APRINT “M=”;M, “P=”;M/3 END双重循环FOR A=1 TO 3FOR B=4 TO 5PRINT A,BNEXT BNEXT AENDFOR X=6 TO 10 STEP 2FOR Y=5 TO 3 STEP –2PRINT X-YNEXT YNEXT X掌握IF选择结构语句INPUT XIF X>=10 THEN Y=0.5*X ELSE Y=0.4*X PRINT “X=”;X, “Y=”;YEND第一次运行:?12第二次运行:?8A=5: B=6INPUT CIF C=A+B THENPRINT “RIGHT!”ELSEPRINT “WRONG!”END IF第一次运行:?12第二次运行:?11INPUT XIF X<0 THEN X=-XPRINT “X=”; XEND? –12READ XFOR I=1 TO 5READ HIF H>X THEN X=HNEXT IPRINT “MAX=”; XDATA 2,4,3,2,1,3FOR I=1 TO 5READ X, Y IF X>=70 AND Y>=70 THEN PRINT X,Y NEXT IDATA 78,98,77,66,55,77,78,78,90,90 ENDN=0FOR I=1 TO 5READ A,BIF A>B THEN N=N+1NEXT IPRINT “N=”; NDATA 78,98,77,66,55,77,78,78,95,90子程序:SUB FMPRINT “WHO ARE YOU?”END SUBSUB ZCX1PRINT “I am a good boy.”END SUBSUB ZCX2PRINT “I am a good girl.”END SUB主程序:CLSCALL FMCALL ZCX1CALL ZCX2END此题的子程序与上一题一样:主程序:INPUT NIF N=1 THEN CALL ZCX1IF N=2 THEN CALL ZCX2END? 1答案:理解PRINT5 3 8X=9 Y=7X+Y=9+7=16C=16理解变量(包括字符串变量)4 Y=152 188 20A=4 B=7123+321=123321理解INPUTC=3210绘图语句简单函数12.34 5.34 012 -5 0 12.34 5.343 3.14 3.14123434589I like computer.读数置数语句3 7X=3 Y=25 255I=1 Y^2=1I=4 Y^2=16I=7 Y^2=49I=10 Y^2=100M=15 P=5双重循环1 41 52 42 53 43 5133557掌握IF选择结构语句第一次运行:X=12 Y=6第二次运行:X=8 Y=3.2第一次运行:WRONG!第二次运行:RIGHT!X=12MAX=478 9878 7890 90N=2WHO ARE YOU?I am a good boy.I am a good girl.I am a good boy.。
实验程序运行结果及分析讨论
实验程序运行结果及分析讨论程序运行结果如图10.1.1所示。
实验内容(2)系统的单位冲响应、系统对)()(81n R n x =和)()(2n u n x =的响应序列分别如图(a)、(b)和(c)所示;实验内容(3)系统h 1(n)和h 2(n)对)()(81n R n x =的输出响应分别如图(e)和(g)所示; 实验内容(4)系统对)(n u 和)4.0sin()014.0sin()(n n n x +=的响应序列分别如图(h)和(i)所示。
由图(h)可见,系统对)(n u 的响应逐渐衰减到零,所以系统稳定。
由图(i)可见,系统对)4.0sin()014.0sin()(n n n x +=的稳态响应近似为正弦序列sin(0.4)n ,这一结论验证了该系统的谐振频率是0.4 rad 。
nh (n )(a) 系统单位脉冲响应h(n)ny 1(n )(b) 系统对R8(n)的响应y1(n)ny 2(n )(c) 系统对u(n)的响应y2(n)nh 1(n )(d) 系统单位脉冲响应h1(n)ny 21(n )(e) h1(n)与R8(n)的卷积y21(n)nh 2(n )(f) 系统单位脉冲响应h2(n)ny 22(n )(g) h2(n)与R8(n)的卷积y22(n)ny 31(n )(h) 谐振器对u(n)的响应y31(n)ny 32(n )(i) 谐振器对正弦信号的响应y32(n)实验程序运行结果1 时域采样理论的验证程序运行结果exp2a.m如图10.3.2所示。
由图可见,采样序列的频谱的确是以采样频率为周期对模拟信号频谱的周期延拓。
当采样频率为1000Hz时频谱混叠很小;当采样频率为300Hz时,在折叠频率150Hz附近频谱混叠很严重;当采样频率为200Hz时,在折叠频率110Hz附近频谱混叠更很严重。
图10.2.22 时域采样理论的验证程序exp2b.m运行结果如图10.3.3所示。
MATLAB程序运行结果
close all %关闭打开了的所有图形窗口clc %清屏命令clear %清除工作空间中所有变量%定义时间范围t=[0:pi/10:8*pi];y=sin(t);plot(t,y,'b:square')close allclcclear%定义时间范围t=[0:pi/20:9*pi];grid onhold on %允许在同一坐标系下绘制不同的图形plot(t,sin(t),'r:*')plot(t,cos(t))plot(t,-cos(t),'k')%grid on %在所画出的图形坐标中添加栅格,注意用在plot之后4-1:close allclcclear%定义时间范围t=[0:pi/20:9*pi];hold on %允许在同一坐标系下绘制不同的图形plot(t,sin(t),'r:*')plot(t,cos(t))plot(t,-cos(t),'k')grid on %在所画出的图形坐标中添加栅格,注意用在plot之后hold off %覆盖旧图,自动把栅格去掉,且若要在加入栅格就%必须把grid on加在plot后面plot(t,-sin(t))grid on%主程序exp2_10.mglobal a %声明变量a为全局变量x=1:100;a=3;c=prods(x) %调用子程序prods.m%子程序prods.m% function result=prods(x)% global a% result=a*sum(x);%声明了与主程序一样的全局变量a,以便在子程序中可以%使用主程序中定义的变量答案:15150exmdl2_1.mclearclose allclct=[0:pi/20:5*pi];figure(1)plot(t,out)grid onxlabel('time')ylabel('magnitude')exp2_1.mclc %清屏clear %从内存中清除变量和函数more onecho on%求矩阵与矩阵的乘积,矩阵与向量的乘积A=[5 6 7;9 4 6;4 3 6]B=[3 4 5;5 7 9;7 3 1]C=A*BY=A*Xmore offecho off答案:%求矩阵与矩阵的乘积,矩阵与向量的乘积A=[5 6 7;9 4 6;4 3 6]A =5 6 79 4 64 3 6B=[3 4 5;5 7 9;7 3 1]B =3 4 55 7 97 3 1X=[5 ;7;8]X =578C=A*BC =94 83 8689 82 8769 55 53Y=A*XY =12189more offecho offexp2_2.mclcclearmore onecho on%为便于理解,在程序等执行过程中显示程序的表达式a=16;b=12;c=3;d=4;e=a+b-c*df=e/2k=e\2h=c^3g=e+f+ ...2+1-9aa=sin(g)abs(aa)bb=2+3jcc=conj(bb)rbb=real(bb) log(rbb) sqrt(rbb) exp(rbb) echo off more offa=16;b=12;c=3;d=4;e=a+b-c*de =16f=e/2f =8k=e\2k =0.1250h=c^3h =27g=e+f+ ...2+1-9g =18aa=sin(g)aa =-0.7510abs(aa)ans =0.7510bb=2+3jbb =2.0000 +3.0000i cc=conj(bb)cc =2.0000 -3.0000i rbb=real(bb)rbb =2log(rbb)ans =0.6931sqrt(rbb)ans =1.4142exp(rbb)ans =7.3891echo offans =7.3891exp2_5.m%绘制单位圆clearclose allclc%定义时间范围t=[0:0.01:2*pi];x=sin(t);y=cos(t);plot(x,y)axis([-1.5 1.5 -1.5 1.5])%限定x轴和y轴的显示范围grid onaxis('equal')%axis([xmin,xmax,ymin,ymax])函数来调整图轴的范围:答案:exp2_5_.mclearclose allclct=[0:pi/20:5*pi];plot(t,sin(t),'r:*')axis([0 5*pi -1.5 1.5 ])%给x轴和y轴命名xlabel('t(deg)')ylabel('magnitude')%给图形加标题title('sine wave from zero to 5\pi')%在指定位置创建说明性文字text(pi/2,sin(pi/2),'\bullet\leftarrow The sin(t) at t=2')%图形文字标示命令的使用clearclose allclct=[0:pi/20:5*pi];plot(t,sin(t),'r:*')axis([0 5*pi -1.5 1.5 ])%给x轴和y轴命名xlabel('t(deg)')ylabel('magnitude')%给图形加标题title('sine wave from zero to 5\pi')%在指定位置创建说明性文字text(pi/2,sin(pi/2),'\bullet\leftarrow The sin(t) at t=2') %输入特定的字符%\pi%\alpha%\leftarrow%\rightarrow%\bullet(点号)hold onplot(t,cos(t))%区分图形上不同的曲线legend('sin(t)','cos(t)')%用鼠标在特定位置输入文字gtext('文字标示命令举例') hold offexp2_6.m%图形分割命令的使用clearclose allclct=[0:pi/20:5*pi];subplot(321)plot(t,sin(t))axis([0 16 -1.5 1.5]) xlabel('t(deg)') ylabel('magnitude') grid ontitle('sin(t)') subplot(322)plot(t,-sin(t))axis([0 16 -1.5 1.5]) xlabel('t(deg)') ylabel('magnitude') grid ontitle('-sin(t)') subplot(323)plot(t,cos(t))axis([0 16 -1.5 1.5]) xlabel('t(deg)') ylabel('magnitude') grid ontitle('cos(t)') subplot(324)plot(t,-cos(t))axis([0 16 -1.5 1.5]) xlabel('t(deg)') ylabel('magnitude') grid ontitle('-cos(t)') subplot(325) subplot(326)exp2_7.mclcclear%绘制对应于每个输入x的输出y的高度条形图subplot(221)x=[1 2 3 4 5 6 7 8 9 10];y=[5 6 3 4 8 1 10 3 5 6];bar(x,y)%绘制x1在以y1为中心的区间中分布的个数条形图subplot(222)x1=randn(1,1000);%生成1000个各随机数y1=-3:0.1:3;hist(x1,y1)%绘制y2对应于x2的梯形图subplot(223)x2=0:0.1:10;y2=1./(x2.^3-2.*x2+4);stairs(x2,y2)%绘制y3对应于x3的散点图subplot(224)x3=0:0.1:10;y3=1./(x2.^3-2.*x2+4);stem(x3,y3)exp2_8.mecho off % 不显示程序内容%clear allclearclca=4;b=6disp('暂停,请按任意键继续') % disp指令可以用来显示字符pause % 暂停,直到用户按任意键echo on% 显示程序内容,注意matlab默认是不显示c=a+b% 暂时把控制权交给键盘(在命令窗口中出现k提示符), % 输入return,回车后退出,继续执行下面的语句。
LU分解法程序及其运行结果
实验报告线性方程组的求解一.上机题目已知方程组为:x1-2*x2+2*x3=-2;2*x1-3*x2-3*x3=4;4*x1+x2+6*x3=3;分别用矩阵的三角分解法和高斯列主元消去法求方程组的解二.目的要求掌握用矩阵的三角分解法和高斯列主元消去法设计程序,从而实现对线性方程组的求解。
三.方法原理1.高斯消去法是通过逐步消元的方法把原方程组化为等价的上三角形方程组,然后回代的求解过程。
高斯列主元消去法是在高斯消去法第k步时,不取a[k][k]作为主元,而是取满足|a[r][k]|=max|a[i][k]|(k<=i<=n)的a[r][k]作为主元,若有多个r满足则取最小的,然后再去交换第r行与第k行;最后利用高斯消元法求解。
2. 矩阵的三角分解法是方程组的系数矩阵A可以分解为一个下三角阵L和一个上三角阵U的乘积,即A=LU,则AX=b为LUX=b,根据Ly=b和UX=y求出方程组的解。
其中求L,U的过程为:先计算U的第一行和L的第一列U[1][j]=a[1][j](1<=j<=n),L[i][1]=a[i][1]/U[1][1];然后根据U[k][j]=a[k][j]-∑L[k][r]*U[r][j](1<=r<=k-1;j=k,k+1,…n)和L[i][k]=(a[i][k]-∑L[i][r]*U[r][k])/U[k][k](1<=r<k-1;i=k+1,…n)计算出U的第k行和L的第k 列,从而求出L和U矩阵四.算法步骤(N-S流程图)1.矩阵的三角分解法算法步骤如下:Step1:计算U的第一行和L的第一列U的第一行:i=1时a[1][j]=L[1][1]*U[1][j]则U[1][j]=a[1][j] L[1][1]=1 (j=1,2,…n );L的第一列:j=1时a[i][1]=L[i][1]*U[1][1]则L[i][1]=a[i][1]/a[1][j] (i=2,3,…n);Step2:计算U的第二行和L的第二列U的第二行:i=2时a[2][j]=L[2][1]*U[1][j]+L[2][2]*U[2][j] L[2][2]=1则U[2][j]=a[2][j] –L[2][1]*U[1][j] (j=2,3,…n);L的第二列:j=2时 a[i][2]=L[i][1]*U[1][2]]+L[i][2]*U[2][2]则L[i][2]=(a[i][2]-L[i][1]*U[1][2])/U[2][2] (i=3,4,…n);Step3:假设已经进行了(k-1)步,得到了U的前k-1行和L的前k-1列,则计算U的第k行和L的第k列U的第k行:i=k时U[k][j]=a[k][j]-∑L[k][r]*U[r][j] (1<=r<=k-1;j=k,k+1,…n)L的第k列:j=k时L[i][k]=(a[i][k]-∑L[i][r]*U[r][k])/U[k][k] (1<=r<k-1;i=k+1,…n)Step4:利用L,U求解方程组的解根据A=L*U,A*X=y,从而得到 Ly=b和UX=y,然后根据高斯消元法的回代部分即可分别求出y和x2. 高斯列主元消去法算法步骤如下:Step1:选出列主元a[r][k]=max|a[i][k]| (k<=i<=n);Step2:判断方程组是否适合使用该方法求解若a[r][k]<e,则方程组不适合使用该方法求解,程序结束,否则进行下一步Step3:若r不等于k,交换r,k行Step4:高斯消元求解过程消元过程:当k=0,i=1时,令a[1][0]=a[1][0]/a[0][0];b[1]=b[1]-a[1][0]*b[1]; j=1时a[1][1]=a[1][1]-a[1][0]*a[0][1]当消元进行到第k次时,令a[k][k-1]=a[k][k-1]/a[k-1][k-1]; b[k]=b[k]-a[k][k-1]*b[k]; j=k时a[k][k]=a[k][k]-a[k][k-1]*a[k][k-1]回代求解过程:b[n-1]=b[n-1]/a[n-1][n-1];当k=n-1时,b[k]=(b[k]-∑a[k][j]*b[j])/a[k][k](k+1<=j<=n;k=n-1,n-2,...1);返回值b[k]即为所求解。
MATLAB程序运行结果
closeall %关闭打开了的所有图形窗口clc %清屏命令clear%清除工作空间中所有变量%定义时间范围t=[0:pi/10:8*pi];y=sin(t);plot(t,y,'b:square')closeallclcclear%定义时间范围t=[0:pi/20:9*pi];grid onhold on %允许在同一坐标系下绘制不同的图形plot(t,sin(t),'r:*')plot(t,cos(t))plot(t,-cos(t),'k')%grid on %在所画出的图形坐标中添加栅格,注意用在pl ot之后4-1:closeallclcclear%定义时间范围t=[0:pi/20:9*pi];hold on %允许在同一坐标系下绘制不同的图形plot(t,sin(t),'r:*')plot(t,cos(t))plot(t,-cos(t),'k')grid on %在所画出的图形坐标中添加栅格,注意用在pl ot之后hold off %覆盖旧图,自动把栅格去掉,且若要在加入栅格就%必须把gri d on加在pl ot后面plot(t,-sin(t))grid on%主程序exp2_10.mglobal a %声明变量a为全局变量x=1:100;a=3;c=prods(x) %调用子程序p rods.m%子程序pro d s.m% functi on result=prods(x)% global a% result=a*sum(x);%声明了与主程序一样的全局变量a,以便在子程序中可以%使用主程序中定义的变量答案:15150exmdl2_1.mclearcloseallclct=[0:pi/20:5*pi];figure(1)plot(t,out)grid onxlabel('time')ylabel('magnit ude')exp2_1.mclc %清屏clear%从内存中清除变量和函数more onecho on%求矩阵与矩阵的乘积,矩阵与向量的乘积A=[5 6 7;9 4 6;4 3 6]B=[3 4 5;5 7 9;7 3 1]C=A*BY=A*Xmore offecho off答案:%求矩阵与矩阵的乘积,矩阵与向量的乘积A=[5 6 7;9 4 6;4 3 6]A =5 6 79 4 64 3 6B=[3 4 5;5 7 9;7 3 1]B =3 4 55 7 97 3 1X=[5 ;7;8]X =578C=A*BC =94 83 8689 82 8769 55 53Y=A*XY =12189more offecho offexp2_2.mclcclearmore onecho on%为便于理解,在程序等执行过程中显示程序的表达式a=16;b=12;c=3;d=4;e=a+b-c*df=e/2k=e\2h=c^3g=e+f+ ...2+1-9aa=sin(g)abs(aa)bb=2+3jcc=conj(bb)rbb=real(bb) log(rbb) sqrt(rbb) exp(rbb) echo off more offa=16;b=12;c=3;d=4;e=a+b-c*de =16f=e/2f =8k=e\2k =0.1250h=c^3h =27g=e+f+ ...2+1-9g =18aa=sin(g)aa =-0.7510abs(aa)ans =0.7510bb=2+3jbb =2.0000 +3.0000icc=conj(bb)cc =2.0000 -3.0000irbb=real(bb)rbb =2log(rbb)ans =0.6931sqrt(rbb)ans =1.4142exp(rbb)ans =7.3891echo offans =7.3891exp2_5.m%绘制单位圆clearcloseallclc%定义时间范围t=[0:0.01:2*pi];x=sin(t);y=cos(t);plot(x,y)axis([-1.5 1.5 -1.5 1.5])%限定x轴和y轴的显示范围grid onaxis('equal')%axis([xmin,xmax,ymin,ymax])函数来调整图轴的范围:答案:exp2_5_.mclearcloseallclct=[0:pi/20:5*pi];plot(t,sin(t),'r:*')axis([0 5*pi -1.5 1.5 ])%给x轴和y轴命名xlabel('t(deg)')ylabel('magnit ude')%给图形加标题title('sine wave from zero to 5\pi')%在指定位置创建说明性文字text(pi/2,sin(pi/2),'\bullet\leftar row The sin(t) at t=2')%图形文字标示命令的使用clearcloseallclct=[0:pi/20:5*pi];plot(t,sin(t),'r:*')axis([0 5*pi -1.5 1.5 ])%给x轴和y轴命名xlabel('t(deg)')ylabel('magnit ude')%给图形加标题title('sine wave from zero to 5\pi')%在指定位置创建说明性文字text(pi/2,sin(pi/2),'\bullet\leftar row The sin(t) at t=2') %输入特定的字符%\pi%\alpha%\leftar row%\righta rrow%\bullet(点号)hold onplot(t,cos(t))%区分图形上不同的曲线legend('sin(t)','cos(t)')%用鼠标在特定位置输入文字gtext('文字标示命令举例') hold offexp2_6.m%图形分割命令的使用clearcloseallclct=[0:pi/20:5*pi];subplo t(321)plot(t,sin(t))axis([0 16 -1.5 1.5]) xlabel('t(deg)') ylabel('magnit ude') grid ontitle('sin(t)')subplo t(322)plot(t,-sin(t))axis([0 16 -1.5 1.5]) xlabel('t(deg)') ylabel('magnit ude') grid ontitle('-sin(t)') subplo t(323)plot(t,cos(t))axis([0 16 -1.5 1.5]) xlabel('t(deg)') ylabel('magnit ude') grid ontitle('cos(t)')subplo t(324)plot(t,-cos(t))axis([0 16 -1.5 1.5]) xlabel('t(deg)') ylabel('magnit ude') grid ontitle('-cos(t)') subplo t(325) subplo t(326)exp2_7.mclcclear%绘制对应于每个输入x的输出y的高度条形图subplo t(221)x=[1 2 3 4 5 6 7 8 9 10];y=[5 6 3 4 8 1 10 3 5 6];bar(x,y)%绘制x1在以y1为中心的区间中分布的个数条形图subplo t(222)x1=randn(1,1000);%生成1000个各随机数y1=-3:0.1:3;hist(x1,y1)%绘制y2对应于x2的梯形图subplo t(223)x2=0:0.1:10;y2=1./(x2.^3-2.*x2+4);stairs(x2,y2)%绘制y3对应于x3的散点图subplo t(224)x3=0:0.1:10;y3=1./(x2.^3-2.*x2+4);stem(x3,y3)exp2_8.mecho off % 不显示程序内容%clearallclearclca=4;b=6disp('暂停,请按任意键继续') % disp指令可以用来显示字符pause% 暂停,直到用户按任意键echo on% 显示程序内容,注意matl ab默认是不显示c=a+b% 暂时把控制权交给键盘(在命令窗口中出现k提示符), % 输入retu rn,回车后退出,继续执行下面的语句。
写出下列程序的运行结果
P10-1. 写出下列程序的运行结果。
(2)P15-1. 写出下列字母的ASCII 码。
A____、B____、Y____、Z____、a____、b____、y____、z____ o____、l____、9____、+____、=____、$____、( ____、<____ (提示:如果记不起来,你可以让个程序来帮忙啊!) 2.写出下列程序的运行结果。
(2)3.找出下列程序中的错误,并改正。
(2)4.编一个程序,对你自己的姓名进行加密。
加密的方法是:取姓名每一个字母的ASCII 再加7,作为该字母对应的密码。
5.编一程序,求出微软公司名称“Microsoft ”中各个字符对应ASCII 码的和。
6.编个程序找出以下字符的前一个字符和后一个字符分别是什么? B E G J要求每行输出一个字符的前一个字符、该字符和它的后继字符,如第7.假设一个储物柜S 中有很多个格子,每个各自都编上不同的编号。
已知编号为65、66、67和68的格子中分别保存着标记为“A ”、“B ”、“C ”和“D ”的宝物。
65 66 67 68如果用S[65]表示编号为65的格子中的宝物,你知道其余的几种宝物该如何表示吗?P20-1.比较下列字符串的大小,并在横线上填上“>”“<”或“=”。
MS-DOS___Windows IE___Excel FrontPage___Word 2000___Win excel___exercise Power___Page 2.写出下列程序的运行结果。
3.找出下列程序中的错误,并改正它。
4.遍个程序算一算:下列微软公司的产品名称长度分别是多少?总长度是多少?Access、Excel、FrontPage、Outlook5.编程序比较你和爸爸的姓名(用拼音表示),将大的显示在前面,小的显示在后面。
P24-1.指出下列哪些不能作变量名使用,并说说理由。
Ty age pred S11 V AR END3 writeln d:= p_12 ord succ2 String integer x+y w8n k22.指出下列语句的错误,并改正:(1)win+3:=50(2)x2:=‟years‟(变量x2已说明为integer类型)(3)ky:=‟windows‟-…dows‟(想取得除“dows”以外的那部分字符)(4)p1:=p2:=a×b (想把a×b的值存入p1和p2两个变量)3.写出下列程序的运行结果。
写出程序运行结果和编程题03格式
写出程序运行结果1、下面程序的运行结果是:________void swap1(int c[]){ int t;t=c[0];c[0]=c[1];c[1]=t;}void swap2(int c0,int c1){ int t;t=c0;c0=c1;c1=t;}main( ){ int a[2]={2,4},b[2]={3,5};swap1(a); swap2(b[0],b[1]);printf(“%d %d %d %d\n”,a[0],a[1],b[0],b[1]); }2、下面程序的运行结果是:_____________main(){int a=2,ifor(i=0;i<3;i++)printf("%4d",ff(a));}ff(int a){int b=0;static int c=3;b++;c++;return(a+b+c);}3、下面程序的运行结果是:________main(){int i,j,k=10;for(i=0;i<2;i++){k++;{int k=0;for(j=0;j<=3;j++){if(j%2)continue;k++;}}k++;}printf("k=%d\n",k);}4、下面程序的运行结果:_________。
main(){int a,b,k=4,m=6,*p1=&k,*p2=&m;a=p1==&m;b=(-*p1)/(*p2)+7;printf("a=%d,",a);printf("b=%d\n",b);}5、以下程序运行结果:________。
funa(int a){int b=0;static int c=0;a=c++,b++;return (a);main(){int a=2,i,k;for(i=0;i<2;i++)k=fun(a++);printf("%d\n",k);}6、下面程序的运行结果:_____________struct stu{int num;char name[10];int age;}void fun(struct stu *p){printf("%s\n",(*p).name);}main(){struct stu students[3]={{2010,"zhang",20},{2011,"wang",19},{2012,"zhao",18};fun(students+2);}7、下面程序的运行结果是:_________。
程序注释及运行结果
第二部分程序注释及运行结果读者须知:为了便于读者理解,现将光盘上第一部分可直接在MATLAB6.I 下运行的MATLAB程序的编号和书本上的内容对应如下,每个程序题目括号内的file.m是对应书本上的内容在光盘上第一部分的程序编号。
第二章的随机序列产生程序例2.1 用乘同余法产生随机数(见光盘FLch2sjxleg1.m)①编程如下:A=6; N=100; %初始化;x0=1; M=255;for k=1:N %乘同余法递推100次;x2=A*x0; %x2和x0分别表示x i和x i-1;x1=mod (x2,M); %将x2存储器的数除以M,取余数放x1(x i)中;v1=x1/256; %将x1存储器的数除以256得到小于1的随机数放v1中;)存放在矩阵存储器v的第k列中,v(:,k) v(:,k)=v1; % 将v1中的数(i%表示行不变、列随递推循环次数变化;x0=x1; %x i-1= x i;v0=v1;end %递推100次结束;v2=v %该语句末无‘;’,实现矩阵存储器v中随机数放在v2中,%且可直接显示在MA TLAB的window中;k1=k;%grapher %以下是绘图程序;k=1:k1;plot(k,v,k,v,'r');xlabel('k'), ylabel('v');tktle('(0-1)均匀分布的随机序列')②程序运行结果如图2.5所示。
图2.5 采用MA TLAB产生的(0,1)均匀分布的随机序列图③产生的(0-1)均匀分布的随机序列在程序运行结束后,产生的(0,1)均匀分布的随机序列,直接从MATLAB的window 界面中copy出来如下(v2中每行存6个随机数):v2 =0.0234 0.1406 0.8438 0.0820 0.4922 0.96090.7852 0.7266 0.3750 0.2578 0.5508 0.31640.9023 0.4336 0.6094 0.6680 0.0234 0.14060.8438 0.0820 0.4922 0.9609 0.7852 0.72660.3750 0.2578 0.5508 0.3164 0.9023 0.43360.6094 0.6680 0.0234 0.1406 0.8438 0.08200.4922 0.9609 0.7852 0.7266 0.3750 0.25780.5508 0.3164 0.9023 0.4336 0.6094 0.66800.0234 0.1406 0.8438 0.0820 0.4922 0.96090.7852 0.7266 0.3750 0.2578 0.5508 0.31640.9023 0.4336 0.6094 0.6680 0.0234 0.14060.8438 0.0820 0.4922 0.9609 0.7852 0.72660.3750 0.2578 0.5508 0.3164 0.9023 0.43360.6094 0.6680 0.0234 0.1406 0.8438 0.08200.4922 0.9609 0.7852 0.7266 0.3750 0.25780.5508 0.3164 0.9023 0.4336 0.6094 0.66800.0234 0.1406 0.8438 0.0820第二章的白噪声产生程序例2.2 用乘同余法产生(见光盘FLch2bzsheg2.m)①编程如下:A=6; x0=1; M=255; f=2; N=100;%初始化;x0=1; M=255;for k=1: N %乘同余法递推100次;x2=A*x0; %分别用x2和x0表示x i+1和x i-1;x1=mod (x2,M); %取x2存储器的数除以M的余数放x1(x i)中;v1=x1/256; %将x1存储器中的数除以256得到小于1的随机数放v1中;)减去0.5再乘以存储器f中的系数,存放v(:,k)=(v1-0.5 )*f; %将v1中的数(i在矩阵存储器v的第k列中,v(:,k)表示行不变、列随递推循环次数变化;x0=x1; % x i-1= x i;v0=v1;end %递推100次结束;v2=v %该语句后无‘;’,实现矩阵存储器v中随机数放在v2中,且可直接显示在MA TLAB的window中;k1=k;%grapher %以下是绘图程序;k=1:k1;plot(k,v,k,v,'r');xlabel('k'), ylabel('v');tktle(' (-1,+1)均匀分布的白噪声')②程序运行结果如图2.6所示。
C语言程序及其运行结果一览表
关于数组1.利用一维数组输出0~20的偶数程序:#include<stdio.h>void main(void){int x[20],i;for(i=0;i<20;i++)x[i]=i;for(i=0;i<20;i+=2)printf("%3d\n",x[i]);}结果:2.求Fibonacci数列的前二十项程序:#include<stdio.h>void main(void){int i;int f[20]={1,1};for(i=2;i<20;i++){f[i]=f[i-2]+f[i-1];}for(i=0;i<20;i++){if (i%5==0)printf("\n");printf("%5d",f[i]);}printf("\n");}结果:3.求10个整形数中最大数,最小数及其所在的位置。
(有些地方不太能搞懂。
)程序:#include<stdio.h>void main(void){int a[10],i,imax,imin,d,x;for(i=0;i<10;i++)scanf("%d",&a[i]);d=x=0;for(i=1;i<10;i++){if (a[i]>imax){imax=a[i];d=i;}if(a[i]<imin){imin=a[i];x=i;}}printf("imax=%5d,d=%5d\nimin=%5d,x=%5d\n",imax,d,imin,x);}结果:4.求10个整形数的和,并把这些数逆序输出。
程序:#include<stdio.h>void main(void){int x[10],i,sum=0;for(i=0;i<10;i++)scanf("%d",&x[i]);for(i=0;i<10;i++)sum=sum+x[i];printf("sum=%d\n",sum);for(i=9;i>=0;i--)printf("%3d",x[i]);printf("\n");}结果:5.将10个整形数按从小到大的顺序排列并输出。
C语言指出程序运行结果
26.#include <stdio.h> int f( int n ) { static int k=1; k=k*n; return(k); }
输出结果: 77,2
20,main( ) { int k,x; for( k=1,x=0; k<=9 && x!=10; k++) x+=2; x k printf("k=%d#",k); 0 1 } 2 2
4 3 4 5 6
条件 1 1 1 1 1 0
输出结果为: 输出结果为: k=10#
3 8 10
运行结果:
1 3 5 7 9 11 13 15 17 19 21 23
17. #include <stdio.h> void test ( int ) ; main ( ) { int n = -468; if ( n < 0 ) { putchar (' - ' ) ; n=-n; }
void test ( int m ) { int i ; if (( i = m / 10 ) != 0 ) test ( i ) ; putchar ( m % 10 + '0' ) ; }
C语言程序设计综合练习 语言程序设计综合练习
写出下列程序的运行结果 1, main ( ) { char c1 = 'a' , c2 = 'B' ; c1 = c1 + ( 'A' - 'a' ) ; c2 = c2 + ( 'a' -'A' ); printf ( " c1 = % c \n c2 = % c \n " , c1 , c2 ) ; } 运行结果为: c1= A
软件工程类和对象(程序运行结果分析)
C++习题与解析(类和对象)题1.分析以下程序执行的结果#include<iostream.h>#include<stdlib.h>class Sample{public:int x,y;Sample(){x=y=0;}Sample(int a,int b){x=a;y=b;}void disp(){cout<<"x="<<x<<",y="<<y<<endl;}};void main(){Sample s1(2,3);s1.disp();}解:本题说明了重载构造函数的定义方法。
首先定义了一个类Sample,在main()中定义了它的一个对象,定义s1对象时调用其重载构造函数(x=2,y=3),然后,调用其成员函数输出数据成员。
所以输出为:x=2,y=3。
注意:构造函数是唯一不能被显式调用的成员函数,它在定义类的对象时自动调用,也称为隐式调用。
--------------------------------------------------------题2.分析以下程序的执行结果#include<iostream.h>class Sample{int x,y;public:Sample(){x=y=0;}Sample(int a,int b){x=a;y=b;}~Sample(){if(x==y)cout<<"x=y"<<endl;elsecout<<"x!=y"<<endl;}void disp(){cout<<"x="<<x<<",y="<<y<<endl;}};void main(){Sample s1(2,3);s1.disp();}解:本题说明了析构函数的定义方法。
程序的运行结果PPT课件
#include <stdio.h>
main()
{float x,y;
scanf(“%f”.&x);
if(x<0.0)
参考答案: 0.50000 ?
y=0.0;
else if ((x<5.0)&&(x!=2.0))
y=1.0/(x+2.0);
else if(x<10.0)
func (int a,int b) {static int m=0,i=2; i+=m+1; m=i+a+b; return(m);
}
参考答案: 8, 17
2021/3/9
5
例6:写出下列程序的运行结果: int d=1; fun(int p) { int d=5;
d+=p++; printf(“%d ”,d); } main() {int a=3; fun(a); d+=a++; printf(“%d\n”,d); }
参考答案: 8 4
2021/3/9
6
例9:写出下列程序的运行结果: #include <stdio.h> #define SUB(X,Y) (X)*Y main() {int a=3,b=4; printf(“%d\n”,SUB(a++,b++)); }
参考答案: 12
2021/3/9
7
例10:写出下列程序的运行结果: #include <stdio.h> #include <string.h> void fun(char *w,int m) {char s,*p1,*p2;
运行情况总结报告
运行情况总结报告运行情况总结报告电梯活动仿真程序运行情况总结报告一、程序运行情况说明1.程序界面本程序使用java语言实现。
程序运行界面如下图1.1所示,包括左上角参数输入界面、左下角的仿真时间、右边楼层人员停留和等待情况、电梯运行界面、电梯载客以及乘客状态变化。
电梯运行界面楼层人员停留等待乘客状态变化电梯载客图1.1程序界面输入参数填写时当光标移到填写位置处自动提示输入范围,当输入没有或超出范围时探出提示窗口。
以下为弹出的窗口示意图:图1.2错误输入弹出窗口图1.3空输入弹出窗口2.程序说明程序中楼层有40层用直方的四十个矩形表示,十个电梯所在楼层用颜色标识,并以不同的颜色区分电梯状态:电梯处于空闲状态为黄色,电梯处于运行状态为绿色,电梯处于运行中等待乘客上下状态为红色。
在电梯处于运行状态时颜色矩形框上面的数字标识为电梯中的人数,电梯中载客在相应电梯下面显示。
每个楼层的逗留人数和等待乘梯人数在右边框中显示。
选取状态比较全面的两个仿真界面如图1.4和图1.5所示,前者为程序仿真46秒,后者为仿真433秒。
图1.4仿真界面1图1.5仿真界面2左边乘客状态输出框中,为了清楚表达乘客进行的动作,输出前加了不同的符号:1)**person:1-32表示乘客1发出去往32层的乘梯请求2)@@person:1-32表示乘客1前往32层已经进入电梯3)##person:1表示乘客1完成此次乘梯,出电梯4)%%person:1表示乘客1不再乘梯离开大楼3.仿真结束后统计结果界面把电梯运行时间和空闲时间以及每个乘客等待时间运行介绍后输出到左边的文本框中如下图1.6所示。
为十个人仿真后的结果,把其文本拷贝出来如下电梯运行时间统计:电梯E0空闲时间:281运行时间:648电梯E1空闲时间:214运行时间:715电梯E2空闲时间:270运行时间:659电梯E3空闲时间:63运行时间:866电梯E4空闲时间:118运行时间:811电梯E5空闲时间:123运行时间:806电梯E6空闲时间:30运行时间:899电梯E7空闲时间:58运行时间:871电梯E8空闲时间:194运行时间:735电梯E9空闲时间:343运行时间:586乘客等待时间统计:乘客1等待时间:0乘客2等待时间:22乘客3等待时间:23乘客4等待时间:21乘客5等待时间:85乘客6等待时间:22乘客7等待时间:43乘客8等待时间:31乘客9等待时间:45乘客10等待时间:图1.6输出结果二、程序运行情况分析1.随机数程序运行时很多地方用的随机数,比如电梯初始状态所在楼层,乘客乘梯次数,乘客所要到达的楼层,乘客到达楼层后随机在楼层内停留的时间数,乘客在M分钟内随机到达,这些随机数是为了仿真程序更加真实,使得可以最多的仿真出电梯的所有情况。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
main()
{int a,b;
参考答案: 8
for(a=1,b=1;a<=100;a++)
{if(b>=20) break ;
if(b%3==1)
{b+=3;
continue;
}
ห้องสมุดไป่ตู้
b-=5;
}
Printf(“%d\n”,a);
}
例4:写出下列程序的运行结果: #include <stdio.h> main() {int x=1,y=0,a=0,b=0;
写出程序的运行结果辅导
例1:写出下列程序的运行结果: #include <stdio.h> main() {float x,y; scanf(“%f”.&x); if(x<0.0)
y=0.0; else if ((x<5.0)&&(x!=2.0))
y=1.0/(x+2.0); else if(x<10.0) y=10.0; printf(“%f\n”,y); } 输入2.0↙
switch(x) {case 1:
switch(y) {case 0: a++;break case 1: b++;break; }
case 2: a++;b++;break;
printf(“%d %d\n”,a,b); }
参考答案: 2 1
例5:写出下列程序的运行结果:
#include <stdio.h> main() {int k=4,m=1,p;
参考答案: AGAAGAG
p=func(k,m); printf(“%d, ”p); p=func(k,m); printf(“%d\n”p); }
func (int a,int b) {static int m=0,i=2; i+=m+1; m=i+a+b; return(m);
}
参考答案: 8, 17
例6:写出下列程序的运行结果: int d=1; fun(int p) { int d=5;
参考答案: 12
例10:写出下列程序的运行结果: #include <stdio.h> #include <string.h> void fun(char *w,int m) {char s,*p1,*p2;
p1=w;p2=w+m-1; while(p1<p2) {s=*p1++;*p1=*p2--;*p2=s;} } main() {char a[]=“ABCDEFG”; fun(a,strlen(a)); puts(a); }
参考答案: 0.50000 ?
例2:写出下列程序的运行结果: #include <stdio.h> main() {int num=0; while(num<=2)
{num++; printf(“%d\n”,num);} }
参考答案: 1 2 3
例3:写出下列程序的运行结果:
#include <stdio.h>
d+=p++; printf(“%d ”,d); } main() {int a=3; fun(a); d+=a++; printf(“%d\n”,d); }
参考答案: 8 4
例9:写出下列程序的运行结果: #include <stdio.h> #define SUB(X,Y) (X)*Y main() {int a=3,b=4; printf(“%d\n”,SUB(a++,b++)); }