目录
1.求整数均值:
输入4个整数,计算并输出这些整数的和与平均值,其中平均值精确到小数点后1位。试编写相应程序。
输入格式:
输入在一行中给出4个整数,其间以空格分隔。
输出格式:
在一行中按照格式“Sum = 和; Average = 平均值”顺序输出和与平均值,其中平均值精确到小数点后一位。
输入样例:
1 2 3 4
输出样例:
Sum = 10; Average = 2.5
#include<stdio.h>
int main()
{
int n;
double sum=0,ave=0,num=0;
while((scanf("%d",&n))!=EOF){
sum+=n;
num++;
}
printf("Sum = %.0f; Average = %.1f",sum,sum/num);
return 0;
}
2.阶梯电价:
为了提倡居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电价分为两个“阶梯”:月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦时;超过50千瓦时的,超出部分的用电量,电价上调0.05元/千瓦时。输入用户的月用电量(千瓦时),计算并输出该用户应支付的电费(元),若用电量小于0,则输出“Invalid Value!”。试编写相应程序。
输入格式:
输入在一行中给出某用户的月用电量(单位:千瓦时)。
输出格式:
在一行中输出该用户应支付的电费(元),结果保留两位小数,格式如:“cost = 应付电费值”;若用电量小于0,则输出”Invalid Value!”。
输入样例1:
10
输出样例1:
cost = 5.30
输入样例2:
100
输出样例2:
cost = 55.50
#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
if(n<0){
printf("Invalid Value!\n");
}else{
double res=0;
res=n*0.53;
if(n>50){
res=res+(n-50)*0.05;
}
printf("cost = %.2f",res);
}
return 0;
}
3.序列求和:
输入两个正整数 m 和 n(0<m≤n),求
,结果保留6位小数。试编写相应程序。
注:
输入格式:
输入在一行中给出两个正整数m和n(m≤n),其间以空格分开。
输出格式:
在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后六位。题目保证计算结果不超过双精度范围。
输入样例:
5 10
输出样例:
sum = 355.845635
#include<stdio.h>
int main()
{
int m,n;
scanf("%d %d",&m,&n);
double sum=0;
for(int i=m;i<=n;i++){
sum=sum+i*i*1.0+1.0/i;
}
printf("sum = %.6f",sum);
return 0;
}
4.求交错序列前n项和:
输入一个正整数n,计算交错序列
的前n项之和。试编写相应程序。
输入格式:
输入在一行中给出一个正整数N。
输出格式:
在一行中输出部分和的值,结果保留三位小数。
输入样例:
5
输出样例:
0.917
#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
double sum=0;
double a=1,flag=1;
for(int i=1;i<=n;i++){
sum=sum+flag*(i*1.0/a);
flag*=-1;
a+=2;
}
printf("%.3f",sum);
return 0;
}
5.平方根求和:
输入一个正整数n,计算
的值(保留2位小数)。可包含头文件math.h,并调用sqrt()函数求平方根。试编写相应程序。
输入格式:
输入在一行中给出一个正整数N。
输出格式:
在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后两位。题目保证计算结果不超过双精度范围。
输入样例:
10
输出样例:
sum = 22.47
#include<stdio.h>
#include<math.h>
int main()
{
int n;
scanf("%d",&n);
double sum=0;
for(int i=1;i<=n;i++)
sum+=sqrt(i);
printf("sum = %.2f",sum);
return 0;
}
6.求给定序列前n项和(1!+2!+
…
):
输入一个正整数n,求 e=1!+2!+3!+…+n!的值。要求定义和调用函数 fact(n)计算n!,函数类型是double。试编写相应程序。
输入格式:
输入在一行中给出一个不超过12的正整数N。
输出格式:
在一行中输出整数结果。
输入样例:
5
输出样例:
153
#include<stdio.h>
int fact(int n){
int sum=1;
for(int i=1;i<=n;i++)
sum*=i;
return sum;
}
int main()
{
int n;
scanf("%d",&n);
int res;
for(int i=1;i<=n;i++)
res+=fact(i);
printf("%d",res);
return 0;
}