前言
1.开始
1.for循环99乘法表
2.while循环实现99乘法表
3.100以内个位数为5的数
4.输入距离和重量,计算运送包裹的费用
5.输入总成绩,判断等级
6.在一个数组中插入一个数,大小顺序不变
7.输入一段字符串,判断其中字符个数
8.利用函数实现插数
9.输入三个数,比较其大小
10.输入十个同学成绩,输出低于平均分的人数
11.打印一个6x6的对角线
12.打印自由行列的对角线(根据屏幕分辨率不同,行列数显示效果会不同)
2. 斐波那契数列(三种形式)
13.斐波那契数列①
14.斐波那契数列②
15.斐波那契数列③(递归)
16.100至200以内回文数的和
17.求n!(n!=n*(n-1)*(n-2)……*1)
18.求n的阶乘(函数)
19.输入一个3x4的矩阵,输出其中偶数个数
20.输入十个数,将其逆序输出
前言
仅是汇总一下入门学习c语言写的程序。以下全部为本人或于同学老师一同编写,如有雷同纯属巧合。
刚刚入门,语法等等还处在萌新阶段,欢迎大佬指正,也希望可以给看到的初学者一些启发、帮助。
开始
1.for循环99乘法表
#include
main()
{
int i,j;
for(i=1;i<=9;i++)
{
for(j=1;j<=i;j++)
{
printf("%dx%d=%d ",j,i,i*j);
}
printf("n");
}
}
1.for循环99乘法表
2.while循环实现99乘法表
#includemain() { int i=1,j=1,t=1; while(i<=9) { j=1; while(j<=i) { printf("%dx%d=%d ",j,i*j); i++; } printf("n"); j++; } }
3.100以内个位数为5的数
#includemain() { int i, cnt = 0; for (i = 0; i <= 100; i++) { if (i % 10 == 5 && i % 3 == 0) { cnt++; printf("% dn", i); } } printf("%d", cnt); }
4.输入距离和重量,计算运送包裹的费用
#includeint main() { float kg, km, money; printf("请输入包裹重量,距离,用空格隔开:n"); scanf("%f %f", &kg, &km); if (kg < 5) money = km * 0.5; else if (kg >= 5 && kg < 10) money = km * 0.8; else money = km * 1.0; printf("费用:%.2f", money); }
5.输入总成绩,判断等级
#includeint main() { int score; printf("请输入学生成绩:"); scanf("%d", &score); switch (score / 100) { case 1: case 2: case 3: case 4: case 5: printf("F"); break; case 6: printf("E"); break; case 7: printf("D"); break; case 8: printf("C"); break; case 9: printf("B"); break; case 10: printf("A"); break; default: printf("成绩错误"); } getchar(); return 0; }
6.在一个数组中插入一个数,大小顺序不变
#includemain() { int a[6] = {5, 8, 13, 16, 19}, i, t, x; printf("请输入一个新数;n"); scanf("%d", &x); a[5] = x; for (i = 5; i >= 1; i--) { if (a[i] < a[i - 1]) { t = a[i]; a[i] = a[i - 1]; a[i - 1] = t; } } for (i = 0; i < 6; i++) printf("%d ", a[i]); return 0; }
7.输入一段字符串,判断其中字符个数
#include#include int abc(char x[10]) { int i = 0; while (x[i] != ' ') { i++; } return i; } int main() { char a[20]; printf("输入一段字符串:n"); gets(a); printf("%d", abc(a)); }
8.利用函数实现插数
#includeint A(int y) { printf("请输入一个数:"); scanf("%d", &y); return y; } main() { int a[5] = {5, 9, 13, 18, 20}, b[6] = {0}, i, j, x; b[0] = A(x); for (i = 0; i < 5; i++) { if (b[i] > a[i]) { b[i + 1] = b[i]; b[i] = a[i]; } else { for (j = i; j < 5; j++) b[j + 1] = a[j]; } } for (i = 0; i < 6; i++) printf("%d ", b[i]); return 0; }
9.输入三个数,比较其大小
#includemain() { int a, b, c, t; printf("请输入三个数:"); scanf("%d%d%d", &a, &b, &c); if (a > b) { t = a; a = b; b = t; } if (a > c) { t = a; a = c; c = t; } if (b > c) { t = b; b = c; c = t; } printf("%d %d %d", a, b, c); }
10.输入十个同学成绩,输出低于平均分的人数
#includemain() { int i, cnt = 0; float a[10], avg = 0; printf("请输入十个同学成绩:"); for (i = 0; i < 10; i++) { scanf("%f", &a[i]); avg += a[i]; } avg = avg / 10; for (i = 0; i < 10; i++) { if (a[i] < avg) cnt++; } printf("低于平均分人数为:%d", cnt); }
11.打印一个6x6的对角线
如图
#includeint main() { int i, j; int a[6][6]; for (i = 0; i < 6; i++) { for (j = 0; j < 6; j++) { if (i == j) { a[i][j] = 1; } else if (i + j == 5) { a[i][j] = -1; } else a[i][j] = 0; } } for (i = 0; i < 6; i++) { for (j = 0; j < 6; j++) { printf("%5d", a[i][j]); } printf("n"); } }
12.打印自由行列的对角线(根据屏幕分辨率不同,行列数显示效果会不同)
如图
#includevoid A(int n) { int i, j; int a[50][50] = {{0}}; for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { if (i == j) { a[i][j] = 1; } else if (i + j == n - 1) { a[i][j] = -1; } else a[i][j] = 0; } } for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { printf("%3d", a[i][j]); } printf("n"); } } int main() { int x; printf("请输入想打印的行列数n:n"); scanf("%d", &x); A(x); return 0; }



