郑州轻工业学院ACM1341-1350网站试题解析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1341
最大值
Description
输入一个整数n和n个整数,输出这n个整数的最大值。

Input
输入有两行:第一行是一个正整数n,第二行是n个整数
Output
输出包含一个整数,即n个数中的最大值,单独占一行。

Sample Input
4
3 7 5 6
Sample Output
7
Source
#include<stdio.h>
int main()
{
intn,i,a[10000],max;
scanf("%d",&n);
scanf("%d",&a[0]);
max=a[0];
for(i=1;i<n;i++)
{
scanf("%d",&a[i]);
if(max<a[i])
{
max=a[i];
}
}
printf("%d\n",max);
return 0;
}
1342
对数表
Description
输入两个正整数m和n,输出m到n之间每个整数的自然对数。

Input
输入包括两个整数m和n(m<=n),之间用一个空格隔开。

Output
每行输出一个整数及其对数,整数占4列,对数占8列,对数保留4位小数。

Sample Input
2 4
Sample Output
2 0.6931
3 1.0986
4 1.3863
Source
#include<stdio.h>
#include<math.h>
int main()
{
doublen,m,r;
inti;
scanf("%lf%lf",&m,&n);
for(i=m;i<=n;i++)
{
r=log(i);
printf("%4d%8.4lf\n",i,r);
}
return 0;
1343
求数列的和
Description
数列的定义如下:
数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。

Input
由两个整数n(n<10000)和m(m<1000)组成,n和m的含义如前所述。

Output
输出该数列的和,占一行,要求精度保留2位小数。

Sample Input
84 4
Sample Output
97.93
Source
#include<stdio.h>
#include<math.h>
int main()
doublem,n,a[100000],s;
inti;
scanf("%lf%lf",&n,&m);
s=n;
a[0]=n;
for(i=0;i<m-1;i++)
{
a[i+1]=sqrt(a[i]);
s=s+a[i+1];
}
printf("%.2lf\n",s);
return 0;
}
1344
求水仙花数
Description
春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的:
“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:
153=1^3+5^3+3^3。

现在要求输出所有在m和n范围内的水仙花数。

Input
包括两个整数m和n(100<=m<=n<=999)。

Output
要求输出所有在给定范围内的水仙花数,就是说,输出的水仙花数必须大于等于m,并且小于等于n,如果有多个,则要求从小到大排列在一行内输出,每个数后面有一个空格;
如果给定的范围内不存在水仙花数,则输出no;
输出占一行。

Sample Input
300 380
Sample Output
370 371
Source
#include<stdio.h>
#include<math.h>
int main()
{
intm,n,a,b,c,s,j=0,i;
scanf("%d%d",&m,&n);
for(i=m;i<=n;i++)
{
a=i/100;
b=i%100/10;
c=i%10;
s=a*a*a+b*b*b+c*c*c;
if(i==s)
{
j++;
printf("%d ",i);
}
}
if(j==0)
printf("no");
return 0;
}
1345
前N项和
Description
输入n和a,求a+aa+aaa+…aa…a(n个a),如当n=3,a=2时,2+22+222的结果为246
Input
包含两个整数,n和a,含义如上述,你可以假定n和a都是小于10的非负整数Output
输出前n项和,单独占一行
Sample Input
3 2
Sample Output
246
Source
#include<stdio.h>
#include<math.h>
int main()
{
inta,n,s=0,i,j,b[10];
scanf("%d%d",&n,&a);
b[0]=0;
for(i=0;i<=n;i++)
{
for(j=0;j<n;j++)
{
b[j+1]=b[j]*10+a;
}
s=s+b[i];
}
printf("%d",s);
return 0;
}
1346
数值统计
Description
统计给定的n个数中,负数、零和正数的个数。

Input
输入的第一个数是整数n(n<100),表示需要统计的数值的个数,然后是n个整数
Output
输出一行a,b和c,分别表示给定的数据中负数、零和正数的个数。

Sample Input
6 0 1 2 3 -1 0
Sample Output
1 2 3
Source
#include<stdio.h>
int main()
{
int a[100000],s=0,j=0,k=0,n,i; scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
if(a[i]<0)
j++;
if(a[i]==0)
k++;
if(a[i]>0)
s++;
}
printf("%d %d %d",j,k,s); return 0;
}
1347
平方和与立方和
Description
给定两个整数m和n,求出m~n这段连续的整数中所有偶数的平方和以及所有奇数的立方和。

Input
由两个整数m和n组成,你可以假定m<=n.
Output
应包括两个整数x和y,分别表示该段连续的整数中所有偶数的平方和以及所有奇数的立方和。

你可以认为32位整数足以保存结果。

Sample Input
2 5
Sample Output
20 152
Source
#include<stdio.h>
#include<math.h>
int main()
{
inti,m,n;
double s1=0,s2=0;
scanf("%d%d",&m,&n);
for(i=m;i<=n;i++)
{
if(i%2==0)
s1=s1+pow(i,2);
else
s2=s2+pow(i,3);
}
printf("%.0lf %.0lf",s1,s2);
return 0;
}
1348
奇数的乘积
Description
给你n个整数,求他们中所有奇数的乘积。

Input
第一个数为n,表示本组数据一共有n个,接着是n个整数,你可以假设每组数据必定至少存在一个奇数。

Output
输出n个数中的所有奇数的乘积,占一行。

Sample Input
5 2 5 4
6 7
Sample Output
35
Source
#include<stdio.h>
int main()
{
intn,i,a[100000],s=1; scanf("%d",&n);
for(i=0;i<n;i++) {
scanf("%d",&a[i]);
if(a[i]%2==1)
s=s*a[i];
}
printf("%d",s); return 0;
}
1349
阶乘的累加和Description
求1! + 2! + ……n!
Input
输入一个整数n,你可以假定n不大于10。

Output
输出一个整数,即阶乘累加的结果,单独占一行。

Sample Input
4
Sample Output
33
Source
#include<stdio.h>
int main()
{
int i,j,n,sum1,sum2;
sum1=0;sum2=1;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
sum2=sum2*i;
sum1=sum1+sum2;
}
printf("%d",sum1);
return 0;
}
1350
素数的判定
Description
输入一个正整数n,判断n是否是素数,若n是素数,输出”Yes”,否则输出”No”。

Input
输入一个正整数n(n<=1000)
Output
如果n是素数输出"Yes",否则输出"No"。

输出占一行。

Sample Input
2
Sample Output
Yes
Source
#include<stdio.h>
int main()
{
inta,b,n,i,j;
j=0;
scanf("%d",&n);
a=n/2;
if(n==1)
printf("No");
else if(n==2)
printf("Yes");
else if(n>2)
{
{
for(i=2;i<=a;i++)
{
b=n%i;
if(b==0)
j=j+1;
}
}
if(j==0)
printf("Yes"); else if(j>0)
printf("No"); }
return 0;
}。

相关文档
最新文档