C语言程序示例:双素数检测与水仙花数计算

需积分: 8 11 下载量 25 浏览量 更新于2024-07-23 收藏 142KB DOC 举报
本资源主要涉及三个C语言编程题目及其解答,分别是判断素数、查找水仙花数以及判断闰年。 1. 双素数判定 - 在提供的C语言源代码中,定义了一个名为`prime`的函数,用于检查一个整数是否为素数。函数接受一个整数`x`作为输入,通过计算其平方根并遍历2到该平方根之间的所有整数,检查是否有因子。如果存在因子,则返回0表示非素数;否则返回1表示素数。在主函数中,从3开始,每次递增2(跳过2,因为2是唯一的偶数素数),使用`prime`函数判断连续的两个整数(如3和5)是否都是素数,如果是,则打印这两个数作为双素数对。 2. 水仙花数查找 - 第二个源程序用于寻找水仙花数,这是一种特殊的三位数,其各位数字立方和等于原数本身。程序使用三层嵌套循环,分别遍历百位、十位和个位上的数字(0到9),当满足`100*a + 10*b + c == a*a*a + b*b*b + c*c*c`的条件时,将结果100乘以百位数字加上10乘以十位数字再加上个位数字打印出来。 3. 闰年判断 - 最后一个问题涉及到日期计算,C程序根据公历闰年的规则进行判断。闰年的条件是:能被4整除但不能被100整除,或者能被400整除。用户输入年份和月份,程序首先检查年份是否是闰年,并输出相应的提示。同时,根据输入的月份,程序还会给出2月(闰年有29天,非闰年有28天)和其他月份的天数,使用`switch`语句分别处理不同月份的天数情况,对于不合法的输入(如月份超出范围或格式错误),则给出错误提示。 这些程序展示了C语言基础中的条件判断、循环结构以及一些数学概念在实际编程中的应用,对理解C语言逻辑和数据处理能力有一定帮助。