MT1234 一个数字
(1)题目
输入一个非负整数N,重复将其所有数字相加,直到结果只有一个数字,输出这个数字,输出最小列宽3列。
格式
输入格式: 输入整型 输出格式: 输出整型
样例1
输入: 89 输出: 8
(2)参考代码
#include<stdio.h> int main() { int N, sum; scanf("%d", &N); do{ sum = 0; while (N) { sum += N % 10; N /= 10; } N = sum; }while (sum >= 10); printf("%3d\n", sum); return 0; }
MT1235 回文数字
(1)题目
请编写一个简单程序,检查数字是否为回文。像12521,123321,这样的从左向右读和从右向左读是一样的数字是回文数字。
格式
输入格式: 输入整型 输出格式: 输出Y或N
样例1
输入格式: 12521 输出格式: Y
(2)参考代码
#include<stdio.h> int main() { int n; scanf("%d", &n); int temp = n, N = 0; while (temp) { N = (N * 10) + (temp % 10); temp /= 10; } if (N == n) { printf("Y"); } else { printf("N"); } return 0; }
MT1236 回文
(1)题目
输入正整数N,判断N的各位数字之和是否为回文数。(注:回文数是一个在反转时保持不变的数。比如121,7等。)不考虑不合理的输入等特殊情况。
格式
输入格式: 输入正整数N 输出格式: 输出YES或者NO
样例1
输入: 56 输出: YES
备注
测试数据集输入数据包含长整型。
(2)参考代码
MT1237 六六大顺
(1)题目
输入正整数N,输出N以内(含N),6的倍数,并且包含6的数字,比如36等。
格式
输入格式: 输入整型 输出格式: 输出整型,空格分隔
样例1
输入格式: 40 输出格式: 6 36
(2)参考代码
#include<stdio.h> int main() { int N; scanf("%d", &N); for (int i=1;i<=N;i++) { int temp = i, flag = 0; while (temp) { if (temp % 10 == 6) { flag = 1; } temp /= 10; } if (flag == 1) { if (i % 6 == 0) { printf("%d ", i); } } } return 0; }
MT1238 幸运数字3
(1)题目
输入正整数N,输出N以内(含N) 3的倍数,或者包含3的数字,比如13,32等。
格式
输入格式: 输入整型 输出格式: 输出整型,空格分隔。
样例1
输入格式: 20 输出格式: 3 6 9 12 13 15 18
(2)参考代码
#include<stdio.h> int main() { int N, temp, flag; scanf("%d", &N); for (int i=3;i<=N;i++) { temp = i; flag = 0; while (temp) { if (temp % 10 == 3) { printf("%d ", i); flag = 1; break; } temp /= 10; } if (flag == 0 && i % 3 == 0) { printf("%d ", i); } } return 0; }
MT1239 自恋性数
(1)题目
请编写一个简单程序,判断自恋性数。如果一个正整数等于其各个数字的立方和,则称该数为自恋性数(亦称为阿姆斯特朗数)
格式
输入格式: 输入整型 输出格式: 输出Y或者N
样例1
输入: 407 输出: Y
(2)参考代码
#include<stdio.h> #include<math.h> int main() { int x, temp, count = 0; scanf("%d", &x); temp = x; while (temp) { count += pow(temp % 10, 3); temp /= 10; } if (x == count) { printf("Y"); } else { printf("N"); } return 0; }
MT1240 好多自恋性数
(1)题目
请编写一个简单程序,输入正整数n,输出n以内自恋性数。如果一个正整数等于其各个数字的立方和,则称该数为自恋性数(亦称为阿姆斯特朗数)
格式
输入格式: 输入为整型 输出格式: 输出整型,空格分隔
样例1
输入格式: 500 输出格式: 1 153 370 371 407
(2)参考代码
#include<stdio.h> #include<math.h> int main() { int n, temp, num; scanf("%d", &n); for (int i=1;i<=n;i++) { temp = i; num = 0; while (temp) { num += pow((double)(temp % 10), 3.0); temp /= 10; } if (num == i) { printf("%d ", i); } } return 0; }