班上有学生若干名,给出每名学生的年龄(整数),求班上所有学生的平均年龄,保留到小数点后两位。
第一行有一个整数n(1<= n <= 100),表示学生的人数。其后n行每行有1个整数,表示每个学生的年龄,取值为15到25。
输出一行,该行包含一个浮点数,为要求的平均年龄,保留到小数点后两位。
2
18
17
17.50
[信息学奥赛一本通] [for语句]
#include
#include
using namespace std;
int n , x , sum;
int main()
{
scanf("%d",&n);
for(int i = 0 ; i < n ; i++){
scanf("%d",&x);
sum += x;
}
printf("%.2lf",double(sum) / double(n));
return 0;
}
给出一组样本数据,包含n个浮点数,计算其均值,精确到小数点后4位。
输入有两行,第一行包含一个整数n(n小于100),代表样本容量;第二行包含n个绝对值不超过1000的浮点数,代表各个样本数据。
输出一行,包含一个浮点数,表示均值,精确到小数点后4位。
2
1.0 3.0
2.0000
[信息学奥赛一本通] [for语句]
#include
#include
using namespace std;
int n ;
double x , sum;
int main()
{
scanf("%d",&n);
for(int i = 0 ; i < n ; i++){
scanf("%lf",&x);
sum += x;
}
printf("%.4lf",sum / n);
return 0;
}
读入n(1≤n≤10000)个整数,求它们的和与均值。
输入第一行是一个整数n,表示有n个整数。
第2~n+1行每行包含1个整数。每个整数的绝对值均不超过10000。
输出一行,先输出和,再输出平均值(保留到小数点后5位),两个数间用单个空格分隔。
4
344
222
343
222
1131 282.75000
[信息学奥赛一本通][for语句]
#include
#include
using namespace std;
int n , x , sum;
int main()
{
scanf("%d",&n);
for(int i = 0 ; i < n ; i++){
scanf("%d",&x);
sum += x;
}
printf("%d %.5lf",sum,double(sum) / double(n));
return 0;
}
从键盘读入n个整数,请问这n个整数的最大数是多少?
第1行读入一个整数n(n<=100);
第2行读入n个整数;
输出数组中的最大数;
5
2 1 5 3 4
5
[数组问题]
#include
#include
#include
using namespace std;
int n , sum;
int a[110];
int main()
{
scanf("%d",&n);
for(int i = 0 ; i < n ; i++){
scanf("%d",&a[i]);
}
sort(a,a+n);
printf("%d",a[n-1]);
return 0;
}
给定一个长度为n的非负整数序列,请计算序列的最大跨度值(最大跨度值 = 最大值减去最小值)。
一共2行,第一行为序列的个数n(1 <= n <= 1000),第二行为序列的n个不超过1000的非负整数,整数之间以一个空格分隔。
输出一行,表示序列的最大跨度值。
6
3 0 8 7 5 9
9
[信息学奥赛一本通] [for语句]
#include
#include
#include
using namespace std;
int n , sum;
int a[1010];
int main()
{
scanf("%d",&n);
for(int i = 0 ; i < n ; i++){
scanf("%d",&a[i]);
}
sort(a,a+n);
printf("%d",a[n-1] - a[0]);
return 0;
}
2008年北京奥运会,A国的运动员参与了n天的决赛项目(1≤n≤17)。现在要统计一下A国所获得的金、银、铜牌数目及总奖牌数。输入第1行是A国参与决赛项目的天数n,其后n行,每一行是该国某一天获得的金、银、铜牌数目。输出4个整数,为A国所获得的金、银、铜牌总数及总奖牌数。
输入n+1行,第1行是A国参与决赛项目的天数n,其后n行,每一行是该国某一天获得的金、银、铜牌数目,以一个空格分开。
输出1行,包括4个整数,为A国所获得的金、银、铜牌总数及总奖牌数,以一个空格分开。
3
1 0 3
3 1 0
0 3 0
4 4 3 11
[信息学奥赛一本通] [for语句]
#include
#include
using namespace std;
int n , a , b , c , s1 , s2 , s3;
int main()
{
scanf("%d",&n);
for(int i = 0 ; i < n ; i++){
scanf("%d %d %d",&a,&b,&c);
s1 += a;
s2 += b;
s3 += c;
}
printf("%d %d %d %d",s1,s2,s3,s1+s2+s3);
return 0;
}
计算非负整数m到n(包括m和n)之间的所有奇数的和,其中,m 不大于 n,且n 不大于300。例如 m=3,n=12, 其和则为:3+5+7+9+11=35。
两个数 m 和 n,两个数以一个空格分开,其中 0≤m≤n≤300 。
输出一行,包含一个整数,表示m 到 n(包括m 和 n )之间的所有奇数的和
7 15
55
[信息学奥赛一本通] [for语句]
#include
#include
using namespace std;
int n , m , sum;
int main()
{
scanf("%d %d",&n,&m);
for(int i = n ; i <= m ; i++){
if(i % 2 == 1){
sum += i;
}
}
printf("%d",sum);
return 0;
}
将正整数m和n之间(包括m和n)能被17整除的数累加,其中,0 < m < n < 1000。
一行,包含两个整数m和n,其间,以一个空格间隔。
输出一行,包行一个整数,表示累加的结果。
50 85
204
[信息学奥赛一本通][for语句]
#include
#include
using namespace std;
int n , m , sum;
int main()
{
scanf("%d %d",&n,&m);
for(int i = n ; i <= m ; i++){
if(i % 17 == 0){
sum += i;
}
}
printf("%d",sum);
return 0;
}
给定k(1 输入有两行:第一行包含一个正整数k,第二行包含k个正整数,每两个正整数用一个空格分开。 输出有三行,第一行为1出现的次数,第二行为5出现的次数,第三行为10出现的次数。 [信息学奥赛一本通] [for语句] 输出一个整数序列中与指定数字相同的数的个数。输入包含2行:第1行为N和m,表示整数序列的长度(N<=100)和指定的数字;第2行为N个整数,整数之间以一个空格分开。输出为N个数中与m相同的数的个数。 第1行为N和m,表示整数序列的长度(N<=100)和指定的数字, 中间用一个空格分开; 输出为N个数中与m相同的数的个数。 [信息学奥赛一本通] [for语句] 给出一个整数a和一个正整数n(−1000000 ≤ a ≤ 1000000,1 ≤ n ≤ 10000),求乘方an,即乘方结果。最终结果的绝对值不超过1000000。 一行,包含两个整数a和n。−1000000≤a≤1000000,1≤n≤10000。 一个整数,即乘方结果。题目保证最终结果的绝对值不超过1000000。 [信息学奥赛一本通] [for语句] 我国现有x亿人口,按照每年0.1%的增长速度,n年后将有多少人? 一行,包含两个整数x和n,分别是人口基数和年数,以单个空格分隔。 输出最后的人口数,以亿为单位,保留到小数点后四位。1 <= x <= 100, 1 <= n <= 100。 [简单循环] 斐波那契数列是指这样的数列: 数列的第一个和第二个数都为1,接下来每个数都等于前面2个数之和。给出一个正整数k,要求菲波那契数列中第k个数是多少。 输入一行,包含一个正整数k。(1 ≤ k ≤ 46) 输出一行,包含一个正整数,表示菲波那契数列中第k个数的大小。 [信息学奥赛一本通] [for语句] 监护室每小时测量一次病人的血压,若收缩压在90-140之间并且舒张压在60-90之间(包含端点值)则称之为正常,现给出某病人若干次测量的血压值,计算病人保持正常血压的最长小时数。 第一行为一个正整数n(n < 100),其后有n行,每行2个正整数,分别为一次测量的收缩压和舒张压。 输出仅一行,血压连续正常的最长小时数。 [信息学奥赛一本通] [for语句] 编写程序,输入n的值,求 1/1 - 1/2 + 1/3 - 1/4 + 1/5 - 1/6 + 1/7 - 1/8 + … 前n项的和。 输入一个正整数n。1 <= n <= 1000。 输出一个实数,为表达式的值,保留到小数点后四位。 [简单循环] 给定正整数a,b,c。求不定方程 ax+by=c 关于未知数x和y的所有非负整数解组数。 一行,包含三个正整数a,b,c,两个整数之间用单个空格隔开。每个数均不大于1000。 一个整数,即不定方程的非负整数解组数。 [信息学奥赛一本通] [循环嵌套]输入
输出
样例输入
5
1 5 8 10 5
样例输出
1
2
1
来源/分类
题解 2172: 整数的个数
#include
题目 2173: 与指定数字相同的数的个数
题目描述
输入
第2行为N个整数,整数之间以一个空格分开。输出
样例输入
3 2
2 3 2
样例输出
2
来源/分类
题解 2173: 与指定数字相同的数的个数
#include
题目 2174: 乘方计算
题目描述
输入
输出
样例输入
2 3
样例输出
8
来源/分类
题解 2174: 乘方计算
#include
题目 1446: 【入门】人口增长问题
题目描述
输入
输出
样例输入
13 10
样例输出
13.1306
来源/分类
题解 1446: 【入门】人口增长问题
#include
题目 2175: 斐波那契数
题目描述
输入
输出
样例输入
19
样例输出
4181
来源/分类
题解 2175: 斐波那契数
#include
题目 2180: 正常血压
题目描述
输入
输出
样例输入
4
100 80
90 50
120 60
140 90
样例输出
2
来源/分类
题解 2180: 正常血压
#include
题目 1521: 【入门】计算分数加减表达式的值
题目描述
输入
输出
样例输入
2
样例输出
0.5000
来源/分类
题解 1521: 【入门】计算分数加减表达式的值
#include
题目 2196: 不定方程求解
题目描述
输入
输出
样例输入
2 3 18
样例输出
4
来源/分类
题解 2196: 不定方程求解
#include