ZZULIOJ1041-1050

目录

1041: 数列求和2

1042: 数列求和3 

1043: 最大值 

1044: 不及格率 

 1045: 数值统计

1046: 奇数的乘积 

 1047: 对数表

1048: 阶乘表 

1049: 平方和与立方和

1050: 阶乘的累加和 


 

1041: 数列求和2

题目描述

输入一个整数n,输出数列1-1/3+1/5-……前n项的和。

输入

输入只有一个整数n。

输出

结果保留2为小数,单独占一行。

样例输入 Copy

3

样例输出 Copy

0.87
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
 int n,i;
 double sum;
scanf("%d",&n);
sum=0;
for(i=0;i<n;i++)
{
     sum=sum +  1.0/(2.0 * i+1) * pow(-1,i);
}
printf("%.2f",sum);
 return 0;
}
 
/**************************************************************
    Problem: 1041
    User: 542107230106
    Language: C
    Result: 正确
    Time:1 ms
    Memory:1240 kb
    通过码:jhYjCE4x4nCxTCfJJpvCjVRSfPU
****************************************************************/

1042: 数列求和3 

题目描述

求1-2/3+3/5-4/7+5/9-6/11+...的前n项和,结果保留3位小数。

输入

输入正整数n(n>0)。

输出

输出一个实数,保留3位小数,单独占一行。

样例输入 Copy

5

样例输出 Copy

0.917
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
 int n,i;
 double sum;
scanf("%d",&n);
sum=0;
for(i=0;i<n;i++)
{
     sum=sum + (1.0 * (1 + i))/(2.0 * i+1) * pow(-1,i);
}
printf("%.3f",sum);
 return 0;
}
 
/**************************************************************
    Problem: 1042
    User: 542107230106
    Language: C
    Result: 正确
    Time:1 ms
    Memory:1240 kb
    通过码:jh9wDEhm4HGxTCfJJpvCjVRSfPY
****************************************************************/

1043: 最大值 

题目描述

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

输入

输入有两行:第一行是一个正整数n,第二行是n个整数。

输出

输出包含一个整数,即n个数中的最大值,单独占一行。

样例输入 Copy
<span style="background-color:#ffffff"><span style="color:#333333"><span style="color:#333333"><span style="background-color:#f5f5f5">4
3 7 5 6</span></span></span></span>
样例输出 Copy
<span style="background-color:#ffffff"><span style="color:#333333"><span style="color:#333333"><span style="background-color:#f5f5f5">7</span></span></span></span>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
 int n,i,max,t;
 
scanf("%d",&n);
scanf("%d", &t);
max=t;
for(i=2;i<=n;i++)
{
    scanf("%d",&t);
  if (max<=t)
    max=t;
}
printf("%d\n",max);
 return 0;
}
 
/**************************************************************
    Problem: 1043
    User: 542107230106
    Language: C
    Result: 正确
    Time:1 ms
    Memory:1044 kb
    通过码:gh53UEhhtyOxTCfJJpvCjVRSfPc
****************************************************************/

1044: 不及格率 

题目描述

输入n和n个学生成绩(实数),输出不及格率。

输入

输入的第一行是一个整数n,第二行是n个实数,用空格隔开。

输出

输出一个实数,表示不及格率,结果保留2位小数,单独占一行。

样例输入 Copy

8
98  45 86 79 56 75 90 70

样例输出 Copy

0.25

提示

注意,不及格率为0时,输出0.00

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
 int n,i,m,t;
 
scanf("%d",&n);
 
m=0;
for(i=1;i<=n;i++)
{
    scanf("%d",&t);
  if (t<=60)
    m++;
}
printf("%.2f\n",(double)m/n);
 return 0;
}
 
/**************************************************************
    Problem: 1044
    User: 542107230106
    Language: C
    Result: 正确
    Time:1 ms
    Memory:1044 kb
    通过码:jB50X0c05SOxTCfJJpvCjVRSfPA
****************************************************************/

 1045: 数值统计

题目描述

 统计给定的n个数中,负数、零和正数的个数。 

输入

 输入的第一个数是整数n(n<100),表示需要统计的数值的个数,然后是n个整数 

输出

 输出一行a,b和c,分别表示给定的数据中负数、零和正数的个数。 

样例输入 Copy

6 0 1 2 3 -1 0

样例输出 Copy

1 2 3
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
 int n,i,t,a,b,c;
 
scanf("%d",&n);
a=0;
b=0;
c=0;
for(i=1;i<=n;i++)
{
    scanf("%d",&t);
  if (t<0)
    a++;
    if (t==0)
        b++;
    if (t>0)
        c++;
}
printf("%d %d %d\n",a,b,c);
 return 0;
}
 
/**************************************************************
    Problem: 1045
    User: 542107230106
    Language: C
    Result: 正确
    Time:1 ms
    Memory:1044 kb
    通过码:3RR3Cx8z5iOxTCfJJpvCjVRSfPE
****************************************************************/

1046: 奇数的乘积 

题目描述

 给你n个整数,求他们中所有奇数的乘积。 

输入

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

输出

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

样例输入 Copy

5 2 5 4 6 7

样例输出 Copy

35
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<stdio.h>
 
int main(void)
 
{
 int n,t,i,sum;
 scanf("%d",&n);
 sum = 1;
 for (i=1;i<=n;i++)
   {scanf("%d",&t);
    if (t % 2 !=0)
        sum = t * sum;}
    printf("%d\n",sum);
     return 0;
}
 
 
 
 
/**************************************************************
    Problem: 1046
    User: 542107230106
    Language: C
    Result: 正确
    Time:1 ms
    Memory:1044 kb
    通过码:j0AiXR1nvHexTCfJJpvCjVRSfPI
****************************************************************/

 1047: 对数表

题目描述

输入两个正整数m和n,输出m到n之间每个整数的自然对数。

输入

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

输出

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

样例输入 Copy

2 4

样例输出 Copy

   2  0.6931
   3  1.0986
   4  1.3863
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<stdio.h>
 
int main(void)
 
{
 int m, n,i;
 scanf("%d %d",&m, &n);
 for (i=m;i<=n;i++)
 {
     printf("%4d%8.4f\n",i,(double)log(i));
 }
 
     return 0;
}
 
 
 
 
/**************************************************************
    Problem: 1047
    User: 542107230106
    Language: C
    Result: 正确
    Time:1 ms
    Memory:1156 kb
    通过码:jhclD0ky5nexTCfJJpvCjVRSfPM
****************************************************************/

1048: 阶乘表 

题目描述

输入一个正整数n(n<=20),输出1到n之间阶乘表。

输入

输入只有一个正整数n。

输出

输出1到n之间的阶乘表,格式见输出样例。每行两个数据,第一个数据占4列,第二个数据占20列,左对齐。

样例输入 Copy

5

样例输出 Copy

1   1                   
2   2                   
3   6                   
4   24                  
5   120                 

提示

注意int类型的表示范围

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<stdio.h>
 
int main(void)
 
{
  int  n,i;
  double m;
 scanf("%d",&n);
 m=1;
 for (i=1;i<=n;i++)
 {   m = m * i;
     printf("%-4d%-20.0lf\n",i,m);
 }
 
     return 0;
}
 
 
 
 
/**************************************************************
    Problem: 1048
    User: 542107230106
    Language: C
    Result: 正确
    Time:1 ms
    Memory:1044 kb
    通过码:2hd0WRw7vCSxTCfJJpvCjVRSfPw
****************************************************************/

1049: 平方和与立方和

题目描述

给定两个整数m和n,求出m~n这段连续的整数中所有偶数的平方和以及所有奇数的立方和。

输入

由两个整数m和n组成,你可以假定m<=n.

输出

应包括两个整数x和y,分别表示该段连续的整数中所有偶数的平方和以及所有奇数的立方和。32位整数足以保存结果。

样例输入 Copy

2 5

样例输出 Copy

20 152
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<stdio.h>
 
int main(void)
 
{
   int m,n,i,a=0,b=0;
   scanf("%d%d",&m, &n);
   for (i=m;i<=n;i++)
   {
       if  (i % 2 ==0)
        a = a + i * i;
       if (i % 2 !=0)
        b = b + i * i * i;
 
   }
 printf("%d %d\n",a,b);
 
 
     return 0;
}
 
 
 
 
/**************************************************************
    Problem: 1049
    User: 542107230106
    Language: C
    Result: 正确
    Time:1 ms
    Memory:1044 kb
    通过码:ihB1D01h5yyxTCfJJpvCjVRSfP0
****************************************************************/

1050: 阶乘的累加和 

题目描述

求1! + 2! + ……n!

输入

输入一个整数n,你可以假定n不大于10。

输出

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

样例输入 Copy

4

样例输出 Copy

33
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<stdio.h>
 
int main(void)
 
{
   int n,i;
   double s,y;
   scanf("%d",&n);
   s=1;
   for (i=1;i<=n;i++)
   {
    s=s*i;
    y=y+s;
   }
 printf("%.f\n",y);
 
     return 0;
}
 
 
 
 
/**************************************************************
    Problem: 1050
    User: 542107230106
    Language: C
    Result: 正确
    Time:1 ms
    Memory:1044 kb
    通过码:jhV1XktmtHOxTCfJJpvCjVRSffQ
****************************************************************/

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值