分号的一些小问题

关于C语言练习中分号的一些问题

题目内容:输出100—200之间的素数个数


1 # include<stdio.h> 2 3 int main() 4 5 { 6 7   int i; 8 9   int count = 0; 10 11   for (i = 100;i <= 200;i++) 12 13     { 14 15       int j; 16 17       for (j = 2;j < i;j++) 18 19         { 20 21           if (i%j == 0) 22 23           break; 24 25         } 26 27       if (i == j) 28 29         { 30 31           count++; 32 33           printf("%d ", i); 34 35         } 36 37     } 38 39   printf("count=%d\n", count); 40 41   return 0; 42 43 }

 

今天在做练习的时候所翻译的结果不理想,找了很久才发现自己的错误在哪,在写if语句的时候写成了这样“ if( i == j ); ”在if语句的结尾加了分号,这样使得if语句不管判断结果是什么都会直接终止,使得break没有了意义。

相当于:         if (i%j == 0)     

           ;

         break;   

而其输出结果为:

感想及总结:

    C语言虽然看着并不难,上课认真听一下都可以听懂,但是当我们真的动手去自己敲代码的时候总会有一些小错误,有的时候这些小错误可能就是至关重要的,现在才算是真真理解为什么会有那么多大佬会敲坏几个键盘了,代码是在熟练理解的基础上进行反复的练习,而反复的练习可以提高自身编码的速度,其次当然是减少自身的失误。所以在空闲时间去练习编码是十分有意义的一件事。

猜你喜欢

转载自www.cnblogs.com/cuckoo-/p/10050334.html