总结最近常犯的C语言错误

默认分类 | 2015-10-13 22:25:10 | 1026次阅读 | 0评

例题:如何判断一个数是不是素数

算法:步骤一:如果所需判断的数为2,则输出是素数,算法结束,否则转步骤二。

          步骤二:令t = 2, n = 所需要判断数的平方根。

         步骤三:如果该数能被t整除则输出该数不是素数,算法结束,否则转到步骤四。

         步骤四:如果t大于n则输出该数是素数,否则将t加一,再转到步骤三。

代码:(标准答案)

  1. #include<stdio.h>
  2. #include<math.h>
  3.  
  4. int main(void) {
  5. int num, i;
  6. scanf("%d", &num);
  7. if (num <= 1) {
  8. printf("Invalid Input Number!\n");
  9. return 0;
  10. }
  11.  
  12. int temp = sqrt(num);
  13. for (i = 2; i <= temp; i++) {
  14. if (num % i == 0) {
  15. printf("It is not Prime Number!\n");
  16. return 0;
  17. }
  18. }
  19.  
  20. printf("It is Prime Number!\n");
  21. return 0;
  22. }

MY CODE:

  #include<stdio.h>                                  头文件中.h不要漏了
  int main() {
     int a, i;
     scanf("%d", &a);                                 输入时&符号记得打上
     if (a <= 1)
     printf("Invalid Input Number!\n");      注意输出要求中的符号,容易遗忘
     else if (a == 2) {
     printf("It is Prime Number!\n");
      } else                                             谷歌风格

     for (i = 2; i < a; i++)                           for循环
     if (a%i == 0)                                       如果 a除以i的余数等于0
     break;
     if (i == a)
     printf("It is Prime Number!\n");
     else
     printf("It is not Prime Number!\n");
       }
  return 0;
}


博友评论,共0条
浏览8505次