66职场网

导航栏 ×

上机实验报告

发布时间:2023-04-07

[报告]上机实验报告(篇三)。

在完成文章写作的时候有可能遇到写作瓶颈,我们要学会使用不同的范文,范文最关键的就是把握它的整体构思,我们自己怎么写好一篇范文呢?经过收集,小编整理了[报告]上机实验报告(篇三),在此温馨提醒你在浏览器收藏本页。

经过整理,栏目小编为你呈上[报告]上机实验报告(篇三) ,如果合你所需,不妨马上收藏本页。古人曾说,力行而后知之真,在日常的学习工作中。经常会需要我们去写报告,写好一份报告其实是我们和老板之间沟通最好的时机。

一.题目1.建立一个学生档案,内容包括学号,姓名,年龄,性别,数学,物理和英语3门功课成绩。要求实现以下功能:1)数据输入;2)查询某个学生的成绩;3)按平均排列输出;4)统计某门课各分数段人数;5)删除某个学生记录;2.编程实现对二位数进行加,减,乘运算,每运行一次程序做10道题,完成后给出成绩(每题10分)。二.设计思想和模块划分1.1.先定义所需要的条件,例如,姓名,学号,性别,三门功课的成绩,平均分等。2.输入姓名,学号,性别,年龄,三门功课的成绩后,就输出相应的姓名,学号,性别,年龄,三门功课的成绩。3.打印表头;4.在求出平均分,并打印出平均分。5.在查找学生,并打印出学生的相关资料;并按照平均分的高低排列;6.在统计学生各科成绩是否》=60分,如果是就是通过,否就是没通过,最后打印出最后的结果。7.删除学生,选中删除的学生,如果确定要,那么该学生的一切记录就变为0;2.1.随机调用函数,产生两个其值为10到99的随机整数分别放在c,d中用作运算时的运算数。2.随机调用函数,产生一个值为1到3的随机整数放入b中,用来选择不同的运算。根据b的值选择不同的运算。当b=1时,去进行c+d的运算练习;当b=2时,去进行c-d的运算练习;当b=3时,去进行c×d的运算练习。每完成一个算题就给出是否正确的信息。3.根据答案正确与否统计。正确时,显示’right’;错误时,显示’wrong’。4.步骤1.2.3.4.重复10次。5.输出学生成绩。三.运行结果1.Inputthe1student:num:03name:wfage:18sex:fmath:98phy:75eng:65Inputthe2student:num:06name:scage:17sex:fmath:78phy:45eng:65Inputthe3student:num:09name:ytage:17sex:mmath:69phy:75eng:501.readin2.finds3.del4.tj5.exit1-----------------------------table--------------------------------------------------------------------------------------------------------------------------------numnameagesexmathphyengave---------------------------------------------------------------------------------------------------3wf18f98.075.065.079.3---------------------------------------------------------------------------------------------------9yt17m69.075.050.064.7----------------------------------------------------------------------------------------------------6sc17f78.045.065.062.7----------------------------------------------------------------------------------------------------1.readin2.finds3.del4.tj5.exit2Intonumber:3------------------------------------------------------------------------------------------------numnameagesexmathphyengave------------------------------------------------------------------------------------------------3wf18f98.075.065.079.3-------------------------------------------------------------------------------------------------1.readin2.finds3.del4.tj5.exit3Intonumber:6------------------------------------------------------------------------------------------------numnameagesexmathphyengave------------------------------------------------------------------------------------------------6sc17f78.045.065.062.6------------------------------------------------------------------------------------------------true?Y/Ny1----------------table---------------------------------------------------------------------------------------------------------------numnameagesexmathphyengave-------------------------------------------------------------------------------------------------3wf18f98.075.065.079.3--------------------------------------------------------------------------------------------------9yt17m69.075.050.064.7--------------------------------------------------------------------------------------------------000f0.00.00.00.0--------------------------------------------------------------------------------------------------1.readin2.finds3.del4.tj5.exit41.inputthemath2.inputthephy3.inputtheeng1math:passnumis:3nopassnumis:02.32+82=114right!97*15=1455right!99-58=41right!76-66=10right!58+13=71right!37+49=86right!99+52=151right!49*69=5462wrong!73-38=31wrong!86+34=120right!markis80四.主要错误改正方法1.在本题的编写过程中常出现begin和end不配对,只要始它们的个数相同就可以了,就可以了。在程序中常出现的’unknownidentifier’没有定义的错误,只要在程序前加上定义,就可以了。还有就是typemismatch’的类型不匹配,只要根据前后内容,重新定义,就可以了。2.在本题编写中,题目要求是两个两位数运算,如果写成c:=random(100)在运行过程中,就会出现一位数运算,只要把它写成c:=random(90)+10,就可以了。五.实习小结1.第一题的程序编写比较复杂,需要较多的定义,因而在后面的程序部分,就常出现标识符重复,而导致的类型不匹配。还有就是每个部分编好后,上下不能连接,而无法调用。2.第二题较第一题简单,和书上的例题类似,所以,比较简单,但从中也出现一些不问题。以上两大题中出现的问题,要在同学的帮助下,才能完成。总的来说两题程序比较困难六.程序清单1.programtwins;constm=3;n=3;typestudent=recordnum:integer;name:string[3];age:integer;sex:char;s:array[1..n]ofreal;math,eng,phy:real;ave:real;end;sarr=array[1..m]ofstudent;ta=array[1..m]ofstudent;f=string[6];varstu:sarr;ct:ta;k,d:integer;procedurereadin(varstu:sarr);constwrong='0=data=100,again!';varj,i:integer;a:student;beginwriteln;writeln('Input',m,'numnamesexmathphyeng','ofstudent.');forj:=1tomdobeginwriteln;writeln('Inputthe',j,'student:');withadobeginwrite('num:');readln(num);write('name:');readln(name);write('age:');readln(age);write('sex:');readln(sex);while(sex'm')and(sex'f')dobeginwrite('sex:');readln(sex)end;fori:=1tondobegincaseiof1:beginwrite('math:');readln(s[i]);while(s[i]0)or(s[i]100)dobeginwriteln(wrong);write('math:');readln(s[i]);end;end;2:beginwrite('phy:');readln(s[i]);while(s[i]0)or(s[i]100)dobeginwriteln(wrong);write('phy:');readln(s[i]);end;end;3:beginwrite('eng:');readln(s[i]);while(s[i]0)or(s[i]100)dobeginwriteln(wrong);write('eng:');readln(s[i]);end;end;end;end;stu[j]:=a;end;writeln;end;end;procedureave(varstu:sarr);varj,i:integer;k:real;beginforj:=1tomdobegink:=0;withstu[j]dobeginfori:=1tondok:=k+s[i];ave:=k/nend;end;end;procedurepx(varstu:sarr);vartm:ta;j,i,p:integer;beginforj:=1tomdobeginp:=j;fori:=j+1tomdoifstu[i].avestu[p].avethenp:=i;tm[1]:=stu[p];stu[p]:=stu[j];stu[j]:=tm[1];end;end;procedurehead(ct:ta);vari:integer;beginwrite('');fori:=1to72dowrite('-');writeln;write('','num':4,'','name':9,'','age':8,'','sex':5,'','math':6,'','phy':9,'','eng':8,'');writeln('ave':6,'');write('');fori:=1to72dowrite('-');writeln;withct[1]dobeginwrite('',num:7,'',name:8,'',age:8,'',sex:5,'');fori:=1tondowrite(s[i]:7,'');write(ave:10,'');writeln;end;write('');fori:=1to72dowrite('-');writeln;end;procedurefind(varstu:sarr);varn,i:integer;u:boolean;beginu:=true;whileudobeginwrite('Intonumber:');readln(n);fori:=1tomdobeginifstu[i].num=nthenbeginct[1]:=stu[i];u:=false;d:=iend;end;end;end;proceduredel(varstu:sarr);vari:integer;b:char;beginhead(ct);write('true?Y/N');readln(b);ifb='y'thenbeginwrite('1');withstu[d]dobeginnum:=0;name:='0';age:=0;sex:='f';fori:=1tondos[i]:=0;ave:=0end;endelseend;proceduretj(varstu:sarr);varw1,q1,q2,num,j:integer;h1,h2,h3:boolean;beginh1:=false;h2:=false;h3:=false;q1:=0;q2:=0;writeln('':30,'1.inputthemath2.inputthephy3.inputtheeng');readln(w1);casew1of1:h1:=true;2:h2:=true;3:h3:=true;end;ifh1thenbeginbeginforj:=1tomdowithstu[j]doifstu[j].math=60thenq1:=q1+1elseq2:=q2+1;writeln('math:');end;ifh2thenbeginbeginforj:=1tomdowithstu[j]doifstu[j].phy=60thenq1:=q1+1elseq2:=q2+1;writeln('phy:');end;ifh3thenbeginbeginforj:=1tomdowithstu[j]doifstu[j].eng=60thenq1:=q1+1elseq2:=q2+1;writeln('eng:');end;end;end;end;writeln('':5,'passnumis:',q1);writeln('':5,'nopassnumis:',q2);end;procedurehead1(varstu:sarr);varj,i:integer;beginwriteln('----------------table--------------':60);writeln;write('');fori:=1to72dowrite('-');writeln;write('','num':4,'','name':9,'','age':8,'','sex':5,'','math':6,'','phy':9,'','eng':8,'');writeln('ave':6,'');write('');fori:=1to72dowrite('-');writeln;forj:=1tomdobeginwithstu[j]dobeginwrite('',num:7,'',name:8,'',age:8,'',sex:5,'');fori:=1tondowrite(s[i]:7:1,'');write(ave:10:1,'');writeln;end;write('');fori:=1to72dowrite('-');writeln;end;end;beginreadin(stu);ave(stu);k:=0;whilek5dobeginwriteln('1.readin2.finds3.del4.tj5.exit');read(k);readln;while(k1)and(k2)and(k3)and(k4)and(k5)dobeginwriteln('mistake,pleaseagain');read(k)end;casekof1:beginpx(stu);head1(stu)end;2:beginfind(stu);head(ct)end;3:beginfind(stu);del(stu);px(stu);head1(stu)end;4:begintj(stu);end;5:writeln('exit!');end;end;end..2.programshadow;vara,b,c,d,e:integer;right:boolean;procedures1;beginwriteln('right!');right:=trueend;procedures2;beginwriteln('wrong!');right:=falseend;procedures3(x,y:integer);varh:integer;beginwrite(x,'+',y,'=');readln(h);ifh=x+ythens1elses2end;procedures4(x,y:integer);varh,w:integer;beginifxythenbeginw:=x;x:=y;y:=wend;write(x,'-',y,'=');readln(h);ifh=x-ythens1elses2end;procedures5(x,y:integer);varh:integer;beginwrite(x,'*',y,'=');readln(h);ifh=x*ythens1elses2end;beginrandomize;e:=0;fora:=1to10dobeginc:=random(90)+10;d:=random(90)+10;b:=random(3);casebof0:s3(c,d);1:s4(c,d);2:s5(c,d);end;ifrightthene:=e+10;end;writeln('markis',e:3)end.