程序设计实你验及在线指导课后习题答案

上传人:re****.1 文档编号:499433380 上传时间:2023-07-15 格式:DOC 页数:14 大小:66.50KB
返回 下载 相关 举报
程序设计实你验及在线指导课后习题答案_第1页
第1页 / 共14页
程序设计实你验及在线指导课后习题答案_第2页
第2页 / 共14页
程序设计实你验及在线指导课后习题答案_第3页
第3页 / 共14页
程序设计实你验及在线指导课后习题答案_第4页
第4页 / 共14页
程序设计实你验及在线指导课后习题答案_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《程序设计实你验及在线指导课后习题答案》由会员分享,可在线阅读,更多相关《程序设计实你验及在线指导课后习题答案(14页珍藏版)》请在金锄头文库上搜索。

1、第二章/*一:求平均年龄描述班上有学生若干名,给出每名学生的年龄(整数),求班上所有学生的平均年龄,保留到小数点后两位。输入第一行有一个整数n(1=n=100),表示学生的人数。其后n行每行有1个整数,取值为15到25。输出输出一行,该行包含一个浮点数,为要求的平均年龄,保留到小数点后两位。样例输入21817样例输出17.50提示要输出浮点数、双精度数小数点后2位数字,可以用下面这种形式:printf(%.2f,num);#includeintmain()intn,i,age;doublesum,average;sum=0.00;scanf(%d,&n);for(i=1;i=n;i+)scan

2、f(%d,&age);sum+=age;average=sum/n;printf(%.2fn,average);/*二:数字求和描述给定一个正整数a,以及另外的5个正整数,问题是:这5个整数中,小于a的整数的和是多少?输入输入一行,只包括6个小于100的正整数,其中第一个正整数就是a。输出输出一行,给出一个正整数,是5个数中小于a的数的和。样例输入10123411样例输出10#includeintmain()inta,i,s5;intsum;sum=0;scanf(%d,&a);for(i=0;i5;i+)scanf(%d,&si);for(i=0;i5;i+)if(sia)sum+=si;p

3、rintf(%dn,sum);/*三:两倍:描述给定2到15个不同的正整数,你的任务是计算这些数里面有多少个数对满足:数对中一个数是另一个数的两倍。比如给定1432971822,得到的答案是3,因为2是1的两倍,4是2个两倍,18是9的两倍。输入输入包括多组测试数据。每组数据包括一行,给出2到15个两两不同且小于100的正整数。每一行最后一个数是0,表示这一行的结束后,这个数不属于那2到15个给定的正整数。输入的最后一行只包括一个整数-1,这行表示输入数据的结束,不用进行处理。输出对每组输入数据,输出一行,给出有多少个数对满足其中一个数是另一个数的两倍。样例输入1432971822024810

4、0751113130-1样例输出320*/#includeintmain()(inta16,i;intcount,j,m=0;while(1)(scanf(%d”,&a0);if(a0=-1)break;m=0;for(i=1;i+)(scanf(%d,&ai);m+;if(ai=0)break;count=0;j=m;while(j-)(for(i=0;im;i+)(if(aj=2*ai)count+;printf(%d%dn,count,m);四:肿瘤面积/*描述在一个正方形的灰度图片上,肿瘤是一块矩形的区域,肿瘤的边缘所在的像素点在图片中用0表示。其它肿瘤内和肿瘤外的点都用255表示。现

5、在要求你编写一个程序,计算肿瘤内部的像素点的个数(不包括肿瘤边缘上的点)。已知肿瘤的边缘平行于图像的边缘。输入只有一个测试样例。第一行有一个整数n,表示正方形图像的边长。其后n行每行有n个整数,取值为0或255。整数之间用一个空格隔开。已知n不大于1000。输出输出一行,该行包含一个整数,为要求的肿瘤内的像素点的个数。样例输入525525525525525525500025525502550255255000255255255255255255样例输出1提示如果使用静态数组来表示图片数据,需要将该数组定义成全局变量。*/#includeints10001000;intmain()intn,i,

6、j,b,c,k,t;intarea;area=0;scanf(%d,&n);for(i=0;in;i+)for(j=0;jn;j+)scanf(%d,&sij);j=0;for(i=0;in;i+)if(sij=0)b=i;t=j;break;j+;)i=0;for(j=0;jn;j+)(if(sij=0)(c=j;k=i;)i+;)area=(k-b-1)*(c-t-1);printf(%d%d%d%d%dn,area,b,c,k,t);)/*五:肿瘤检测描述一张CT扫描的灰度图像可以用一个N*N(0N100)的矩阵描述,矩阵上的每个点对应一个灰度值(整数),其取值范围是0-255。我们假设

7、给定的图像中有且只有一个肿瘤。在图上监测肿瘤的方法如下:如果某个点对应的灰度值小于等于50,则这个点在肿瘤上,否则不在肿瘤上。我们把在肿瘤上的点的数目加起来,就得到了肿瘤在图上的面积。任何在肿瘤上的点,如果它是图像的边界或者它的上下左右四个相邻点中至少有一个是非肿瘤上的点,则该点称为肿瘤的边界点。肿瘤的边界点的个数称为肿瘤的周长。现在给定一个图像,要求计算其中的肿瘤的面积和周长。输入输入第一行包含一个正整数N(0N100),表示图像的大小;接下来N行,每行包含图像的一行。图像的一行用N个整数表示(所有整数大于等于0,小于等于255),两个整数之间用一个空格隔开。输出输出只有一行,该行包含两个正

8、整数,分别为给定图像中肿瘤的面积和周长,用一个空格分开。样例输入6999999999999999999509999999949495051995020255299405099999999999999999999样例输出98*/#includeints10001000;intmain()(intn,i,j;intarea,permit;area=0;permit=0;scanf(%d,&n);for(i=0;in;i+)for(j=0;jn;j+)(scanf(%d,&sij);for(i=0;in;i+)for(j=0;jn;j+)if(sij50|si+1j50|sij-150|sij+15

9、0)permit+;printf(%d%dn,area,permit);/*八:简单密码描述JuliusCaesar曾经使用过一种很简单的密码。对于明文中的每个字符,将它用它字母表中后5位对应的字符来代替,这样就得到了密文。比如字符A用F来代替。如下是密文和明文中字符的对应关系。密文ABCDEFGHIJKLMNOPQRSTUVWX丫Z明文VWXYZABCDEFGHIJKLMNOPQRSTU你的任务是对给定的密文进行解密得到明文。你需要注意的是,密文中出现的字母都是大写字母。密文中也包括非字母的字符,对这些字符不用进行解码。输入输入中的测试数据不超过100组。每组数据都有如下的形式,而且各组测试

10、数据之间没有空白的行。一组测试数据包括三部分1 .起始行-一行,包括字符串START2002 .密文-一行,给出密文,密文不为空,而且其中的字符数不超过3 .结束行-一行,包括字符串END在最后一组测试数据之后有一行,包括字符串ENDOFINPUT。输出对每组数据,都有一行输出,给出密文对应的明文。样例输入STARTNSBFW,JAJSYXTKNRUTWYFSHJFWJYMJWJXZQYTKYWNANFQHFZXJXENDSTARTNBTZQIWFYMJWGJKNWXYNSFQNYYQJNGJWNFSANQQFLJYMFSXJHTSINSWTRJENDSTARTIFSLJWPSTBXKZQQB

11、JQQYMFYHFJXFWNXRTWJIFSLJWTZXYMFSMJENDENDOFINPUT样例输出INWAR,EVENTSOFIMPORTANCEARETHERESULTOFTRIVIALCAUSESIWOULDRATHERBEFIRSTINALITTLEIBERIANVILLAGETHANSECONDINROMEDANGERKNOWSFULLWELLTHATCAESARISMOREDANGEROUSTHANHE*/#include#includeintmain()chars201,end201;charb27=VWXYZABCDEFGHIJKLMNOPQRSTU;inti,len;get

12、s(s);while(strcmp(s,START)=0)gets(s);len=strlen(s);for(i=0;i=A&si=Z)si=bsi-A;gets(end);printf(%sn,s);gets(s);第三章一:十进制到八进制#includeintmain()(intn,i,j;ints200;scanf(%d,&n);i=0;while(n0)(si=n%8;n=n/8;i+;)for(j=i-1;j=0;j-)(printf(%o,sj);)二:八进制到十进制#include#includeintmain()(inti,len,ret;chars100;ret=0;scanf(%s,&s);len=strlen(s);for(i=0;ilen;i+)(ret*=8;ret+=si-0;)printf(%dn,ret);三:二进制到十六进制#include#includecharalp尸”0123456789ABCDEF;intmain()intresult=0,ret;inti,len,t,j,k,p;chara10002;charres100;scanf(%d,&t);getchar();while(t-)ret=0;gets(a);len=strlen(a);for(i=0;i0)(result=ret%16;resj=alpresult;ret

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 演讲稿/致辞

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号