C语言求教输入两个正整数m和n(m≥100,n
答案:1 悬赏:30 手机版
解决时间 2021-07-26 08:39
- 提问者网友:佞臣
- 2021-07-25 20:19
C语言求教输入两个正整数m和n(m≥100,n
最佳答案
- 五星知识达人网友:一把行者刀
- 2021-07-25 21:32
#include <stdio.h>
#include <math.h>
int hasRepNum(int n) {
\x05int a,b,c;
\x05if(n < 100 || n > 1000) return 0;
\x05a = n % 10;
\x05n /= 10;
\x05b = n % 10;
\x05n /= 10;
\x05c = n % 10;
\x05if(a == b || b == c || c == a) return 1;
\x05return 0;
}
int main() {
\x05int i,m,n,t;
\x05printf("m n = ");
\x05scanf("%d%d",&m,&n);
\x05for(i = m; i <= n; ++i) {
\x05\x05t = (int)sqrt(i);
\x05\x05if(t * t == i && hasRepNum(i))
\x05\x05\x05printf("%d ",i);
\x05}
\x05printf("\n");
\x05return 0;
}
再问: 基本对了,就是差一点{每行输出4个,字符宽度为5个左对齐。}这个怎么弄
再答: #include <stdio.h>
#include <math.h>
int hasRepNum(int n) {
int a,b,c;
if(n < 100 || n > 1000) return 0;
a = n % 10;
n /= 10;
b = n % 10;
n /= 10;
c = n % 10;
if(a == b || b == c || c == a) return 1;
return 0;
}
int main() {
int i,m,n,t,cnt = 0;
printf("m n = ");
scanf("%d%d",&m,&n);
for(i = m; i <= n; ++i) {
t = (int)sqrt(i);
if(t * t == i && hasRepNum(i)) {
if(cnt && !(cnt % 4)) printf("\n");
printf("%5d",i);
++cnt;
}
}
printf("\n");
return 0;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯