C语言经典源程序解析:寻找完全平方数与奖金计算

需积分: 25 1 下载量 181 浏览量 更新于2024-07-30 1 收藏 282KB DOC 举报
"C语言源程序100例" 这篇资源主要包含了两个C语言编程实例,旨在帮助学习者理解和应用C语言编写程序。这些例子是经典的源程序,涵盖了不同的问题解决策略。 【程序1】 这个程序的目标是找出所有由数字1、2、3、4组成的互不相同且无重复数字的三位数。通过三层循环遍历所有可能的组合,并通过条件判断(i!=k&&i!=j&&j!=k)确保没有重复的数字。这个程序展示了如何使用循环和条件语句来生成特定的数字序列。 ```c main() { int i, j, k; printf("\n"); for(i=1; i<5; i++) /* 三重循环 */ for(j=1; j<5; j++) for(k=1; k<5; k++) { if(i!=k && i!=j && j!=k) /* 确保i、j、k三位互不相同 */ printf("%d,%d,%d\n", i, j, k); } } ``` 【程序2】 这个程序设计用来计算基于不同利润区间的奖金提成。根据利润的不同范围,奖金的计算方式也不同。程序通过输入的利润值(I),使用一系列if-else语句来确定适用的提成比例,并计算总奖金。这个问题的解决方案体现了条件分支和数值计算在实际问题中的应用。 ```c main() { long int i; int bonus1, bonus2, bonus4, bonus6, bonus10, bonus; scanf("%ld", &i); bonus1 = 100000 * 0.1; bonus2 = bonus1 + 100000 * 0.75; bonus4 = bonus2 + 200000 * 0.5; bonus6 = bonus4 + 200000 * 0.3; bonus10 = bonus6 + 400000 * 0.15; if(i <= 100000) bonus = i * 0.1; else if(i <= 200000) bonus = bonus1 + (i - 100000) * 0.075; else if(i <= 400000) bonus = bonus2 + (i - 200000) * 0.05; else if(i <= 600000) // ... (其余的利润区间处理) } ``` 这两个例子展示了C语言的基础语法,包括变量声明、循环结构(for)、条件判断(if-else)以及函数调用(如`sqrt()`和`printf()`)。同时,它们还涉及到数学概念,如完全平方数的判断和百分比计算。通过这些实例,学习者可以深入理解如何将逻辑思维转化为C语言代码,解决实际问题。这些程序对于初学者来说是非常有价值的练习,有助于提升编程技能和问题解决能力。