《程序设计基础》实验教程及完整问题详解_第1页
《程序设计基础》实验教程及完整问题详解_第2页
《程序设计基础》实验教程及完整问题详解_第3页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、程序设计基础实验教程对于从事计算机行业的人员来说, 设计能力是最主要的基本功之一。 入门课程 程序设 计基础 的学习效果将直接关系到编程能力的掌握和提高以及后续课程的学习。 然而, 实践 证明, 许多初学者在学习这门课程时的效果并不理想。 对初学者来说, 如何学好本课程?首 先,要理解教材中所给出的语法描述, 并学会按语法规定去编写指定问题的求解程序。 经过 这样的多次反复, 初学者就可以找到编程的感觉。 除了要学好理论知识外, 更重要的一点是 要到计算机上去验证, 因为只有实践才是检验真理的标准。 只有通过到计算机上去实践, 才 能发现学习中存在的问题, 巩固所学知识, 加强解决实际问题的能

2、力, 增强信心。 因此,程 序设计基础课程的上机实验是本课程必不可少的实践环节,必须加以重视。本课程上机实验的目的是使学生熟悉用高级语言解决实际问题的全过程, 加深对语言的 理解,得到程序设计基本方法和能力的训练。在独立编写程序、独立上机调试程序的同时, 真正能用高级语言这个工具去解决实际问题 , 对计算机学科的相关知识有所了解,从而为后 续课程的学习奠定良好的基础。本实验指导所用环境是 Visual C+ 6.0 及以上版本。考虑到本课程的容和特点,设置 了十四个实验,每次实验需要两至三小时,分别侧重于教材中的一个方面,其中标有 “*”号的习题的综合性较强, 可供学有余力的学生选择。 实验时

3、也可根据具体情况做适当调整。 虽 然可能由于课时和机时限制等原因而不能在实验课时全部得到安排, 但还是建议学生能将其 中的每个实验都能认真做一遍,因为这些实验都是学习本课程所必需的。学生在做实验之前应仔细阅读本实验指导书, 初步掌握实验的基本要求和实验方法。 在 实验过程中, 学生应该有意识的培养自己调试程序的能力, 积累发现问题、 解决问题的经验, 灵活主动的学习。 对于分析运行结果的实验习题, 上机前先进行用人工分析, 写出运行结果, 与上机调试得到的结果进行对照,如有差异, 分析其原因。对于程序编制的实验习题, 上机 前应考虑出较成熟的编程思路, 有意识提供出多种方案, 以灵活运用所学知

4、识和技巧。 如此, 可充分利用有限的上机时间, 有目的的增强调试程序、 解决各种实际问题的能力。 每个实验 完成后需要写实验报告。实验0 Visual C+ 集成开发环境1. 实验目的要求(1)熟悉和掌握Visual C+ 的集成开发环境(简称为IDE)的部分功能。( 2)熟悉和掌握建立控制台应用程序(3) 掌握用 IDE 编辑、编译和运行简单程序的基本过程。(4) 掌握程序调试的基本方法,包括程序断点的设置与去除,程序的跟踪以及运行期间 变量数值的观察。2. 实验容(1) 了解 Visual C+ 可视化集成开发环境Visual C+是微软公司推出的目前使用极为广泛的基于Windows平台的

5、可视化集成开发环境,它和 Visual Basic 、 Visual Foxpro 、 Visual J+ 等其它软件构成了 Visual Studio (又名 Developer Studio )程序设计软件包。 Developer Studio 是一个通用的应用程序集 成开发环境,包含了一个文本编辑器、资源编辑器、工程编译工具、一个增量连接器、源代 码浏览器、集成调试工具,以及一套联机文档。使用Developer Studio ,可以完成创建、调试、修改应用程序等的各种操作。Visual C+ 分为学习版、专业版和企业版。 VC 提供了一种控制台操作方式,初学者使 用它应该从这里开始。 W

6、in32 控制台程序 (Win32 Console Application) 是一类 Windows 程 序,它不使用复杂的图形用户界面, 程序与用户交互时通过一个标准的正文窗口, 通过几个 标准的输入输出流(I/O Streams)进行。下面我们将对使用VC编写简单的控制台程序作一个最初步的介绍。这里的介绍不包含 C+运行环境(尤其是 Windows环境)下进行开发的容, 有关这方面的容请参阅相应开发手册。另外, Visual C+包含丰富的函数库和类库,学生在 设计程序时可以使用有关的容,这方面的容也请自行参阅相应的开发指南类书籍。实验操作步骤如下:安装 Visual C+ :运行 Vis

7、ual Studio 软件中的 setup.exe 程序,选择安装 Visual C+ 6.0 ,然后按照安装程序的指导完成安装过程。启动 Visual C+ :安装完成后,在开始菜单的程序选单中有 Microsoft Visual Studio 6.0图标,其中又有 Microsoft Visual C+ 6.0 即可运行(也可在 Window桌面上建立一个 快捷方式,以后可双击运行) 。 Visual C+ 6.0 开发环境见图 0-1 。建立控制台工程:进入 Visual C+ 环境后,选择菜单“ File | New ”,在弹出的对话框中单击上方的选 项卡"Projects

8、”,选择"Win32 Con sole Applicati on ”工程类型,在"Project name" 一 栏中填写工程名例如 MyFirst ,在“ Location ”一栏中填写工程路径(目录)例如: D: MyProject'MyFirst ,见图 0-2,然后按“ OK 继续。V Adcibe*ll Borland Ctelphi 7扇 Fnepiint 3XC*為冃卜 遽| RcshVift*為 Wicrowft oFftce 二RP Mkl awft SQL Seivei卜_pj| Micrascilt SQL berver 就盖吃抉3纠

9、里件骗辑;卫鱼巻蚀 国f罚SF同上p 珂* 悄 st地址忙)阻叢创卩前T E廨1卷胃nmrt 1 ”.击上 逋rurof:血文老 ®斑cf恤文吕 电 WriSp JL- 3 rfr比iVK? 1 用戈“可辰空日匚g.能>74.1 / (itsItm 站力口飙展 X1苗u日1 Btuife 6血卜-rt Mcrnsoft Visi_bBl 3:udioi 6. & EnBeni1 w Toins 4| FlkrcKCrft YsualStudcp 氐 DTaote卜MkrafciftWEti Pliblishing-目 NEtiork A££UL|at

10、e£卜HtrasaFt VesueI C-h- 6 心0羽L'llTXdtEDW-iSu''' I -! I|>WrPE位盍:Ci IPicgrm Filc5MKrc5-f: Visual|:53。心町110<1啊505旧戲BinPOPOZOTH口曰1TEK Qg a and F*tt E曲榊耐t NIC Dnir XVICFCCdTieiA图 0-1 启动 Mircosoft Visual C+ 6.0图0-2创建控制台工程屏幕上出现如图 0-3所示的 Win32 Con sole ApplicationStep 1 of 1对话框后,选

11、择"An empty project ”项,然后按 Finish按钮继续,图 0-3 Win 32 Con sole ApplicationStep 1 of 1 对话框出现如图0-4所示的New Project In formation对话框后,按 OK按钮完成工程创建。图 0-4 New Project In formation对话框编辑C+程序:选择菜单"Project | Add to Project | New”,为工程添加新的 C+源文件。如图0-5所示。图0-5选择菜单为工程添加新源文件图0-6加入新的C+ Source File在出现如图0-6所示的对话框后

12、,选择File ”选项卡,选定“ C+ Source File ”项,在"File Name栏填入新添加的源文件名,如MyFirst.cpp , "Location ”一栏指定文件路径,按按钮“ OK'完成C+源程序的系统新建操作,如图0-6所示。在文件编辑区输入源程序,存盘,如图0-7所示。图0-7编辑MyFirst.cpp 源程序编译源程序:选择Build | Build 菜单(F7为快捷键),系统将会在 Output窗口给出所有的错误信 息和警告信息。当所有错误修正之后,系统将会生成扩展名为.exe的可执行文件。对于Output窗口给出的错误信息, 双击可以使

13、输入焦点跳转到引起错误的源代码处以进行修改。执行程序:选择Build | Execute 菜单项(Ctrl + F5为快捷键),执行程序,将会出现一个DOS窗口,按照程序输入要求正确输入数据后,程序即正确执行。如图0-8所示。调试程序:在编写较长的程序时,能够一次成功而不含有任何错误决非易事,这需要进行长期大量的练习。编写的程序若已没有编译错误,可以成功运行。对于程序中的错误,VC提供了易用且有效的调试手段。在工具栏上单击鼠标右键,在弹出的菜单中选中“Debug”项。在程序调试状态下,可以进行单步执行调试程序。其中,单步跟踪进入子函数(Step Into ,F11),每按一次 F11键,程序执

14、行一条无法再进行分解的程序行;单步跟踪跳过子函数(Step Over,F10),每按一次F10键,程序执行一行;Watch窗口可以显示变量名及其当前值,在单步执行的过程中,可以在 Watch窗口中加入所需观察的变量,辅助加以进行监视,随时了解变量当前的情况;同时,为方便较大规模程序的跟踪,可以设置断点(F9为快捷键),断点处所在的程序行的左侧会出现一个红色圆点。选择Build | Start Debug | Go 时,程序执行到断点处程序将暂停执行,可方便用户进行变量观察。取消断点只需在代码处再次按F9即可。还有运行至当前函数的末尾(Step Out )等都是很有效的调试工具,这里不再做一一介

15、绍。图0-8程序运行结果xwhs*c# mu-Tt I r£i 电i I ki ia"" 廿删霍 WfiE上_告I匡N黑古;I巴 fijJ 亡M _Jtr«TK :i 二 tl Szudiz B C L *哋¥.倾丁 A VliBOJ 丸询仙利 I 垃勺 章!i VxvutZ Euli r 工皓 L '(J Ub«u«Jl C+* 為aP7 P> Ta i-mkI 二*4 fcacnui'LhLa w N if. fi * *lh v 、 lumQ W 3 Q r Griinf 5l u t4 r &#

16、171;rft,¥liF141 F liuui Fj lUkJ. C+-* 鼻 h和riM仔.u4»r>les4 1 Mxsulb J anti q 工岩T "vy心 TbestP |ya|E<i .忻弹 :+ W; V:理11 JH- lLCMMA>.4l:(3j*M i -rUwli 's-r*i 作和2 HJHit雅才jjM =E4!u£i: lDOl<C«固叠皆MIC阳STEF 皿upg*i i.ta cotl Ot DIE D<-UBA£|-| Ltl HL 同.H M触KO IS刊 f

17、f|i Spicifi clxi mis il Ejm-lnkdt Ama -fh TadWX4L IHXWUL-GKtaVisual C+v/ekorn« to Microsoft Visual C+ version 6.0!Visual C+ Is available in three editions; Standard, Professlonab sne EnterpriseThe documentation for Visual Ct-+ Includes; the Vbudl C+ Paordtrime-'s Guide, lhe讥fual C+ +r«

18、-1Lid BTnPWia'L-cwlB Cnilifllf t|nl Us亡r惶匚Hide /也udl C+ Tutoridlw* theMtemsoft Foundation C>*品M_ahd_Tcm|Are名审佃厘egmqe$ tui Libi営rl醴s for 忖憧u蛊I C+kVisual C+ Is a member of the Visual Studio 6.0 Family of development products, which includes;« V eueI Basic Vicual Cw Vieuj I FjosPno Visual J

19、nterDe Visual Ifi« Visual SourceSafeGett ngStarted Find theappropriate place to start with VisualC+*What's NevNew features in Visual C+ +6.0.Explore the 抽 rnDles Sa mple programs for MFC, ATL( the SDKsf and others.图 0-9 MSDN有关联机帮助:Visual C+6.0提供了详细的帮助信息,用户通过选择集成开发环境中的“Help”菜单下的“Contents ”命令

20、就可以进入帮助系统。在源文件编辑器中把光标定位在一个需要查询的单词处,然后按F1键也可以进入 Visual C+6.0的帮助系统。如图 0-9所示。用户要 使用帮助必须安装MSDN用户通过 Visual C+6.0 的帮助系统可以获得几乎所有的VisualC+6.0的技术信息,这也是 Visual C+作为一个非常友好的开发环境所具有的一个特色。3. 分析与思考通过创建项目文件的实验, 总结一下创建一个控制台应用项目的一般方法和经验。除了已经介绍过的调试方法,可以尝试集成开发环境提供的其它功能。实验一面向过程的简单程序设计1. 实验目的要求(1) 使用C+语言编写简单的计算机程序,掌握C+程序

21、从编辑、编译到运行的全过程,初步了解C+程序的特点。(2) 掌握C+语言的数据类型(包括对各种数据类型变量的定义、初始化、赋值等)、运算符和表达式的使用。(3) 掌握赋值语句的使用。(4) 掌握数据的输入输出方法。2. 实验容(1) 设计简单程序,分别计算下列表达式,式中变量由键盘输入,输出表达式的值。<1><2>-1<3> sin X+cosX+ta nX<4> ex+y,x-y +e<5> logio(1+ 一 1x2 )2. 2 ,<6> ab + a b(其中a表示取不大于a的最大整数)解:<1># i

22、n elude <iostream>using n amespace std;int mai n()float x;float a,b,c,d;cout<<"e nter a,b,c,d"<<e ndl;cin> >a»b>>c»d;cout<<"e nter x"<<e ndl; cin>>x;cout<<"result"<<x+(a+b)/(c-d)<<e n dl;return

23、0;<2># in clude <iostream>#in clude <cmath> using n amespace std;int mai n()float x;float sum; cout<<"e nter x"<<e ndl; cin> >x; sum=1+1/(x+1/(x+1); cout<<pow(x,1.2)<<e ndl;return 0;<4># in clude <iostream>#in clude <cmath>u

24、sing n amespace std;<3># in clude <iostream>#in clude <cmath>using n amespace std;int mai n()float x,y;cout<<"e nter x"<<e ndl;cin>>x;y=si n( x)+cos(x)+pow(ta n( x),-1); cout<<y<<e ndl;return 0;int mai n()float x,y;cout<<"e nter x,

25、y"<<e ndl;cin> >x»y; cout<<exp(x+y)+exp(x-y)<<e ndl;return 0;<5># in elude <iostream>#in elude <cmath>using n amespace std;int mai n()float x;cout<<"e nter x"<<e ndl; cin>>x;cout<<log10(1+pow(1+x*x,1/2)<<en d

26、l;return 0;<6># in clude <iostream>double a,b;cout<<"e nter a,b"<<e ndl;cin> >a»b;cout<<fabs(a*a-b*b)+i nt(a-b)<<e ndl;#in clude <cmath>using n amespace std;int mai n()(2) 阅读下列程序,写出(由指定的输入)所产生的运行结果,并指出其功能。<1>#i nclude <iostream.

27、h>void mai n()char ch;cin >> ch ;ch = ( ch >='A&& ch <='Z' ) ? ( ch + 32 ):ch ;ch = ( ch >='a'&& ch <='z' ) ? ( ch-32 ) : chcout << ch << en dl;解:输入A,输出A;输入a,输出Ao功能:将输入的字母转换成对应的大写字母并输出。<2>#in clude <iostream.h>v

28、oid mai n()int m; float x; bool bi,br;cout << "n int m="cin >> m;bi = m > 1000;cout << "n float x="cin >> x;br = x <= 1e3;cout << bi << ',' << br << en dl;分别输入 100 40,2000 3000,1000 1000,2000 300,100 4000运行。解:结果依次是:0,1

29、 1,0 0,1 1,1 0,0功能:判断第一个数是否大于1000,第二个数是否小于等于1000。<3>#i nclude <iostream.h>void mai n()int n;cin >> n ;if ( n + < 10 )cout << n << endl ;elsecout << n - << endl ;解:输入2,输出3。功能:将输入的数字增加1后输出。n+是使用n后其数值增加1,n是使用n后其数值减1, 上面这个程序最终是要输出n,其数值等于执行 n+后n的值。(3) 编写程序实现下列

30、问题的求解。<1>根据随机从键盘输入的圆半径值,求圆的周长和半径并输出。<2>读入三个整数a、b、c,交换它们中的数,使 a存放b的值,b存放c的值,c存放 a的值。<3>对任意输入的四位整数,分别求出其各位数字,并按从后到前的顺序依次输出。例如,输入为1234时,输出结果为4,3,2,1解:<1># in clude <iostream>using n amespace std;/*con st float PAI=3.14159;int mai n()float r;cout<<"输入园的半径"&l

31、t;<endl;cin»r;cout<<"半径为"<<r<<" 的园的周长 为"<<2*PAI*r<<e ndl;return 0;输.X儘芭半社J苗匾孑诵KIB.B1157rea-a nv key to continue<2># in elude <iostream>using n amespace std;int mai n()float a,b,c;float temp;cout<<"依次输入 a,b,c"<&l

32、t;endl;cin> >a»b»c;cout<<"a= "<<a<<" b= "<<b<<" c="<<c<<e ndl;temp=a;a=b;b=c;c=temp;cout<<"交换后"<<endl;cout<<"a= "<<a<<" b= "<<b<<" c=&l

33、t;<c<<e ndl;C;Users'Aclminl5tratc r De 5 ktc亡佞脸设匸依祕输人4“上12 3a= 1 h= 2 c= 3交按后a= 2 b= 3 c= 1Press ansf k©屮 to continue<3># in clude <iostream>using n amespace std;int mai n()int n;cout<<"输入一个四位数的整数"<<e ndl;cin»n;for(i nt i=1;i<=3;i+)cout<

34、< n%10<<','n/=10;cout<< n%10<<e ndl;return 0;可"C:Use rsXAd ministra tor Des kt 口 pwe 霓些3. 分析与思考*对任意输入的小于1的并且只有3位尾数的实数,分别求出其各位数字并输出。要求输出的各数字之间要空 2格。例如,输入为 0.368时,输出结果为 0 3 6 8'解:#in clude <iostream> using n amespace std;int mai n()float n;cout<<"

35、输入的小于1的并且只有3位尾数的实数"<<endl;VU5ers' AdministrgtorD芦谥实验聞十渝入的小于1的并且只有?位尾数的实数9_36S036Jress anv Jtev to cont inue_cin»n;cout<<""'cout< <in t( n)<<""cout<<i nt(n *10)<<""cout<<i nt( n*100)%10<<""cout&l

36、t;<int(n*1000)%10<<""'<<e ndl;return 0;实验二控制结构程序设计1. 实验目的要求(1) 理解基本的解题技巧,掌握用自顶向下、逐步求精的过程设计算法。(2) 熟练掌握if/else 语句和switch语句的使用。(3) 熟练掌握while语句、do/while 语句和for语句的使用以及区别。(4) 掌握break和continue 程序控制语句的使用。2. 实验容(1)阅读下列程序,写出(由指定的输入)所产生的运行结果,并指出其功能。<1>#i nclude <iostream.h

37、>void mai n()int m,n;m = 1000;n = 850;cout <<"n( “ << m <<,' << n <<)';while ( m != n ) while ( m > n ) m = m - n ;cout << ( << m <<, ' << n <<')'while ( m < n ) n = n - m ;cout << ( << m <&l

38、t;, ' << n <<')' cout << “ n ” << m ; 解:输出结果为 (1000,850)(150,850)(150,700)(150,550)(150,400)(150,250)(150,100)(50,100)(50,50)50功能:不断执行 m=m-n,直至U m=n时为止,并将每次得到的结果输出<2>#include <iostream.h>void main()int m,n,k ;m = 1000 ;n = 45 ;cout <<“n( “ <&l

39、t; m << : ' << n <<) 'k=0;while ( m >=n )m = m - n ;k = k + 1 ;cout << k <<“ - ” << m << endl ;解:输出结果 (1000:45)22-10功能:计算 1000 减去多少个 45 小于 45<3>#include <iostream.h> void main()int i;for ( i = 1 ; i <= 5 ; i + ) if ( i % 2 ) cout &l

40、t;< * else continue;cout << # ' ;cout <<“$n ” ;解:*8992*8992*8992$功能:for循环中当i为奇数时,输出*,不是就继续执行<4>#in elude <iostream.h> void mai n()int a = 1,b = 10;dob -= a ;a + ;while ( b - <= 0 );cout <<“a=” << a <<“ b=” << b <<endl ;解:输出a=2b=8功能:循环执行

41、b=b-a,a+直到b-<=0为止,并将此时a,b的值输出。(2)编写程序实现下列问题的求解。<1>求解下面函数的值。广 x+yex<0,y<0z= ln(x+y)log1|x+y|+110w x+y10其它情况<2>编程求解下列各计算式1001) S= i = 1 + 2 + 3+100i 172) S= i! =1!+2!+7!i 13)X2+3X4+5X6+-+39X404)Y=X-X: +3!X 5 x 7XX + (-1) n+1 +的值,精确到10-6。5!7!(2n 1)!n+1X2n1<3>打印下面图形。112, 238,1

42、6=2*2*2*2, 15=3*5。elsez=log10(abs(x+y)+1);eout<<z<<e ndl;return 0;f "C:U5e r5Ad mlri5 tratcrrD&5 kto pL 1eny keif to continue1 3213 14编程产生出1到10以的所有数对i,j并输出,其中ij 。5编程求出10000以的所有符合如下条件的数:其高位数字小于低位数字。如 3578等。但21,548不符合条件。6求任一整数N的标准分解式,即素数因子之积。例如解:<1># in elude <iostream>

43、;#in elude <cmath>using n amespaee std;int mai n()int x,y;float z;eout<<"e nter x,y"<<e ndl; cin> >x»y;if(x<0 && y<0)z=exp(x+y);else if(1<=(x+y) && (x+y)<10) z=log(x+y);eout<<sum<<e ndl;return 0; 1 *C;U s emini st rate rD

44、e5ktcp'we<2>1)# in elude <iostream>using n amespaee std;int mai n()int n=100;int sum=0;for(i nt i=1;i<=n ;i+) sum+=i;5050Press any key to cantinue2)# in elude <iostream>using n amespaee std;int mai n()int n=7;int sum=0;for(i nt i=1;i<=n ;i+)int s=1;for(i nt j=1;j<=i;j+

45、)"C:Us e r&Ad ministra tor De w kto pwt:1any keif to continues*=j;sum+=s;eout<<"1!+2!+7!="<<sum<<e ndl;return 0;6+ +39 x1 X2+3 X4+5 X6 +39 X 40=11060T*ess an*/ 1吐y tu contInue3) # in elude <iostream> using n amespace std;int mai n()int sum=0;for(int i=1;i&l

46、t;=39;i+=2) sum+=i*(i+1);cout<<"1 x 2+3 x 4+5 x4) # in clude <iostream>#in clude <cmath>using n amespace std;float f(int x,i nt n)int s=1;for(i nt i=1;i<=n ;i+) s*=i;return pow(x, n)/s;int mai n()float x,y=0; cout<<"e nter x"<<e ndl;<3># in clude

47、 <iostream.h>#in clude <math.h>#i nclude <ioma nip.h>int mai n()for(int i=1;i<=11;i+)for(i nt j=1;j<=11_i;j+)40="<<sum<<e ndl;return 0;71C: U 5«rsAd m i ni Strato rDescin»x;for(i nt i=1;i+=2;) y+=pow(-1,i+1)*f(x,i); if(f(x,i)<1e-6) break;cout<

48、<y<<e ndl;return 0;'"C: U seirsAd mi ni stratorDesenter x4Press any hej; Vo continuecout<<""for(j=1;j<=2*i-1;j+)cout<<setw (3) <<2*i-1-abs(i-j)*2;cout<<e ndl;return 0; C :U 宜 e rsAd iministrato r.De 5 kto ”诃&实验设计D e bu g验设计 exe 31An11351357?

49、5311y7 s3311197 s9 11 13 15 17to continue135?911131517191357911131517192113579 11 13 IS ±7 191丹 11 13 IS 1791113151113135713b73 1<4># in elude <iostream> using n amespace std;int mai n()for(int i=1;i<=10;i+) for(i nt j=1;j<i;j+)cout<<'<'<<i<<',

50、'<<j<<'>'cout<<e ndl;return 0;b=n %10; if(b>=a) break; a=b;while( n!=0); if(n=0) cout<<i<<'' cout<<e ndl;* _C:UsersAdnninistratorOe?kt!?pweSi,+-DebLigtt.exe' 1=1 | 亘 |g£勺<2,l><3.1><3,2><4aX4R2X4>3X5aX5J2X5

51、,3><5,4><6,l><6,2><6,3><6,4><6,5X?,l> 7,4><7,E><7,6XelX8J2><e,3X®4><a,S><0,6><8J.7><9a><92><9,J><9,4> <9,SX9.6X9,7X9,8X10,1X10,2X10,3X10,4X10,5X10,6X10,7X10,8X10,9> Press any kej/ to cont

52、inue_<5># in clude <iostream>using n amespace std;int mai n()for(int i=1;i<=10000;i+) int a=i%10,b, n=i;don/=10;3R9 4Ffi 4即 4S« 45? “789 1234 1235 1236 1232S?37968?2S83?86792S73的t?83的58924936757924«35957«;?斗73585佛24356567239349-J8934847923fi 23734& 34746? 47823S3454

53、6R?7Press Any keu co continue3789456? 45684569457845?34894589356946893578478935895679367856893795?89368967893567 35GB4678 4679357956782S7fl279 2SFt9fi792A»927S934S634S734S»H4E934fi7 环H37(13472 378237? 23B?2-K62457 2582-15?246?246821692-178247?248?25672682569 1456 1457 1458 1459 1%7 1468147

54、8 1479 H89 156? 156B 1&69 1578 1S79 1589 1678 1679 16»9 1789 2345 2346 2347 2348 234? 2356 2357 2358 235? 2367 23f>8 2361加9134n47 1348 1 1491 ISAn9171伽1 7913a7128123? 1451246 1247 L24R1249 lSfi12571258125?1267 1269126?I27B12?1231 曲 125126 12712913435 36 37 39128SJ BC:IJ sersAjd m i 屆tr吕t

55、orDesktop.we晝3&谢+D亡bti亡xe865427513117B17s51571314913 s<6># in elude <iostream> using n amespace std;int mai n()int n;cin»n;cout< <n< <'='for(i nt i=2;i<=n ;i+) if(n %i=0) cout<<i; break;n/=i;for(i=2;i<=n ;i+) while( n%i=0) cout<<"*"

56、;<<i; n/=i;cout<<e ndl; return 0;'C:LIGers AdministratorD亡弓ktcrpwer>1616 =2 *2 *2 *2Prem占 an51 l<e to continue3. 分析与思考*<1>编程求出数列的所有升或降的最大子序列。如下面数列的解为如下:1,20,30,12,3,5,7,4,6,100,11,8(1,20,30),(30,12,3),(3,5,7),(7,4),(4,6,100),(100,11,8)*<2>编程求12100的末三位数。解:<1>#

57、in clude <iostream>using n amespace std;const int num=12;int mai n()static int n=2;int a,b;cin> >a;cin> >b; while(1)cout<<"("<<a; while(a<b) cout<<","<<b;a=b;if(n=num) break;if(n=num) break; cin> >b;n+; if(n=nu m) cout<<&qu

58、ot;)"break;cout<<")"cin> >b; n+; if(n=nu m) cout<<")" break;cout<<"),(" cout<<a;while(a>b) cout<<","<<b; a=b; cout<<a<<e ndl; return 0;"e rsAd ministr3torD?5 let口 A 实验檎Tress anyto continue<2

59、># in clude <iostream> using n amespace std;int mai n()int a=1;for(int i=1;i<=100;i+) a=a*12; a=a%1000;实验三数组1. 实验目的要求(1) 掌握一维数组和二维数组的定义、初始化赋值、元素引用的方法。(2) 初步了解数组名与地址的关系。(3) 掌握字符数组和字符串函数的使用。(4) 掌握与数组有关的算法(特别是排序和查找算法)。2. 实验容(1)阅读下列程序,写出其运行结果,并指出其功能。<1>#include <iostream.h>#define N 10void main()int aN;int s,i,j,t;for ( i = 0 ; i < N ; i + ) if ( i % 2 ) a i = i * i ;else a i = 100 - ( i / 2 ) * ( i / 2 ) ; for ( i = 0 ; i < N ; i + ) cout << a i ;cout << endl ;s = 0 ;for( i = 0 ; i < N ; i + ) s = s + a i ;<<

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论