c语言求回文数,不知程序有什么问题,总是No output,求高手帮忙看下

题目:输入正整数m和n,输出[m,n]闭区间中满足下列条件的正整数及其平方:正整数的平方具有对称性质(也称为回文数),如:11的平方是121。若该区间不存在这样的正整数,... 题目:
输入正整数 m 和 n ,输出 [m, n] 闭区间中满足下列条件的正整数及其平方:正整数的平方具有对称性质(也称为回文数) , 如: 11 的平方是
121 。若该区间不存在这样的正整数,则输出: No output
输入: m,n
输出: 满足条件的正整数及其平方

以下是我编的程序

#include <stdio.h>
#include <stdlib.h>
#define N 10
int main(int argc, char *argv[])
{ int m,n,a,b,s[N],i,j,k,p=0,q=0;
scanf("%d %d",&m,&n);
for(i=m;i<=n;i++)
{b=i*i;a=b;
for(j=0;j<N;j++)
{s[j]=b%10;b=b/10;if(b==0) break;}
for(k=0;k<=(j-1)/2;k++)
{if(s[k]!=s[j-k]) q=1;}
if(q==0) {printf("%d,%d\n",i,a);p=1;}
}
if(p==0) printf("No output\n");
system("PAUSE");
return 0;
}
我感觉没有问题,但是每次运行结果都是No output,不知道怎么个原因。
展开
 我来答
编程知识分享家
2013-05-12 · 编程、数据库入门。计算机技巧、心得分享。
编程知识分享家
采纳数:404 获赞数:923

向TA提问 私信TA
展开全部
for(i=m;i<=n;i++)
{
q=0;/*加上它就可以*/
b=i*i;
不详解:q是一个标志,每个数判断之前都要赋0的。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式