请帮我看看这个程序哪里的问题;

chaoyueheike 2009-02-12 11:20:53
main()
{
int b,a,c,s;
float d;
s=0;
scanf("%d",&a);
for(b=1;b<=a;b++)
{
if(a%b!=0)
continue;
s=s+1;
}
printf("s=%d\n",s);
}
我这个程序是用来计算s就是输入的数有好多个约数的,
这样运行成立,但是要是我把a的定义改为float型的,它就不对了,
请问这是为什么,还提示说是illegal use of floating point in function main
说是if(a%b!=0)这行错了,是怎么回事;
刚刚发了帖子,没说清楚,现在重发的;
...全文
27 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
lbh2001 2009-02-12
  • 打赏
  • 举报
回复
%的操作数不能为浮点型
waizqfor 2009-02-12
  • 打赏
  • 举报
回复
[Quote=引用楼主 chaoyueheike 的帖子:]
main()
{
int b,a,c,s;
float d;
s=0;
scanf("%d",&a);
for(b=1;b <=a;b++)
{
if(a%b!=0)
continue;
s=s+1;
}
printf("s=%d\n",s);
}
我这个程序是用来计算s就是输入的数有好多个约数的,
这样运行成立,但是要是我把a的定义改为float型的,它就不对了,
请问这是为什么,还提示说是illegal use of floating point in function main
说是if(a%b!=0)这行错了,是怎么回事;
刚刚发了帖…
[/Quote]
浮点数 不能做%操作
你改成整型就可以了

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧