本文创作目的是写几个简单程序帮助学习C语言的同学练手,深化面向过程编程的思维方式。
** 如有错误,感谢指正**
如有错误,感谢指正,请私信博主,有辛苦红包,拜“一字之师”。
请根据目录寻找自己需要的段落
99乘法表
题目1:打印九九乘法表
发散思维,倒九九,竖九九。
#include <stdio.h>
void main() {
int i, j;
for (i = 1; i < 10; i++) {
for (j = 1; j < i + 1; j++) {
printf("%d+%d=%d\t", i, j, i * j);
}
printf("\n");
}
斐波那契兔子
题目2:已知一对兔子每一个月可以生一对小兔子,而一对兔子出生后第二个月就开始生小子。假如一年内没有发生死亡,则一对兔子一年内能繁殖成多少对?
本题解没有使用递归函数
#include <stdio.h>
void main() {
long f1, f2;
int i;
f1 = f2 = 1;
for (i = 1; i < 7; i++) {
printf("%12ld%12ld", f1, f2);
if (i % 4 == 0) printf("\n");
f1 = f1 + f2;
f2 = f1 + f2;
}
}
100-200间素数判断
素数判断方法(初中奥赛会学近10种判断方法,建议补习,回头传给孩子)
本题解采用暴力循环
#include <stdio.h>
#include <math.h>
void main() {
int m, i, k, h = 0, leap = 1;
for (m = 101; m < 201; m++) {
k = sqrt(m + 1);
for (i = 2; i <= k; i++) {
if (m % i == 0) {
leap = 0;
break;
}
}
if (leap) {
printf("%-4d", m);
h++;
if (h % 10 == 0) {
printf("\n");
}
}
leap = 1;
}
printf("\nThe total is %d",h);
}
完全数问题
如果一个数恰好等于它的真因子之和,则称该数为“完全数”
#include<stdio.h>
int main() {
int i, j;
int sum;
for (i = 1; i <= 1000; i++) {
sum = 0;
for (j = 1; j < i; j++)
if (i % j == 0) {
sum += j;
}
if (sum == i) {
printf("%d\n", i);
}
}
}
数组旋转问题
44数组逆时针旋转90°存储
想用获取键盘输入,自己写,改成55的自己练
#include <stdio.h>
int main() {
int b[4][4], i, j;
int a[4][4] = {
1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
b[3 - j][i] = a[i][j];
}
}
printf("rotated matrix:\n");
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
printf("%6d", b[i][j]);
}
printf("\n");
}