C语言经典代码示例:乘法表、斐波那契数列、素数判断与因式分解

"C语言必背的几个代码"
在学习C语言的过程中,掌握一些关键的代码片段是非常重要的,这些代码可以帮助初学者更好地理解和运用C语言的基础概念。以下是从给定内容中提取出的五个关键代码示例,它们分别涵盖了乘法表、斐波那契数列、素数检测、因数分解和矩阵转置。
1. 乘法表
```c
#include<stdio.h>
main(){
int i, j, result;
for(i=1; i<10; i++){
for(j=1; j<10; j++){
result = i*j;
printf("%d*%d=%-3d", i, j, result);
}
printf("\n");
}
}
```
这段代码用于打印1到9的乘法表,`%-3d`用于左对齐并保留3个数字的宽度,使得输出整齐美观。
2. 斐波那契数列
```c
long f1, f2;
int i;
f1 = f2 = 1;
for(i = 1; i <= 20; i++){
printf("%12ld%12ld", f1, f2);
if(i % 2 == 0)
printf("\n");
f1 = f1 + f2;
f2 = f1 + f2;
}
```
这个程序生成斐波那契数列的前20项,`f1`和`f2`分别表示当前项和下一项,通过循环累加生成序列,并每两个数换行。
3. 素数检测
```c
#include <math.h>
main(){
int m, i, k, h = 0, leap = 1;
printf("\n");
for(m = 101; m <= 200; m++){
k = sqrt(m+1);
for(i = 2; i <= k; i++)
if(m % i == 0){
leap = 0;
break;
}
if(leap)/*如果leap仍为1,则m为素数*/{
printf("%-4d", m);
h++;
if(h % 10 == 0)
printf("\n");
}
leap = 1;
}
printf("\nThe total is %d", h);
}
```
这段代码用于找出101到200之间的所有素数,通过判断每个数是否能被2到其平方根整除来确定其素数属性。
4. 因数分解
```c
static int k[10];
int i, j, n, s;
for(j = 2; j < 1000; j++){
n = -1;
s = j;
for(i = 1; i < j; i++){
if((j % i) == 0){
n++;
s = s - i;
k[n] = i;
}
}
if(s == 0){
printf("%d is a perfect number:", j);
for(i = 0; i < n; i++)
printf("%d,", k[i]);
printf("%d\n", k[n]);
}
}
```
这个程序找到并打印出2到999之间的所有完美数,完美数是所有正因数之和等于其本身的自然数。
5. 矩阵转置
```c
int a[4][4], b[4][4], i, j;
printf("Input 16 numbers:");
for(i = 0; i < 4; i++)
for(j = 0; j < 4; j++){
scanf("%d", &a[i][j]);
}
/*此处应有转置代码,但原代码缺失*/
```
这段代码虽然不完整,但它的目的是读取一个4x4的矩阵并进行转置。要完成转置,需要将矩阵a的行变为b的列,反之亦然。
这些代码实例展示了C语言的基本操作,如循环、条件判断、数组处理以及数学运算,对于学习C语言的初学者来说非常实用。通过对这些代码的理解和实践,可以巩固和提升编程技能。
相关推荐







weixin_44549116
- 粉丝: 3
最新资源
- DevExpress ExpressPrinting系统完整源代码发布
- Eclipse SWT开发基础日历界面教程
- gtGrid+java打造简易数据库测试环境DEMO
- Java实现简易代理服务器教程
- Java Socket实现KWIC检索系统技术解析
- JavaScript练习实例分享
- JSF实战技巧与组件应用学习笔记
- Java处理XML文件的实用培训资料
- 图像去水印技巧:快速简便去除水印方法
- VC6源码:实现窗口防关闭功能及其VB示例
- VC助手1649版本助力VC9开发环境高效配置
- 数据库系统第三版1-6章答案解析
- PIC单片机电动自行车驱动系统设计实例
- STM32F10x USB库函数参考手册
- 实现多人聊天与文件共享的聊天室源代码分析
- Oracle STATSPACK技术:实现高性能数据库调整