黑菜钟 2023-10-04 17:25 采纳率: 77.8%
浏览 4

输出1~100以内的素数,这样为什么错了呢?

img

这个代码的结果是对的,可以输出1~100内的素数。

img

但如果把定义i和isPrime的那两行放到上面,它的结果就是错的,输出结果是2 3

为什么😢错了呢?!

  • 写回答

2条回答 默认 最新

  • 陌柒2333 2023-10-04 18:11
    关注

    1、在循环外面的定义的变量,只在栈中声明了一次;
    2、在循环里面的定义的变量,循环多少次就在栈中声明了多少次;

    如果isPrime定义在for循环的外面,那么当isPrime=0之后没有途径可以再让他回到1,那就将不再有结果输出。
    那么当isPrime定义在for循环的外面时就要增加一条语句时他回到原始状态1.如下:

    img

    评论

报告相同问题?

问题事件

  • 创建了问题 10月4日

悬赏问题

  • ¥15 无法输出helloworld
  • ¥15 高通uboot 打印ubi init err 22
  • ¥20 PDF元数据中的XMP媒体管理属性
  • ¥15 R语言中lasso回归报错
  • ¥15 网站突然不能访问了,上午还好好的
  • ¥15 有没有dl可以帮弄”我去图书馆”秒选道具和积分
  • ¥15 semrush,SEO,内嵌网站,api
  • ¥15 Stata:为什么reghdfe后的因变量没有被发现识别啊
  • ¥15 振荡电路,ADS仿真
  • ¥15 关于#c语言#的问题,请各位专家解答!