顺序、选择、循环三种基本结构程序设计_第1页
顺序、选择、循环三种基本结构程序设计_第2页
顺序、选择、循环三种基本结构程序设计_第3页
顺序、选择、循环三种基本结构程序设计_第4页
顺序、选择、循环三种基本结构程序设计_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

1、昆明理工大学信息工程与自动化学院学生实验报告( 2012 2013 学年 第 一 学期 )课程名称:结构化程序设计与C语言 开课实验室:系机房444 2012 年10月21日年级、专业、班计科112学号姓名成绩实验项目名称顺序、选择、循环三种基本结构程序设计指导教师王翊教师评语该同学是否了解实验内容与要求:A.了解B.基本了解C.不了解设计思想及流程图是否正确: A.正确B.基本正确C.较差 该同学的实验能力: A.强 B.中等 C.差 该同学的实验是否达到要求: A.达到B.基本达到C.未达到实验报告是否规范: A.规范B.基本规范C.不规范是否有运行结果与分析: A.详细B.一般 C.没有

2、 是否有总结与体会: A.详细B.一般 C.没有 教师签名:王翊 2012年 月 日一、 实验的目的1、 学习在VC+环境下编辑调试C语言程序的方法。2、 掌握在C语言中的各种数据类型,以及如何定义整型、实型、字符型的变量,并进行赋值的方法。3、 掌握顺序程序的思路,特别是赋值语句的使用方法。4、 掌握各种类型数据的输入输出方法的正确应用,熟悉各种格式控制符的作用。5、 学会在选择结构中正确应用关系表达式及逻辑表达式。6、 熟练掌握if语句和switch语句的使用。7、 学会选择结构问题算法的编制与调试应用。8、 熟练掌握while语句、do-while语句和for语句实现循环的方法。9、 学

3、会循环问题的编制与调试、运行。二、 实验内容与要求本实验涵盖顺序、选择、循环三部分程序设计的应用,要求每部分完成两个问题的源代码的编辑、编译、连接与运行,最终产生相关的运行结果,按规定要求提交相应的实验报告。具体要求完成的问题如下:(注意:在模板中给出了题的页数与题号,请写正式报告时将书上的题目内容代替页数与题号)(1)P82/2(2)P84/6(3)P112/6(4)P113/9(5)P140/5(6)P141/16三、算法设计思想或程序流程图(1)设:五年期,三年期,二年期,一年期,活期存款分别为:r5,r2,r3,r0;第一种,第二种,第三种,第四种,第五种五年期存款的本息和分别为p1,

4、p2,p3,p4,p5。则有:p1=p*(1+r5)*5); 一次存5年期 p2=p*(1+2*r2)*(1+3*r3); 先存2年期,到期后将本息再存3年期 p3=p*(1+3*r3)*(1+2*r2); 先存3年期,到期后将本息再存2年期 p4=p*pow(1+r1,5); 存1年期,到期后将本息存再存1年期,连续存5次 p5=p*pow(1+r0/4,4*5); 存活期存款。活期利息每一季度结算一次 再将所得数据一一输出即可。 (2) 先分别把c1,c2,c3,c4,c5分别赋初值为c,h,I,n,a. 想要让它们的字母分别增加四位。只需将它们的ASCII码增加4个数就可以。便有c1=c

5、1+4; c2=c2+4 c3=c3+4; c4=c4+4; c5=c5+4;再将所得值以字符型输出便可(3)输入x,用if语句判断X的值的范围。X1)再进行分类。若x10则y=2*x-1。除此情况之外,y=3*x-11.(4)先判断它的位数。如果这个数大于9999则输出5;排除这种情况,大于999则输出4以此类推。 分别输出每一位数字:几位数字便除以此位数的最小值。如9999便除以1000,由于都是整型,便得到9。依次除下去。得到的各位整数在赋给各个变量,反序输出。(5)用tn=tn+a语句代表赋值后的tn为i个 a组成数的值用 sn=sn+tn语句代表赋值后的sn为多项式前i项之和用whi

6、le语句实现在In的情况下让i自增。(6)将菱形分为上下两个部分,每个部分为一个三角形。设置两个变量I,j分别控制行和列。再用两个循环语句分别对上下两个三角进行控制。四、源程序代码(1)#include #include int main()float r5,r3,r2,r1,r0,p,p1,p2,p3,p4,p5; p=1000; r5=0.0585; r3=0.054; r2=0.0468; r1=0.0414; r0=0.0072; p1=p*(1+r5)*5); p2=p*(1+2*r2)*(1+3*r3); p3=p*(1+3*r3)*(1+2*r2); p4=p*pow(1+r1,

7、5); p5=p*pow(1+r0/4,4*5); printf(p1=%fn,p1); printf(p2=%fn,p2); printf(p3=%fn,p3); printf(p4=%fn,p4); printf(p5=%fn,p5); return 0;(2)#include int main()char c1=C,c2=h,c3=i,c4=n,c5=a; c1=c1+4; c2=c2+4; c3=c3+4; c4=c4+4; c5=c5+4; printf(passwor is %c%c%c%c%cn,c1,c2,c3,c4,c5); return 0;(3)#include int

8、main() int x,y; printf(输入x:); scanf(%d,&x); if(x1) /* x1 */ y=x; printf(x=%3d, y=x=%dn ,x,y); else if(x10) /* 1=x=10 */ y=3*x-11; printf(x=%d, y=3*x-11=%dn,x,y); return 0;(4)#include #include int main() int num,indiv,ten,hundred,thousand,ten_thousand,place; printf(请输入一个整数(0-99999):); scanf(%d,&num);

9、 if (num9999) place=5; else if (num999) place=4; else if (num99) place=3; else if (num9) place=2; else place=1; printf(位数:%dn,place); printf(每位数字为:); ten_thousand=num/10000; thousand=(int)(num-ten_thousand*10000)/1000; hundred=(int)(num-ten_thousand*10000-thousand*1000)/100; ten=(int)(num-ten_thousa

10、nd*10000-thousand*1000-hundred*100)/10; indiv=(int)(num-ten_thousand*10000-thousand*1000-hundred*100-ten*10); switch(place) case 5:printf(%d,%d,%d,%d,%d,ten_thousand,thousand,hundred,ten,indiv); printf(n反序数字为:); printf(%d%d%d%d%dn,indiv,ten,hundred,thousand,ten_thousand); break; case 4:printf(%d,%d,

11、%d,%d,thousand,hundred,ten,indiv); printf(n反序数字为:); printf(%d%d%d%dn,indiv,ten,hundred,thousand); break; case 3:printf(%d,%d,%d,hundred,ten,indiv); printf(n反序数字为:); printf(%d%d%dn,indiv,ten,hundred); break; case 2:printf(%d,%d,ten,indiv); printf(n反序数字为:); printf(%d%dn,indiv,ten); break; case 1:print

12、f(%d,indiv); printf(n反序数字为:); printf(%dn,indiv); break; return 0; (5)#include int main() int a,n,i=1,sn=0,tn=0; printf(a,n=:); scanf(%d,%d,&a,&n); while (i=n) tn=tn+a; /*赋值后的tn为i个 a组成数的值*/ sn=sn+tn; /*赋值后的sn为多项式前i项之和*/ a=a*10; +i; printf(a+aa+aaa+.=%dn,sn); return 0; (6)#include int main() int i,j,k

13、; for (i=0;i=3;i+) for (j=0;j=2-i;j+) printf( ); for (k=0;k=2*i;k+) printf(*); printf(n); for (i=0;i=2;i+) for (j=0;j=i;j+) printf( ); for (k=0;k=4-2*i;k+) printf(*); printf(n); return 0; 五、运行结果及分析(1)(2)(3)(4)(5)(6)六、结论与体会(在上机程序调试中遇到的问题、采用的解决办法、得到的收获)通过对C语言进行一个学期的学习后,我对C语言有了初步的掌握,也对C语言的特点和优点有了更深入的体会

14、。C语言的语言简洁,紧凑,使用方便灵活;运算符丰富,使表达式的类型多样化;数据类型也很丰富,比如字符型,实型,整型而且在学习的过程中,我越来越体会到了C语言编程的多样性,从初学的只有一种编法,到后来的渐渐会用不同的语句,不同的结构对同一问题进行编写。而在编程的过程中,问题也是在所难免的,而解决了这些问题之后,我发现自己的技能也随之提升。我在上机程序调试中遇到的第一个问题,就是在编译和调试结果都正确的情况下,程序却无法运行。后来通过请教老师,解决了这一问题。在运行程序之前,必须先要关闭其他工作空间。否则系统不知道要运行哪一个程序。后来从书上也查到,在编译新文件前,应先用文件-关闭工作区将原有的工作区关闭,以免新文件在原有的工作区进行编译。 之后遇见的问题,是编译正确,但是检查的时候却无法通过。我检查了很多遍,始终找不到语法错误。后来通过请教同学,知道程序运编写必须用英文标点,而不是用中文标点。于是我把所有中文标点都改成了英文标点,程序便可以运行了。在学习C语言的过程中,我渐

温馨提示

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

评论

0/150

提交评论