资源描述:
《上机实验四 分支结构程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、上机实验四分支结构程序设计学号:姓名:一.目的要求1.掌握运用关系运算和逻辑运算表示各种条件;2.掌握字符型变量的定义方法和输入一个字符的方法;3.掌握if语句的3种格式和使用方法;掌握switch语句的语法规则、执行流程;4.掌握break语句在switch语句和循环语句中的作用。二.实验内容【实验题1】.程序填充:输入年份year,判断并输出该年份是否是闰年(leapyear)?如输入2000,则显示“2000isaleapyear!”,输入2100,则显示“2100isnotaleapyear!”.提示:判断年份year是闰年的条件是:(1)能被
2、400整除,或者(2)能被4整除但不能被100整除.如何用逻辑或“
3、
4、”和逻辑与“&&”,结合求余运算“%”以及关系运算“==”和“!=”表示该条件?源程序:#includevoidmain(){intyear;printf("Inputyear:");scanf("%d",&year);if(year%400==0
5、
6、(year%400!=0&&yaer%4==0))/*year是闰年*/printf("%disaleapyear!",year);else/*year不是闰年*/printf("%disnotaleapyear!
7、",year);}编译、连接并运行该程序:如果输入2000,则显示Inputyear:20002000isaleapyear!;如果输入2008,则显示Inputyear:20082008isaleapyear!;如果输入2100,则显示Inputyear:21002100isnotaleapyear!。【实验题2】程序填充:输入15个字符,统计英文字母、空格、数字和其它字符的个数。源程序如下:#includevoidmain(){inti,digit,blank,letter,other;/*line3*/charch;/*定义
8、字符型变量ch*/digit=blank=letter=other=0;/*line5*/printf("Enter15characters:");for(i=11;i<=15;i++){ch=getchar();/*为ch输入一个字符*/if(ch>=‘a’&&ch,=‘z’
9、
10、ch>=‘A’&&ch<=‘Z’)/*ch是英文字母*/letter++;elseif(ch>=‘0’&&ch<=‘9’)/*ch是数字*/digit++;elseif(ch==‘’
11、
12、ch==‘’)/*ch是空格*/enter++;else/*ch是其他字符*/othe
13、r++;}printf("digit=%d,letter=%d,blankr=%d,other=%d",digit,letter,blank,other);}编译、连接并运行程序,输入aB5c&d*!221?,则结果显示:Enter15characters:aB5c&d*!221?digit=4,letter=4,blank=3,other=4如果删除标有/*line5*/的语句行,并将标有/*line3*/的语句行改写为“inti,digit=blank=letter=other=0;”,重新编译时是否正确?系统提示什么?应如何修改这一行才能保证
14、程序的正确性?错误,digitletter,blank,other没有定义,inti,digit=0,blank=0,letter=0,other=0【实验题3】程序设计:输入一个三位数的整数n,判断n是否为Amstrong数。所谓Amstrong数,是指该数的个、十、百位上的数字的立方和恰好等于该数本身,如153,370,371和407都是Amstrong数。【分析】难点1:如何解析出一个三位数n的个位数g、十位数s、百位数b?~~三位数n除以10,余数正好是该整数的个位数,故可以用求余运算“%”求g,即g=n%10;~~三位数n除以100,商正好是
15、n的百位数,故可以用整除运算“/”求b,即b=n/100;~~三位数n除以10,商是n的百位与十位,再将该商除以10,余数正好是n的十位数s,即s=n/10%10;难点2:已知n的个、十、百位数g,s,b,如何判断n是否是Amstrong数?~~个、十、百位数的立方和恰好等于该数本身,数学表达式是g3+s3+b3=n,C语言表达式应写为g*g*g+s*s*s+b*b*b==n。请编写源程序:#include#includevoidmain(){intn,g,s,b;printf("inputn:");scanf("%d
16、",&n);g=n%10;b=n/100;s=n/10%10;if(pow(g,3)+pow(