10.求年份:输出 2000(含 2000)-2020(含 2020)之间所有的闰年年份。
include <stdio.h>
void main() {
int y;
for (y = 2000; y <= 2020; y++)
if ((y % 4 == 0 && y % 100 != 0) || (y % 400 == 0))
printf("%d,", y);
}
11.求数字:求两个整数的最大公约数及最小公倍数。
include <stdio.h>
/ 最大公约数 /
int gcd(int a, int b) {
int t;
if (a < b) {
t = a;
a = b;
b = t;
}
while (b != 0) {
t = a % b;
a = b;
b = t;
}
return a;
}
/ 最小公倍数 /
int lcm(int a, int b, int c) {
return a * b / c;
}
void main() {
int x, y, a, b;
scanf("%d%d", &a, &b);
x = gcd(a, b);
y = lcm(a, b, x);
printf("gcd=%d,lcm=%d", x, y);
}
12.求数字:一个整数,它加上 100 后是一个完全平方数,它加上 168 又是一个
完全平方数,请问该数是多少?
include <stdio.h>
include <math.h>
void main() {
int i = 1, x, y;
while (1) {
x = (int) sqrt(i + 100);
y = (int) sqrt(i + 168);
if ((x x == i + 100) && (y y == i + 168)) {
printf("%d", i);
break;
}
i++;
}
}
13.求数字:一个整数,它加上 100 后是一个完全平方数,再加上 168 又是一个
完全平方数,请问该数是多少?
include <stdio.h>
include <math.h>
void main() {
int i = 1, x, y;
while (1) {
x = (int) sqrt(i + 100);
y = (int) sqrt(i + 100 + 168);
if ((x x == i + 100) && (y y == i + 100 + 168)) {
printf("%d", i);
break;
}
i++;
}
}
14.求数字:求所有的四位数中,原数的 9 倍与其逆序相等的数。
include <stdio.h>
void main() {
int i, a, b, c, d;
for (i = 1000; i <= 9999; i++) {
a = i % 10;
b = i / 10 % 10;
c = i / 100 % 10;
d = i / 1000;
if (9 i == a 1000 + b 100 + c 10 + d)
printf("%d", i);
}
}
15.求数字:输出 2000(含 2000)-3000(含 3000)之间所有十位数是 m(0<=m<=9)
且是 n 的倍数的数。
include <stdio.h>
void main() {
int m, n, i;
scanf("%d %d", &m, &n);
for (i = 2000; i <= 3000; i++)
if (i / 10 % 10 == m && i % n == 0)
printf("%d,", i);
}
16.求数字:输入一个整数 n,输出 100(含 100)-999(含 999)之间所有各位
数字之和等于 n 的数。
include <stdio.h>
void main() {
int n, a, b, c, i;
scanf("%d", &n);
for (i = 100; i <= 999; i++) {
a = i / 100;
b = i / 10 % 10;
c = i % 10;
if (a + b + c == n)
printf("%d,", i);
}
}
17.求数字:求 1(含 1)-200(含 200)中,能同时被 2、5 除余 1 的整数。
include <stdio.h>
void main() {
int i;
for (i = 1; i <= 200; i++)
if (i % 2 == 1 && i % 5 == 1)
printf("%d,", i);
}
18.求数字:输出 100(含 100)-999(含 999)之间所有是 7 的倍数的回文数。
include <stdio.h>
void main() {
int i, a, c;
for (i = 100; i <= 999; i++) {
a = i / 100;
c = i % 10;
if (a == c && i % 7 == 0)
printf("%d,", i);
}
}
19.求数字:输出 100(含 100)-200(含 200)以内的十位数字为 5,百位和个
位的和是 6 的倍数的所有的数。
include <stdio.h>
void main() {
int i, a, b, c;
for (i = 100; i <= 200; i++) {
a = i / 100;
b = i / 10 % 10;
c = i % 10;
if (b == 5 && (a + c) % 6 == 0)
printf("%d,", i);
}
}
20.求数字:输出 100(含 100)-200(含 200)以内的满足以下条件的数,条件
为:这个数与 3 的和是 5 的倍数,与 3 的差是 6 的倍数,输出这样的数。
include <stdio.h>
void main() {
int i;
for (i = 100; i <= 200; i++)
if ((i + 3) % 5 == 0 && (i - 3) % 6 == 0)
printf("%d,", i);
}