瞬晞朝露 2021-12-22 16:02 采纳率: 55.6%
浏览 16
已结题

这段程序中f=4的时候为什么没输出?

#include
using namespace std;
int main()
{
int a[3][3]={0},i,j,f=2,x=60;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
while(x%f!=0) f++;
a[i][j]=f;
x=x/f;
if(x==1)   f=1;
}
for(i=0;i<3;i++)
{   for(j=0;j<3;j++)  cout<<a[i][j]<<'\t';
cout<<endl;
}
return 0;
}

  • 写回答

1条回答 默认 最新

  • 於黾 2021-12-22 16:13
    关注

    x,f
    60,4
    15,4
    15,5
    3,5
    然后3除以任何数都不能整除,永远余数是3,就陷入了死循环里面
    取余之前先判断一下被除数要比除数大

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 12月30日
  • 已采纳回答 12月22日
  • 创建了问题 12月22日

悬赏问题

  • ¥15 uniapp的uni-datetime-picker组件在ios端不适配
  • ¥15 前端 uniapp App端在离线状态如何使用modbus 连接手机蓝牙进行读写操控机器?
  • ¥15 SQL语句根据字段自动生成行
  • ¥500 “掌声响起来”软件(不确定性人工智能)
  • ¥500 我要找大模型一体机产品手册和应用案例
  • ¥60 用r语言进行数据分析
  • ¥20 关于游戏c++语言代码问题
  • ¥15 如何制作永久二维码,最好是微信也可以扫开的。(相关搜索:管理系统)
  • ¥15 delphi indy cookie 有效期
  • ¥15 labelme打不开怎么办