搜索
查看: 783|回复: 6
打印 上一主题 下一主题

这个程序判断是否是质数有什么错误吗??请大家指点

[复制链接]
跳转到指定楼层
楼主
发表于 2014-4-21 00:37:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
#include<stdio.h>
#include<math.h>
int main(){
        int N,k,i;
        scanf("%d",&N);
                k =(int)sqrt(N);
                for(i=2;i<=k;i++){
                        if(N % i == 0)
                                break;
                        if(i > k)
                                printf("YES\n");
                        else
                                printf("NO\n");
                                break;
                }
        return 0;
}

最佳答案

查看完整内容

你的这段代码有二处错误: 1,在括号的位置放错了 2,第二个break;完全可以删除不 2.5第二个break语句的分号是中文字符分号 一个比较正确的版本:
沙发
发表于 2014-4-21 00:37:44 | 只看该作者
你的这段代码有二处错误:
1,在括号的位置放错了
2,第二个break;完全可以删除不
2.5第二个break语句的分号是中文字符分号

一个比较正确的版本:
  1. #include<stdio.h>
  2. #include<math.h>
  3. int main()
  4. {
  5.         int N,k,i;
  6.     scanf("%d",&N);
  7.     k =(int)sqrt(N);
  8.     for(i=2;i<=k;i++)
  9.         {
  10.             if(N % i == 0)
  11.             break;
  12.         }
  13.     if(i > k)
  14.         printf("YES\n");
  15.     else
  16.         {
  17.         printf("NO\n");
  18.         }
  19.     return 0;
  20. }
复制代码
板凳
发表于 2014-4-21 00:48:14 | 只看该作者
调整一下大括号的位置

  1. #include<stdio.h>
  2. #include<math.h>
  3. int main(){
  4.         int N,k,i;
  5.         scanf("%d",&N);
  6.                 k =(int)sqrt(N);
  7.                 for(i=2;i<=k;i++){
  8.                         if(N % i == 0)
  9.                                 break;
  10.                 }
  11.                         if(i > k)
  12.                                 printf("YES\n");
  13.                         else
  14.                                 printf("NO\n");      
  15.         return 0;
  16. }
复制代码

点评

不错  发表于 2014-4-22 12:36
地板
 楼主| 发表于 2014-4-21 12:59:11 | 只看该作者
rosynirvana 发表于 2014-4-21 00:48
调整一下大括号的位置

谢谢恩!太粗心了
5#
 楼主| 发表于 2014-4-21 13:00:15 | 只看该作者
李掌柜 发表于 2014-4-21 09:10
你的这段代码有二处错误:
1,在括号的位置放错了
2,第二个break;完全可以删除不

谢谢恩!太粗心了
6#
 楼主| 发表于 2014-4-21 13:00:19 | 只看该作者
李掌柜 发表于 2014-4-21 09:10
你的这段代码有二处错误:
1,在括号的位置放错了
2,第二个break;完全可以删除不

谢谢恩!太粗心了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表