码蹄集网站地址:https://www.matiji.net/exam/ojquestionlist
(1)题目
输入正整数N(<1500),首先计算其逆序数M(比如12逆序后是21)。然后输出N的M次方的最后3位数。
格式
输入格式:
输入正整数N
输出格式:
输出整型
样例1
输入格式:
12
输出格式:
122
(2)参考代码
#include
int main()
{
int N;
scanf("%d", &N);
int temp = N, M = 0;
while (temp)
{
M = 10 * M + temp % 10;
temp /= 10;
}
temp = N;
N = 1;
for (int i=1;i<=M;i++)
{
N = (N * temp) % 1000;
}
printf("%d", N);
return 0;
}
(1)题目
一个自然数,如果每一位数的位数次幂之和等于该自然数,则称之为Disarium数。
比如:89=8+9 * 9。或者135 = 1 + 3 * 3 + 5 * 5 * 5
输入一个正整数n,检查它是否为Disarium数,是则输出YES否则输出NO。不考虑0,负数或者其他特殊情况。
格式
输入格式:
输入为整型
输出格式:
是则输出YES否则输出NO
样例1
输入:
175
输出:
YES
(2)参考代码
#include
#include
int main()
{
int N, count = 0, sum = 0;
scanf("%d", &N);
int temp = N;
while (temp)
{
temp /= 10;
count++;
}
temp = N;
for (int i=count;i>0;i--)
{
sum += pow(temp % 10, (double)i);
temp /= 10;
}
if (sum == N)
{
printf("YES");
}
else
{
printf("NO");
}
return 0;
}
(1)题目
一个自然数,如果每一位数的位数次幂之和等于该自然数,则称之为Disarium数。
比如:89=8+99。或者135 = 1 +3 3 +5* 5* 5
输入整数区间,输出区间(含边界)内所有的Disarium数。不考虑0,负数或者其他特殊情况。
格式
输入格式:
输入为整型,空格分隔
输出格式:
输出为整型,空格分隔
样例1
输入格式:
1 100
输出格式:
1 2 3 4 5 6 7 8 9 89
(2)参考代码
#include
#include
int main()
{
int a, b, temp, count, Disarium;
scanf("%d %d", &a, &b);
for (int i=a;i<=b;i++)
{
temp = i;
Disarium = 0;
count = 0;
while (temp)
{
temp /= 10;
count++;
}
temp = i;
for (int j=count;j>0;j--)
{
Disarium += pow((double)(temp % 10), (double)j);
temp /= 10;
}
if (Disarium == i)
{
printf("%d ", Disarium);
}
}
return 0;
}
(1)题目
判断一个正整数是否是快乐数字,如果一个数字能够通过有限次快乐变换成为1,则是快乐数字。
快乐变换是对一个数字的每一位的平方数求和。例如:对于68 =6 6+88=100,
100 = 1* 1+0* 0+0*0= 1,因此68是快乐数字。输入一个正整数n,检查它是否为快乐数,是则输出YES否则输出NO。不考虑0,负数或者其他特殊情况。
格式
输入格式:
输入为整型
输出格式:
是则输出YES,否则输出NO
样例1
输入格式:
19
输出格式:
YES
(2)参考代码
#include
#include
int main()
{
int n, temp, sum;
scanf("%d", &n);
while (1)
{
sum = 0;
if (n == 1)
{
printf("YES");
break;
}
else if (n == 4)
{
printf("NO");
break;
}
while (n)
{
temp = n % 10;
n /= 10;
sum += pow((double)temp, 2.0);
}
n = sum;
}
return 0;
}
(1)题目
如果一个数是7的幂,或者能分解成7的不同幂的和,那么这个数就叫做忠实数。 例如49=49,8=1+7, 57=1+7+49。注意1可以看成7的0次方。输入正整数N,判断它是不是忠实数,输出YES或者NO。
格式
输入格式:
输入正整数N
输出格式:
输出YES或者NO
样例1
输入:
2457
输出:
YES
备注
N 属于正常int范围
(2)参考代码
#include
int main()
{
int N;
scanf("%d", &N);
// if (N % 7 == 0 && N != 0)
// {
// printf("YES");
// }
// else if (N % 7 == 1)
// {
// printf("YES");
// }
// else
// {
// printf("NO");
// }
while (N / 7)
{
if (N % 7 == 0)
{
N /= 7;
}
else if (N % 7 == 1)
{
N = (N - 1) / 7;
}
else
{
printf("NO");
return 0;
}
}
if (N == 1)
{
printf("YES");
}
else
{
printf("NO");
}
return 0;
}
(1)题目
如果一个数是7的幂,或者能分解成7的不同幂的和,那么这个数就叫做忠实数。 例如49=49,8=1+7, 57=1+7+49。注意1可以看成7的0次方。对忠实数进行从小到大排序得到的序列是1 7 8 49 50…等等。
输入正整数N,找到第N个忠实的数字。
格式
输入格式:
输入正整数N(N<1000)
输出格式:
输出整型
样例1
输入:
7
复制
输出:
57
(2)参考代码
#include
int main()
{
int N;
scanf("%d", &N);
int i = 0, temp;
while (N)
{
i++;
temp = i;
while (temp / 7)
{
if (temp % 7 == 0)
{
temp /= 7;
}
else if (temp % 7 == 1)
{
temp = (temp - 1) / 7;
}
else
{
break;
}
}
if (temp == 1)
{
N--;
}
}
printf("%d", i);
return 0;
}
(1)题目
输入一个长度为5的数组,数组元素均在0到9之间,请编写一个函数,把奇数项元素的值加上65,偶数项元素值加上97,把新元素的值看成是ASCII值,依次输出他们对应的字符,空格分隔。
格式
输入格式:
输入为整型,空格分隔
输出格式:
输出字符,空格分隔
样例1
输入:
0 1 2 3 4
输出:
a B c D e
(2)参考代码
#include
int ASCII(int num, int i)
{
if (i % 2 == 0)
{
num += 97;
}
else
{
num += 65;
}
return num;
}
int main()
{
int a[5];
for (int i=0;i<5;i++)
{
scanf("%d", &a[i]);
}
for (int i=0;i<5;i++)
{
printf("%c ", (char)ASCII(a[i], i));
}
return 0;
}
(1)题目
张三说李四在说谎,李四说王五在说谎,王五说张三和李四都在说谎。编写程序判断这三人中到底谁说的是真话,谁说的是假话?
格式
输入格式:
无
输出格式:
输出他们是否说谎,如样例所示。其中说谎用“told a lie”,没说谎用的是“told the truth"
样例1
输入格式: 无
输出格式:
zs told the truth.
ls told a lie.
ww told a lie.
(2)参考代码
#include
int main()
{
for (int x=0;x<=1;x++)
{
for (int y=0;y<=1;y++)
{
for (int z=0;z<=1;z++)
{
if (((x&&!y) || (!x&&y)) && ((y&&!z) || (!y&&z)) && ((z && !x && !y) || (!z && (x+y) != 0)))
{
printf("zs told %s.\n", x?"the truth":"a lie");
printf("ls told %s.\n", y?"the truth":"a lie");
printf("ww told %s.\n", z?"the truth":"a lie");
}
}
}
}
return 0;
}
(1)题目
有一个调和级数不等式11<1+1/2+1/3+…+1/m<12,求满足此不等式的m,m可能有多个,输出最小的一个。
格式
输入格式:
无
输出格式:
输出为整型
样例1
输入:
无
输出:
33617
(2)参考代码
#include
int main()
{
double sum = 0;
for (int i=1;;i++)
{
sum += (1.0 / (double)i);
if (sum > 11)
{
printf("%d", i);
return 0;
}
}
return 0;
}
格式
输入格式:
输入为整型
输出格式:
输出为实型
样例1
输入:
1
输出:
0.400000
(2)参考代码
#include
#include
int main()
{
int n;
scanf("%d", &n);
double sum = 0;
for (int i = 1; i <= n; i++)
{
sum += (pow(-1.0, (double)(i - 1)) * pow(2.0, (double)i)) / ((pow(2.0, (double)i) + pow(-1.0, (double)i)) * (pow(2.0, (double)(i + 1)) + pow(-1.0, (double)(i + 1))));
}
printf("%lf", sum);
return 0;
}
格式
输入格式:
输入为整型
输出格式:
输出为实型
样例1
输入:
1
输出:
0.230769
(2)参考代码
(1)题目 格式 样例1 (2)参考代码 (1)题目 格式 样例1 (2)参考代码 (1)题目 格式 样例1 样例2 (2)参考代码 (1)题目 格式 样例1 (2)参考代码 (1)题目 格式 样例1 (2)参考代码 (1)题目 格式 样例1 (2)参考代码 (1)题目 格式 样例1 (2)参考代码 (1)题目 格式 样例1 (2)参考代码 (1)题目 格式 样例1 (2)参考代码
某级数的前两项A(1)=1、A(2)=1,以后各项有如下关系:A(n)=A(n-2)+2A(n-1)。求依次对于整数M=100、1000和10000求出对应的n值,使其满足:S(n)
输入格式:
无
输出格式:
输出为整型,空格分隔
输入格式:
无
输出格式:
6 9 11
#include
MT1293 字母统计
请编写一个简单程序,从键盘输入一行字符,直到输入回车时结束。统计其中的字母个数。
输入格式:
输入字符型
输出格式:
输出整型
输入格式:
I have 3 cats.
输出格式:
9
#include
MT1294 从指定位置复制
输入整行字符串(中间可能会有空格),将此字符串从第n个字符(从0开始计数)开始的全部字符复制成为另一个字符串并输出。不考虑不合理的输入等特殊情况。
输入格式:
第一行输入字符串,第二行输入n,整型
输出格式:
输出字符串
输入:
sfdags
3
输出:
ags
输入:
Hello world
2
输出:
llo world
#include
MT1295 指定位置插串
存在两个字符串,实现在字符串s1中的指定位置n处(从0开始计数)插入字符串s2。若n大于s1的长度,则从s1末尾处接上s2字符串。
输入格式:
第一行输入字符串s1,第二行输入正整数n,第三行输入字符串s2
输出格式:
输出字符串s1
输入:
Wendy c++
6
hate
输出:
Wendy hate c++
MT1296 字符串替换
编写一个函数,把字符串中所有的you替换为we并输出。
输入格式:
输入字符串
输出格式:
输出字符串
输入格式:
you are the best
输出格式:
we are the best
MT1297 位运算符
使用位运算符检查n以内的奇数和偶数,n的值由键盘输入
输入格式:
输入正整数n(<100)
输出格式:
分行输出
输入格式: 5
输出格式:
0 is even
1 is odd
2 is even
3 is odd
4 is even
5 is odd
#include
MT1298 小码哥的烦恼
小码哥抱怨说:“我才发现,C语言里面居然没有二进制的输出格式符,唉,谁能帮我写个函数,实在这个功能啊?”
输入格式:
输入一个十进制正整数
输出格式:
输出对应的二进制
输入:
9
输出:
1001
#include
MT1299 二进制
输入5个正整数,将他们转换成二进制输出。
输入格式:
输入整型,空格分隔。
输出格式:
输出整型,每个一行。从低位往高位看,每四位空一位。
输入:
8 89 4 14 51
输出:
1000
101 1001
100
1110
11 0011
#include
MT1300 奇数校验
输入一个整数N,求其奇偶性。一个数字的奇偶性是指它对应二进制包含的1位的数量。如果该数字包含奇数个1,则该数字具有“奇校验”ODD;如果该数字包含偶数个1,则该数字具有“偶校验”EVEN。比如13,其二进制形式是1101,包含3个1,所以是奇校验。
输入格式:
输入为整型
输出格式:
输出为〇DD或者EVEN
输入格式:
9
输出格式:
EVEN
#include