关于C语言对称数问题
发布网友
发布时间:2022-09-16 10:16
我来回答
共2个回答
热心网友
时间:2023-10-08 16:39
我告诉你方法吧,我就不做了
定义一个数用来保存n的平方
然后通过以下方式:
假如是384,那么384/100,取得百位数
384%100/10 取得十位数
384%100%10取得个位数
再拿百位和个位比较,
位数是奇数的就这样比
如果位数是偶数的比如4455,就比较两下
热心网友
时间:2023-10-08 16:39
//---------------------------------------------------------------------------
#include <stdio.h>
#include <string.h>
int chk(unsigned long int n)
{
char s[30];
int i;
sprintf(s,"%ld",n);
for (i = 0; i<strlen(s)/2; ++i) {
if (s[i]!=s[strlen(s)-i-1]) {
return 0;
}
}
return 1;
}
int main(void)
{
unsigned long int i,n;
scanf("%lu",&n);
for (i=1; i<=n; ++i) {
if (chk(i*i)) {
printf("%ld\n",i);
}
}
return 0;
}
//---------------------------------------------------------------------------