该系列文章内容可能来源我本人或者zhrmoe(他的主页:https://zhr.moe)的编写。文章如果有错误欢迎批评指正,谢谢!转载请注明来自本站,另外,本系列教程中的代码建议初学者自己手打一遍,不要直接复制(由于某些奇怪的原因可能会导致你复制的代码出现错误!相信自己的双手吧=-=
如果你觉得进度太快,可以等你熟悉了前面的内容后再继续往下看
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
//上一篇文章中有一个打印指定数量的素数的题 //其中一种实现方法是这样的 /* #include <stdio.h> int main(int argc, const char * argv[]) { int n, i, j, flag; printf("Please input the extreme number you want to check: "); scanf("%d", &n); for (i = 2; i <= n; ++i) { flag = 1; for (j = 2; j <= i / 2; ++j) { if (i % j == 0) { flag = 0; break; } } if (flag == 1) { printf("%d is a prime number.\n", i); } else { printf("%d is not a prime number.\n", i); } } return 0; } */ /* 你会发现for里面的内容越来越多 并且如果你尝试做了后几道题 会发现你的代码中会重复出现判断素数的代码 为了偷懒,接下来介绍函数 这里的函数类似数学上的函数,但是又有一些不一样 基本语法如下 声明语法: 返回值 函数名(参数列表); 定义语法: 返回值 函数名(参数列表) { 函数体 } 参数列表可以有多个参数,用逗号隔开 格式是: 参数类型 参数 函数的使用方法是 函数名(参数1); 在使用之前必需在main函数前面声明 以素数判断为例 */ #include <stdio.h> //声明一个名叫Prime的函数 //要求一个整数型参数 //叫做number,返回值是int类型 //预想,如果是素数返回1,否则返回0 int isPrime(int number); //主程序 int main(int argc, const char * argv[]) { int n, i; printf("argc = %d", argc); printf("Please input the extreme number you want to check: "); scanf("%d", &n); for (i = 2; i <= n; ++i) { //拿返回值和1对比,如果是1代表i是素数 //if (isPrime(i) == 1) { //这是最好理解的写法 //但是通常来说都会写成下面这样,请自行体会 if (isPrime(i)) { printf("%d is a prime number.\n", i); } else { printf("%d is not a prime number.\n", i); } } system("pause"); return 0; } //函数的定义 int isPrime(int number) { //这里的number代表着其他函数传入的那个整数 //教材通常称之为形参,但是很多人分不清形参实参什么的 //你可以理解为是传入的那个变量的一个分身 //内容相同但是叫不同的名字,参数传递的细节会在后面教程说明 int i; int ret = 1; for (i = 2; i <= number / 2; ++i) { if (number % i == 0) { ret = 0; break; } } //在写函数时候最好写成单一出口的结构 //即只在函数结束有一个return //具体返回的值由一个变量代表 //如果你的函数没有返回值,类型要写成void return ret; } /* 到这里你应该明白为什么main的样子是这样了吧? int main(int argc, const char * argv[]) { return 0; } main函数作为C语言的入口函数,由系统调用 通常不写后面的参数,因为你运行程序时候没有给程序传参数 但是却一定要有一个int的返回值 是要告诉操作系统这个函数的执行状态,返回0代表正常结束 */ |
0 Comments