预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共23页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

PAGEPAGE337五编程训练题1.编写一个程序,要求输入五个整数,然后由小到大排序再输出.functionf=t1(x)fori=1:4forj=(i+1):5ifx(i)>x(j)a=x(i);x(i)=x(j);x(j)=a;endendenddisp(x)将一个整型数组的元素按逆序重新存放(如原序为:8,6,5,4改为:4,5,6,8)。functionf=ta(x)s=length(x);a=fix(s/2);fori=1:aj=s-i+1;c=x(i);x(i)=x(j);x(j)=c;enddisp(x)……………………………………………………………………..functionf=t2(x)n=length(x);fori=1:n;j=n-i+1;a(j)=x(i);enddisp(a)3.输入一个字符,如果是大写字母,则将其转换成小写并输出;若是小写则直接输出;若是非字母字符则打印:“Dataerror!”。functionf=t3()i=input(输入一个字符:string\n');ifi>=48&i<=57fprintf('“Dataerror!”\n')elseifi>=65&i<=90fprintf('%c\n',i+32)elseifi>=97&i<=122fprintf('%c\n',i)end4.输入一个整数,写一程序输出它是几位数。functionf=t4(x)i=0;forj=1:10000000;x=abs(x/10);a=fix(x);ifa>0i=i+1;endifa==0i=i+1;breakendendfprintf('是%d位数\n',i)5.写一程序求1!+2!+…+10!functiont5()i=1;s=0;forj=1:10i=i*j;s=s+i;disp(s)end6.从键盘上输入a与n的值,计算sum=a+aa+aaa+aaaa+…(共n项)的和。例a=2,n=4,则sum=2+22+222+2222.functionf=t6(a,n)t=a;s=a;fori=1:(n-1)t=t+a*10^i;s=s+t;enddisp(s);7.编程求数列1,1/2,1/4,1/8,1/16,……的所有大于等于0.000001的数据项之和并输出结果functionf=t7()s=1;i=0;forj=1:20i=i+1;s=s+1/2^i;ifi>=100000breakendfprintf('%7.6f',s)end8.求3*3矩阵的主对角线元素之和。functionf=t8(x)s=0;fori=1:3;j=i;s=s+x(i,j);enddisp(s)9.从键盘输入的10个整数中,找出第一个能被7整除的数。若找到,打印此数后退出循环;若未找到,打印“notexist”。functionf=t9(x)fori=1:10a=x(i)/7;b=fix(a);ifa-b==0disp(x(i))breakendifi==10fprintf('notexist')endend10.设计一个用于计算个人所有税的程序。假设个人所得税的缴纳标准为:月收入少于等于800元者不纳税;超出800元的部分,纳税5%;超出2000元的部分,纳税10%;超出5000元的部分,纳税20%;超出10000元的部分,纳税30%;超出100000元的部分,纳税40%。functionf=t10(x)ifx<=800y=xelseif800<x<=2000y=(x-800)*0.05elseif2000<x<=5000y=(x-2000)*0.1+60elseif5000<x<=10000y=(x-5000)*0.2+360elseif10000<x<=100000y=(x-10000)*0.3+1360elsey=(x-100000)*0.4+28360endfprintf('y=%d\n',y)11.编写一个程序,用循环结构输出以下图形。(1)&&&&&&&&&(2)*********&&&&&&&*******&&&&&*****&&&***&functionf=t11a()fori=9:-2:1forj=1:Ifprintf('&')endfprintf('\n')endfunctionf=t11bb()fori=0:4forj=1:9-iifi>=jfprintf('');e