首页 > 技术文章 > 合理设计C代码 函数笔记

Yang-bin 2014-03-05 02:09 原文

本文首先用判断一个数字是否为素数使用For循环实现做例子,之后用函数完成多个功能。

什么是素数?

素数又成质数,不包含1和0。通俗的去说就是它除了能表示为它自己和1的乘积以外,不能表示为任何其它两个整数的乘积。如,2*2=4 所以4不是素数,2*3=6,6也不是。13除了等于13*1以外,不能表示为其它任何两个整数的乘积,所以13是一个素数。

 1 /*
 2   Name:判断一个数字是否是素数
 3   Copyright: By.不懂网络
 4   Author: Yangbin
 5   Date:2014年3月5日 01:29:58
 6   Description: 这是一个没有使用函数的例子,缺点可利用性不高。
 7 */
 8 # include <stdio.h>
 9 int main(void)
10 {
11     int i,val;
12     scanf("%d",&val); //输入一个数,判断是否素数
13     for (i=2;i<val;++i)
14     {
15         if(0 == val%i)
16         break;
17     }
18     if (i == val)
19     printf("该数字是素数\n");
20     else
21     printf("该数字非素数\n");
22 }
23  
24 /*
25 ----------------------
26 该代码由C-Free 5.0 编写并输出调试结果
27 --------------输出结果---------------
28 13
29 该数字是素数
30 */

使用函数完成判断这个数字是否为素数

 1 /*
 2   Name:判断一个数字是否是素数
 3   Copyright: By.不懂网络
 4   Author: Yangbin
 5   Date:2014年3月5日 01:53:00
 6   Description: 使用函数可以让代码的可重复性提高。
 7 */
 8 # include <stdio.h>
 9 bool IsPrime(int val)
10 {
11     int i;
12  
13     for (i=2;i<val;++i)
14     {
15         if(0 == val%i)
16         break;
17     }
18     if (i == val)
19     return true;
20     else
21     return false;
22 }
23  
24 int main(void)
25  
26 {
27     int i,val;
28     scanf("%d",&val); //输入一个数,判断是否素数
29     {
30         if(IsPrime(val))
31         printf("YES\n");
32         else
33         printf("NO\n");
34     }
35  
36 }
37  
38 /*
39 ----------------------
40 该代码由C-Free 5.0 编写并输出调试结果
41 --------------输出结果---------------
42  
43 */

未完,待续……

推荐阅读