输入三位数字N,求两位数AB。使得AB x BA = N。
#include<stdio.h>#include<math.h>intmain(){inta,b,c,d,m;scanf("%d",&m);b=a%10;c=a/10;...
#include<stdio.h>
#include<math.h>
int main()
{
int a,b,c,d,m;
scanf("%d",&m);
b=a%10;
c=a/10;
d=b*10+c;
for(a=11;a<=99;a++)
{
if((d*a)==m)
{
printf("%d%d\n",c,b);
}
}
return 0;
}
求大神解释下这个程序问题在哪里?
问题补充:
我运行这个C语言程序之后没反应 展开
#include<math.h>
int main()
{
int a,b,c,d,m;
scanf("%d",&m);
b=a%10;
c=a/10;
d=b*10+c;
for(a=11;a<=99;a++)
{
if((d*a)==m)
{
printf("%d%d\n",c,b);
}
}
return 0;
}
求大神解释下这个程序问题在哪里?
问题补充:
我运行这个C语言程序之后没反应 展开
2个回答
展开全部
b=a%10;
c=a/10;
d=b*10+c;
for(a=11;a<=99;a++)
{
if((d*a)==m)
{
printf("%d%d\n",c,b);
}
}
改为
for(a=11;a<=99;a++)
{
b=a%10;
c=a/10;
d=b*10+c;
if((d*a)==m)
printf("%d%d\n",c,b);
else
printf("No");
}
要求出所有的这样的数,那就要循环了
for(a=11;a<=99;a++)
{
b=a%10;
c=a/10;
d=b*10+c;
if((d*a)>=100&&d*a<=999)
printf("%dX%d=%d\n",a,d,a*d);
}
c=a/10;
d=b*10+c;
for(a=11;a<=99;a++)
{
if((d*a)==m)
{
printf("%d%d\n",c,b);
}
}
改为
for(a=11;a<=99;a++)
{
b=a%10;
c=a/10;
d=b*10+c;
if((d*a)==m)
printf("%d%d\n",c,b);
else
printf("No");
}
要求出所有的这样的数,那就要循环了
for(a=11;a<=99;a++)
{
b=a%10;
c=a/10;
d=b*10+c;
if((d*a)>=100&&d*a<=999)
printf("%dX%d=%d\n",a,d,a*d);
}
追问
但是有个问题,例如我输入252,但是输出的是1221,我想要的是输出1 2,中间无空格。
程经理
2025-01-01 广告
2025-01-01 广告
作为硕方科技(北京)有限公司的工作人员,关于硕方线号机居中符号的打印方法,简要说明如下:**居中打印设置**:1. **直接选择居中打印功能**:在编辑模式下,通过操作键找到“居中打印”选项,按Enter键即可将打印内容设置为居中。若初始设...
点击进入详情页
本回答由程经理提供
展开全部
252
12 X 21
21 X 12
Press any key to continue
//先用计算器算出来 12 X21=252 然后在程序里输入252 你的依然没反应 很明显程序不对
// 我给你改了 改动有些大
#include<stdio.h>
main()
{
int a,b,m;
scanf("%d",&m);
for(a=1;a<10;a++)
for (b=1;b<10;b++)
if((a*10+b)*(b*10+a)==m)
printf("%d%d X %d%d\n",a,b,b,a);
}
12 X 21
21 X 12
Press any key to continue
//先用计算器算出来 12 X21=252 然后在程序里输入252 你的依然没反应 很明显程序不对
// 我给你改了 改动有些大
#include<stdio.h>
main()
{
int a,b,m;
scanf("%d",&m);
for(a=1;a<10;a++)
for (b=1;b<10;b++)
if((a*10+b)*(b*10+a)==m)
printf("%d%d X %d%d\n",a,b,b,a);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询