1.本题要求计算给定的一系列正整数中奇数的和。
输入格式:
输入在一行中给出一系列正整数,其间以空格分隔。当读到零或负整数时,表示输入结束,该数字不要处理。
输出格式:
在一行中输出正整数序列中奇数的和。
输入样例:
8 7 4 3 70 5 6 101 -1
输出样例:
116
#include<stdio.h>
int main()
{
int num, sum = 0;
scanf("%d", &num);
while (num > 0) {
if (num % 2 == 1) {
sum += num;
}
scanf("%d", &num);
}
printf("%d\n", sum);
return 0;
}
2.本题要求编写程序,计算学生们的平均成绩,并统计及格(成绩不低于60分)的人数。题目保证输入与输出均在整型范围内。
输入格式:
输入在第一行中给出非负整数N,即学生人数。第二行给出N个非负整数,即这N位学生的成绩,其间以空格分隔。
输出格式:
按照以下格式输出:
average = 成绩均值
count = 及格人数
其中平均值精确到小数点后一位。
输入样例:
5
77 54 92 73 60
输出样例:
average = 71.2
count = 4
#include <stdio.h>
int main()
{
int n, score, sum = 0, count = 0;
float average;
scanf("%d", &n);
if(n==0)
{
printf("average = %.1f\n",average);
printf("count = %d",count);
return 0;
}
for (int i = 0; i < n; i++)
{
scanf("%d", &score);
sum += score;
if (score >= 60)
count++;
}
average = (float)sum / n;
printf("average = %.1f\n", average);
printf("count = %d\n", count);
return 0;
}
3.输出21世纪中截止某个年份以来的所有闰年年份。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。
输入格式:
输入在一行中给出21世纪的某个截止年份。
输出格式:
逐行输出满足条件的所有闰年年份,即每个年份占一行。输入若非21世纪的年份则输出"Invalid year!"。若不存在任何闰年,则输出“None”。
输入样例1:
2048
输出样例1:
2004
2008
2012
2016
2020
2024
2028
2032
2036
2040
2044
2048
输入样例2:
2000
输出样例2:
Invalid year!
#include<stdio.h>
int main()
{
int year, i;
int is_leap_year = 0;
scanf("%d", &year);
if (year < 2001 || year > 2100)
{
printf("Invalid year!\n");
return 0;
}
for (i = 2001; i <= year; i++)
{
if ((i % 4 == 0 && i % 100 != 0) || i % 400 == 0) {
printf("%d\n", i);
is_leap_year = 1;
}
}
if (!is_leap_year)
{
printf("None\n");
}
return 0;
}
4.专家通过多组情侣研究数据发现,最佳的情侣身高差遵循着一个公式:(女方的身高)×1.09 =(男方的身高)。如果符合,你俩的身高差不管是牵手、拥抱、接吻,都是最和谐的差度。
下面就请你写个程序,为任意一位用户计算他/她的情侣的最佳身高。
输入格式:
输入第一行给出正整数N(≤10),为前来查询的用户数。随后N行,每行按照“性别 身高”的格式给出前来查询的用户的性别和身高,其中“性别”为“F”表示女性、“M”表示男性;“身高”为区间 [1.0, 3.0] 之间的实数。
输出格式:
对每一个查询,在一行中为该用户计算出其情侣的最佳身高,保留小数点后2位。
输入样例:
2
M 1.75
F 1.8
输出样例:
1.61
1.96
#include <stdio.h>
int main()
{
int n;
scanf("%d", &n);
while (n--)
{
char gender;
double height;
scanf(" %c %lf", &gender, &height);
double target_height = gender == 'M' ? height / 1.09 : height * 1.09;
printf("%.2lf\n", target_height);
}
return 0;
}
5.对方不想和你说话,并向你扔了一串数…… 而你必须从这一串数字中找到“250”这个高大上的感人数字。
输入格式:
输入在一行中给出不知道多少个绝对值不超过1000的整数,其中保证至少存在一个“250”。
输出格式:
在一行中输出第一次出现的“250”是对方扔过来的第几个数字(计数从1开始)。题目保证输出的数字在整型范围内。
输入样例:
888 666 123 -233 250 13 250 -222
输出样例:
5
#include <stdio.h>
int main()
{
int num = 1;
int count = 0;
while (num != 250)
{
scanf("%d", &num);
if (num == 250)
{
count++;
break;
}
count++;
}
printf("%d", count);
return 0;
}