收藏 分销(赏)

郑州轻工业学院acm解析大全1300--1315说课讲解.docx

上传人:a199****6536 文档编号:3784202 上传时间:2024-07-18 格式:DOCX 页数:19 大小:27.47KB 下载积分:8 金币
下载 相关 举报
郑州轻工业学院acm解析大全1300--1315说课讲解.docx_第1页
第1页 / 共19页
郑州轻工业学院acm解析大全1300--1315说课讲解.docx_第2页
第2页 / 共19页


点击查看更多>>
资源描述
郑州轻工业学院acm解析大全1300--1315 精品文档 1300 整数a+b 描述;计算两个整数的和,输入两个32位有符号的整数a,b,两个整数之间用空格隔开,输出为两个整数的和,单独占一行example 1 1 -2 #include<stdio.h> int main() { int a,b,sum; scanf("%d%d",&a,&b); sum=a+b; printf("%d",sum); printf("\n"); return 0; } 1301 求两个实数的绝对值 描述;由键盘输入任意两个双精度数据,输出其平均值。输出为一实数,保留两位小数,单独咱一行。Example12.56 45.89 29.23 #include<stdio.h> int main() { double a,b,average; scanf("%lf%lf",&a,&b); average=(a+b)/2; printf("%.2lf",average); return 0; } 补充;float表示为单精度,double表示为双精度,int表示定义的是整型; %.2lf表示的是保留两位小数%10d表示的是总共占有十个空格,右对齐,%f默认的是保留六位小数, 1302 温度转换 描述;输入一个摄氏温度,要求输出华氏温度公式是f=1.8*c+32 要求;输入一个双精度实数,输出数据小数点后面保留两位有效数字example 35 95.00 #include<stdio.h> int main() { double c,f; scanf("%lf",&c); f=1.8*c+32; printf("%.2lf",f); return 0; } 1303 求等差数列的和 描述;给出三个整数,分别表示第一项最后一项和公差,求改数列的和, 注意;输入三个数中间用空格隔开。第一个数作为首项,第二个数作为末项,第三个数作为公差,输出占一行,包含一个整数,为该等差数列的和example2 11 3 26 #include<stdio.h> int main() { int a,b,d; double sum; scanf("%d%d%d",&a,&b,&d); sum=(((b-a)/d)+1)*(a+b)/2; printf("%.0lf",sum); return 0; } 1304 求圆的周长和面积 描述;输入圆的半径,求圆的周长和面积。要求定义如下宏常量#define PI 3.14159 要求;数据保留两位小数。 #include<stdio.h> #define PI 3.14159 int main() { double r,perimeter,area; scanf("%lf",&r); perimeter=2*PI*r; area=PI*r*r; printf("%.2lf %.2lf",perimeter,area); return 0; } 1305 求平均分 已知某学生的数学,英语计算机课程的成绩,求平均分 保留两位小数 #include<stdio.h> int main() { double a,b,c,average; scanf("%lf%lf%lf",&a,&b,&c); average=(a+b+c)/3; printf("%.2lf",average); return 0; } 1306 两个整数的四则运算 输入两个整数num1 num2,输出它们的和差积商以及余数其中商保留两位小数其余为整数数据之间用空格隔开 #include<stdio.h> #include<math.h> int main() { int num1,num2,a,b,c,e; double d; scanf("%d%d",&num1,&num2); a=num1+num2; b=num1-num2; c=num1*num2; d=(num1*1.00)/num2; e=num1%num2; printf("%d %d %d %.2lf %d",a,b,c,d,e); return 0; } Int是实型,double是双精度的,float是单精度的假如想要输出小数部分,则前加float即可,或者是*1.000 1307 求绝对值 描述;求实数的绝对值 要求:结果保留两位小数 Example:-234.00—234.00 #include<stdio.h> #include<math.h> int main() { double a,b; scanf("%lf",&a); b=fabs(a); printf("%.2lf",b); printf("\n"); return 0; } 绝对值函数 1;求整数的绝对值 用abs函数 Int i=-3,j; J=abs(i); 2;求实数的绝对值 用fabs Double a=-4531,b; b=fabs(a) 1308 求前驱和后继 描述;输入一个大写字母,求对应的的小写字母的前驱和后继 要求;输出小写字母的额前一个字母和后一个字母,之间用空格分开。如果没有,用一个减号代替。如输入A则输出为;- b #include<stdio.h> int main() { char a,b,c; scanf("%c",&a); b=a+31; c=a+33; if(a==65) printf("- %c\n",c); else if(a==90) printf("%c -\n",b); else printf("%c %c\n",b,c); return 0; } 说明;Void main() 是指没有返回值 Int main; 有返回值后面加上return 0 当时数去字母是定义字母用char输入地址用%c 1309 时间间隔 描述;从键盘输入两个时间点(24小时制),输出两个时间点之间的时间间隔,时间间隔用“小时:分钟:秒”表示 输入包括两行第一行是时间点1,第二行是时间点2,时间均以“HH:MM:SS”的格式输入。测试数据保证时间点1早于时间点2 Example12:01:12 13:09;43 输出01:08:31 注意:要输出01:08;31中的额占位符0,scanf中的格式控制用%02d #include<stdio.h> int main() { int a,b,c,d,e,f,g,h,i; scanf("%d:%d:%d",&a,&b,&c); scanf("%d:%d:%d",&d,&e,&f); g=((d*3600+e*60+f)-(a*3600+b*60+c))/3600; h=(((d*3600+e*60+f)-(a*3600+b*60+c))-g*3600)/60; i=(((d*3600+e*60+f)-(a*3600+b*60+c))-g*3600)-h*60; printf("%02d:%02d:%02d",g,h,i); printf("\n"); return 0; } 注意:当表示时间时,占两字符时地址表示为%02d 2、当表示整数时用int表示求的是整数 1310 求三个数里的最大数与最小数 描述:从三个整数中取最小数和最大数的程序 输入三个整数,用空格隔开 输出最小数和最大数,用空格隔开。 输出最小数和最大数。 Example;3 7 1 min=1,max=7 要求,用条件运算符实现 #include<stdio.h> int main() { int a,b,c,min,max; scanf("%d%d%d",&a,&b,&c); if(a>b) {min=b; max=a;} else {min=a; max=b;} if(c>max) max=c; else if(c<min) min=c; printf("min=%d,max=%d",min,max); return 0; } 注意: 在三个数比较时条件运算符if else的使用必须是具有较强的逻辑关系还有因果关系三个数的排序问题先按顺序排列或者是先比较两个再比较剩下的一个 1311 求两点之间的距离 描述; 给定A(x1,y1),B(X2,y2)两点坐标,计算它们之间的距离。 输入包含四个实数x1,x2,y1,y2,分别用空格隔开含义如描述。其中0《=x1,x2,y1,y2《=100. 输入包含一行,包含一个实数d,表示A,B两点之间的距离。结果保留两位小数。 Example 1 1 2 2 1.41 #include<stdio.h> #include<math.h> double main() { double x1,x2,y1,y2,d,a; scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2); a=(x2-x1)*(x2-x1)+(y2-y1)*(y2-y1); d=sqrt(a); printf("%.2lf",d); return 0; } 注意;变量的初始化,就是给变量赋值;&x1 开方的函数式sqrt(a) 1312 求三角形的面积 描述;给出三角形的三条边求三角形的面积 输入三角形的三条边长(实数),数据之间用空格隔开。 输出三角形的面积,结果保留两位小数 Example 2.5 4 5 4.96 用海伦公式或其他方法均可 #include<stdio.h> #include<math.h> int main() { double a,b,c,d,s; scanf("%lf%lf%lf",&a,&b,&c); d=(a+b+c)/2; s=sqrt(d*(d-a)*(d-b)*(d-c)); printf("%.2lf",s); return 0; } 注意:海伦公式,如图所示 1313 正整数的逆序数 描述;从键盘输入三位正整数,编程计算并输入它的逆序数。例如,输入123,应输出321 #include<stdio.h> int main() { int a,b,c,d,e; scanf("%d",&a); b=a/100; c=(a/10)%10; d=a%10; e=d*100+c*10+b; printf("%d",e); return 0; } 注意求余用%比如对十求余A%10,对100求余a%100 1314 银行利率 描述;设银行定期存款的年利率rate为2.25%,已知存款期为N年存款年金为capital元,试编程计算并输出n年后的本利之和deposit 输入一个正整数和一个双精度实数,分别代表存款期和存款本金 输出一个双精度实数,小数点后保留六个有效数字 2 100 104.550625 #include<stdio.h> #include<math.h> int main() { int n; double capital,deposit; scanf("%d%lf",&n,&capital); deposit=pow(1.0225,n)*capital; printf("%.6lf",deposit); return 0; } 注释; 求一个数的幂函数为pow(n,m)表示为n的m次方 1315 二次方程的实根 描述;编程计算输出一元二次方程ax^2+bx+c=0的两个实根,其中a,b,c的值由用户从键盘输入,假设a,b,c,的值不能保证方程有两个不相等的实根 输入三个实数,以空格隔开输出两个实数,每个数据占7列、小数点后保留两位小数,不足7列的右对齐 Example 2 6 1 -0.18 -2.82 注意使用数学的有关函数,在程序首部加#include,注意%m.nf的使用 #include<stdio.h> #include<math.h> int main() { double a,b,c,d,e; scanf("%lf%lf%lf",&a,&b,&c); d=(sqrt(b*b-4*a*c)-b)/(2*a); e=(-sqrt(b*b-4*a*c)-b)/(2*a); printf("%7.2lf%7.2lf",d,e); return 0; } 注释; %7.2lf是指的右对齐7数列然后有两个小数部分;左对齐是就是%-7.2lf前面加上-便可; 收集于网络,如有侵权请联系管理员删除
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服