一、九九乘法表
耳熟能详的九九乘法表,相信每个人小时候都被数学老师强迫背诵吧,看我们今日就用几行代码实现它
代码如下:
#includeint main() { for (int i = 1; i < +9; i++) { for (int j = 1; j <= i; j++) { printf("%d*%d=%2d ", j, i, i * j); } printf("n"); } return 0; }
二、水仙花束
简介: 水仙花数是指一种三位数,其各个数之立方和等于该数。
水仙花数共有4个,分别为:153、370、371、407
举个例153=1的立方+5的立方+3的立方
代码如下:
#includeint main水仙花数() { for (int m = 100; m <= 999; m++) { int a = m / 100; //百位 int b = m / 10 % 10; int c = m % 10; if (a * a * a + b * b * b + c * c * c == m) { printf("%d该数为水仙花数n",m); } } while (true) //这里使用死循环,防止程序闪退,也可以使用 getchar(); { ; } return 0; }
三、素数
简介: 素数又叫质数,素数是指在大于1的自然数中,除了1和它本身以外,不能被其他自然数 整除的数。
代码如下:
#include#include #include int main(){ for(int m=3;m<=100;m++){ bool isok = true; for (int i = 2; i <= sqrt(m); i++) { //sqrt 算术平方根的符号,使用需添加math.h 头文件 if (m % 2 == 0) { isok = false; break; } } if (isok) { printf("%d是素数n", m); } } return 0; }
四、最小公倍数
简介: 两个或多个整数公有的倍数叫做它们的公倍数,其中除0以外最小的一个公倍数就叫做这几个整数的最小公倍数。整数a,b的最小公倍数记为[a,b],同样的,a,b,c的最小公倍数记为[a,b,c],多个整数的最小公倍数也有同样的记号。
代码如下:从键盘输入2任意两个数,并求出其最小公倍数
#includeint main() { int m=6, n=8; printf("请输入两个数"); scanf_s("%d", &m); scanf_s("%d", &n); printf("%d %d", m, n); if (m == 0 || n == 0) { printf("你输入的数字有误,请重新输入"); } int i=m > n ? m : n; for (i;; i++) { if (i % m == 0 && i % n == 0) { printf("这两个数的最小公倍数为:%d",i); break; } } while (1) { } return 0; }
五、斐波那契数列
简介: 斐波那契数列(Fibonacci sequence),又称黄金分割数列,因数学家莱昂纳多·斐波那契(Leonardo Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(0)=0,F(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 2,n ∈ N*)
#includeint main斐波那契数列() { //斐波那契数列 数据规律 // a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] ....... // 1 1 2 3 5 8 13 21 34 55 // s[0] s[1] s[2] s[3] s[4] s[5] s[6] s[7] s[8] s[9] ...... // 1 2 4 7 12 20 33 54 88 143 int array[20]; int sum[20]; array[0] = array[1]=1; sum[0] = 1; sum[1] = 2; for (int i = 2; i <= 19;i++) { array[i] = array[i - 1] + array[i-2]; printf("array[%d]:%dn",i ,array[i]); sum[i] = sum[i - 1] + array[i]; printf("sum [%d]:%dn", i, sum[i]); if (i % 2 == 0) { printf("n"); } } while (true) { } return 0; }
六、冒泡排序
简介: “冒泡排序“(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列)
#include#define maxSize 10 int main冒泡排序() { int arr[6] = { 2,0,3,4,8,5 }; for (int i = 0; i <= maxSize-1 ; i++) { for (int j = 0; j < maxSize - i - 1; j++) { if (arr[j] > arr[j + 1]) { int temp; temp= arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } for (int i = 0; i < maxSize; i++) { printf("arr[%d]=%dn", i, arr[i]); } while (true) { } return 0; }
七、猜拳
” 石头、剪刀、布“,这个相信每个人都不陌生吧,小时候都玩过吧。游戏规则相信你们都懂吧!
#include#include //为了设置时间函数 #include //为了设置时间种子 #define Rock 0 //石头 #define Sci 1 //剪刀 #define Pap 2 //布 int main() { srand((unsigned)time(0)); //设置随机数 printf_s("ttttt*----------石头:0----------*n"); printf_s("ttttt**---------剪刀:1---------**n"); printf_s("ttttt***----------布:2---------***n"); int cur = -1; while (1) { int sys = rand() % 3; //使sys的数值在0 ~ 2之间 printf_s("请输入你的拳(只能输入相对应的数字):"); scanf_s("%d", &cur); if (cur < 0 || cur>2) { printf_s("你输入的数字有问题,请重新输入n"); break; } if ((cur == 0 && sys == 1) || (cur == 1 && sys == 2) || (cur == 2 && sys == 0)) { printf_s("你赢了n"); } else if ((cur == 0 && sys == 2) || (cur == 1 && sys == 0) || (cur == 2 && sys == 1)) { printf_s("你输了n"); } else printf_s("平局n"); printf_s("cur=%s ", cur == 0 ? "石头" : (cur == 1) ? "剪刀" : "布"); printf_s("sys=%sn", sys == 0 ? "石头" : (sys == 1) ? "剪刀" : "布"); } return 0; }
若是你能将这些代码看懂,那么恭喜你已经前脚迈进C语言的大门,至于你若想进一步提升为一名合格的程序员,这些还是远远不够的。让我们一起携手揭开编程这一层神秘的面纱......



