C语言数字类编程题

目录

水仙花数

斐波那契数列

 素数

 同构数

最大公约数,最小公倍数

数字逆序输出

完数


 题目:编写程序输出符合下列要求的全部三位数

条件:由1、2、3、4四个数组

成,互不相同且无相同重复数字的三位数。

思路:四个数字分别做百位十位个位(三个循环语句嵌套遍历每个数字(若给定数字中存在0,0不能做百位)),且三个位上的数字不能相同(选择语句将输出限制在三个数不相同的情况下)。

#include<stdio.h>
int main()
{
	int i, j, k;
	for (i = 1; i <= 4; i++)
		for (j = 1; j <= 4; j++)
			for (k = 1; k <= 4; k++)
				if (i != j && i != k && j != k)
					printf("%d%d%d ", i, j, k);//直接并列输出三个数字,注意后面加空格让每个三位数有间隔
	return 0;
}

水仙花数

题目:找到1000之内的所有水仙花数,并把它输出出来。

水仙花数:一种特殊的三位数,其每一位的立方之和等于该数本身。例如:153=1*1*1+5*5*5+3*3*3

思路:该数对10取余得到个位、对除以10得到百位和十位再对10取余得到十位、除以100得到百位。最后判断每一位的立方和与原数是否相等。

#include<stdio.h>
int main()
{
	int i,a,b,c;
	for (i = 100; i <1000; i++)//水仙花数是特殊三位数,所以直接从100开始判断
	{
		a = i % 10;// 提取个位数
		b = i / 10 % 10;//提取十位数
		c = i / 100;//提取百位数
		if (a * a * a + b * 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值