作者:Carmen果果时代 | 来源:互联网 | 2024-12-23 20:36
在学习编程的过程中,编写简单的程序是巩固基础知识的有效途径。以下是7个经典的C语言小程序,它们涵盖了从基本运算到逻辑判断等多个方面。
1. 生成无重复数字的三位数
题目:使用1、2、3、4这四个数字,可以组成多少个互不相同且无重复数字的三位数?并列出所有可能的组合。
分析:我们可以利用三重循环遍历所有可能的组合,并通过条件语句确保每一位上的数字都不相同。
#include
int main() {
for (int i = 1; i <= 4; i++) {
for (int j = 1; j <= 4; j++) {
for (int k = 1; k <= 4; k++) {
if (i != j && j != k && i != k) {
printf("%d%d%d\n", i, j, k);
}
}
}
}
return 0;
}
2. 计算企业奖金
题目:根据企业的利润发放奖金。具体提成规则如下:利润不超过10万元时,按10%提成;超过10万元但不超过20万元的部分按7.5%提成;依此类推。
分析:通过分段计算不同区间的奖金,并累加得到总奖金。
#include
int main() {
long int profit;
double bOnus= 0;
scanf("%ld", &profit);
if (profit <= 100000) {
bOnus= profit * 0.1;
} else if (profit <= 200000) {
bOnus= 10000 + (profit - 100000) * 0.075;
} else if (profit <= 400000) {
bOnus= 17500 + (profit - 200000) * 0.05;
} else if (profit <= 600000) {
bOnus= 37500 + (profit - 400000) * 0.03;
} else if (profit <= 1000000) {
bOnus= 49500 + (profit - 600000) * 0.015;
} else {
bOnus= 76500 + (profit - 1000000) * 0.01;
}
printf("Total bonus: %.2f\n", bonus);
return 0;
}
3. 寻找特定整数
题目:寻找一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数。
分析:我们可以通过遍历一定范围内的整数,检查其是否满足上述条件。
#include
#include
int main() {
for (long int i = 1; i <100000; i++) {
if (sqrt(i + 100) == floor(sqrt(i + 100)) && sqrt(i + 268) == floor(sqrt(i + 268))) {
printf("The number is %ld\n", i);
}
}
return 0;
}
4. 计算某天是一年的第几天
题目:输入某年某月某日,判断这一天是这一年的第几天。
分析:需要考虑闰年的情况,以及每个月的具体天数。
#include
int main() {
int day, month, year, sum = 0;
printf("Enter date (dd mm yyyy): ");
scanf("%d %d %d", &day, &month, &year);
int daysInMonth[] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
for (int i = 1; i sum += daysInMonth[i];
if (i == 2 && ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)) {
sum++;
}
}
sum += day;
printf("It is the %dth day of the year.\n", sum);
return 0;
}
5. 排序三个整数
题目:输入三个整数x, y, z,请将这三个数由小到大输出。
分析:通过比较和交换操作,将最小值放在最前面。
#include
int main() {
int x, y, z;
printf("Enter three integers: ");
scanf("%d %d %d", &x, &y, &z);
if (x > y) { int temp = x; x = y; y = temp; }
if (x > z) { int temp = x; x = z; z = temp; }
if (y > z) { int temp = y; y = z; z = temp; }
printf("Sorted order: %d %d %d\n", x, y, z);
return 0;
}
6. 输出字母C图案
题目:用*号输出字母C的图案。
分析:按照字母C的形状逐行输出字符。
#include
int main() {
printf(" ****\n");
printf(" *
");
printf(" *
");
printf(" ****\n");
return 0;
}
7. 输出九九乘法表
题目:输出9x9的乘法口诀表。
分析:使用双重循环分别控制行和列。
#include
int main() {
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= 9; j++) {
printf("%d*%d=%-3d", i, j, i * j);
}
printf("\n");
}
return 0;
}
敲代码不仅仅是机械地输入代码,更重要的是思考每个步骤背后的逻辑。通过多练习和多思考,你将更好地理解和掌握编程技能。
持续学习才能让你不断进步!加油!