数据结构实验报告 实验4 选择结构程序设计实验报告.doc

数据结构实验报告 实验4 选择结构程序设计实验报告.doc

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构实验报告 实验4 选择结构程序设计实验报告 实验4 选择结构程序设计 一、实验目的 1.了解C语言表示逻辑值的方法。 2.学会正确使用逻辑运算符和逻辑表达式的方法。 3.熟悉if语句和switch语句。 4.结合程序掌握一些简单的算法。 5.学习调试程序的方法。 二、实验内容 本实验要求编程解决以下问题,然后上机调试运行程序。 x?1?x?1?x?101.y??2x?1 ?3x?11x?10? 用scanf函数输入x的值,求y的值。 其程序为: #includelt;stdio.hgt; void main() { int x,y; printf(请输入x:\n); scanf(%d,x); if(xlt;1) y=x; else if(xlt;10) y=2*x-1; else y=3*x-11; printf(x=%d,y=%d\n,x,y); } 运行结果为: 2.给出一个百分制的成绩,要求输出成绩等级A,B,C,D,E,90分及以上为A,80-89为B,70-79为C,60-69为D,60分以下为E。要求从键盘输入成绩,然后输出相应等级,分别用if语句和switch语句实现。 (1)使用if语句的程序如下: #includelt;stdio.hgt; void main() { float score; char grade; printf(请输入学生成绩:\n); scanf(%f,score); if(scoregt;=90) grade=A; else if (scoregt;=80) grade=B; else if (scoregt;=70) grade=C; else if (scoregt;=60) grade=D; else grade=E; printf(成绩是%-5.1f,相应的等级是%c\n,score,grade); } 运行结果为: (2)使用switch语句程序如下: #includelt;stdio.hgt; void main() { float score; char grade; printf(请输入学生成绩:\n); scanf(%f,score); switch(int(score/10)) { case 10: case 9: grade=A;break; case 8: grade=B;break; case 7: grade=C;break; case 6: grade=D;break; default: grade=E;break; } printf(成绩是%-5.1f,相应的等级是%c\n,score,grade); } 其运行结果与使用if语句运行结果一样。 3.编程实现:输入一个不多于5位的正整数,要求:(1)输出它是几位数,(2)分别输出每一位数字,(3)按逆序输出各位数字,如原数为321,则应输出123。 应准备以下测试数据 要处理的数为1位正整数; 要处理的数为2位正整数; 要处理的数为3位正整数; 要处理的数为4位正整数; 要处理的数为5位正整数; 除此之外,程序还应当对不合法的输出作必要的处理。例如: 输入负数; 输入的数超过5位; 其程序为: #includelt;stdio.hgt; #includelt;math.hgt; int main() { int num,indiv,ten,hundred,thousand,ten_thousand,place; printf(请输入一个整数(0-99999):\n); scanf(%d,num); if(numgt;99999) printf(输入的数超过5位!\n); else if(numlt;0) printf(输入的数是一个负数!\n); else { if(numgt;9999) place=5; else if(numgt;999) place=4; else if(numgt;99) place=3; else if(numgt;9) place=2; else place=1; if(numgt;99999||numlt;0) printf(enter num is error!\n); printf(位数:%d\n,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_thousand*10000-thousand*1000-

文档评论(0)

raojun00007 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档