上机实验四 分支结构程序设计.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
上机实验四 分支结构程序设计

上机实验四 分支结构程序设计 学号: 姓名: 一.目的要求 掌握运用关系运算和逻辑运算表示各种条件; 掌握字符型变量的定义方法和输入一个字符的方法; 掌握if语句的3种格式和使用方法;掌握switch语句的语法规则、执行流程; 掌握break语句在switch语句和循环语句中的作用。 二.实验内容 【实验题1】. 程序填充:输入年份year, 判断并输出该年份是否是闰年(leap year)?如输入2000,则显示“2000 is a leap year!”,输入2100,则显示“2100 is not a leap year!”. 提示:判断年份year是闰年的条件是: (1) 能被400整除, 或者 (2) 能被4整除但不能被100整除. 如何用逻辑或“||”和逻辑与“”,结合求余运算“%”以及关系运算“==”和“!=”表示该条件? 源程序: #include stdio.h void main() { int year; printf(Input year: ); scanf( %d , year ); if( year%400==0||(year%400!=0yaer%4==0) ) /* year是闰年*/ printf(%d is a leap year! \n,year); else /* year不是闰年*/ printf(%d is not a leap year! \n, year); } 编译、连接并运行该程序:如果输入2000,则显示Input year:2000 2000 is a leap year!;如果输入2008,则显示 Input year:2008 2008 is a leap year! ;如果输入2100,则显示Input year:2100 2100 is not a leap year!。 【实验题2】程序填充:输入15个字符,统计英文字母、空格、数字和其它字符的个数。源程序如下: #includestdio.h void main() { int i,digit,blank ,letter,other; /*line 3 */ char ch; /* 定义字符型变量ch*/ digit=blank=letter=other=0; /*line 5 */ printf(Enter 15 characters:); for( i=11; i= 15 ; i++) { ch=getchar() ; /* 为ch输入一个字符*/ if ( ch= ‘a’ch,= ‘z’||ch= ‘A’ch= ‘ Z’ ) /* ch是英文字母*/ letter++; else if ( ch= ‘0’ch= ‘9’ ) /* ch是数字*/ digit++; else if ( ch== ‘’||ch== ‘\n’ ) /* ch是空格*/ enter++; else /* ch是其他字符*/ other++; } printf(digit=%d, letter=%d, blankr=%d, other=%d\n, digit,letter,blank,other); } 编译、连接并运行程序,输入aB 5cd *!221?, 则结果显示: Enter 15 characters:aB 5cd *!221? digit=4,letter=4,blank=3,other=4 如果删除标有/*line 5 */的语句行,并将标有/*line 3*/的语句行改写为“int i,digit=blank=letter=other=0;”,重新编译时是否正确?系统提示什么?应如何修改这一行才能保证程序的正确性? 错误,digit letter,blank,other没有定义,int i,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,商正好是n的百位数,故可以用整除运算“/”求b, 即b= n/100; ~~三位数n除以10,商是n的百位与十位 ,再将该商除

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档