C语言程序设计实例11至15

C语言程序设计实例11

找出3-1000中全部素数

#include <stdio.h>
#include <stdlib.h>
#include <math.h>


int main()
{
	int i, j, cnt = 0;
	for (i = 3; i <= 1000; i++)
	{
		for (j = 2; j <= sqrt(i); j++)
		{
			if (i%j == 0)
			{
				break;
			}
		}
		if (j > sqrt(i))
		{
			printf("%4d", i);
		}
	}
	system("pause");
	return 0;
}

C语言程序设计实例12

判断整数x(0<x<1000)是否是同构数。同构数:一个数它出现在他的平方数的右边

#include <stdio.h>
#include <stdlib.h>


int main()
{
	long int x, y, i = 10;
	int flag = 0;
	for (x = 1; x < 1000; x++)
	{
		y = x * x;
		while ((y / i) != 0)
		{
			if ((y%i) == x)
			{
				flag = 1;
				break;
			}
			i = i * 10;
		}
		if (flag == 1)
		{
			printf("\n%d是%d的同构数!", x, y);
		}
		flag = 0;
		i = 10;
		
	}
	system("pause");
	return 0;
}

C语言程序设计实例13

一个数如果掐好等于它的因子之和,这个数就称为“完数”。

#include <stdio.h>
#include <stdlib.h>


int main()
{
	int k[11];
	int i, j, n, s;
	for (j = 2; j < 1000; j++)
	{
		n = -1;
		s = j;
		for (i = 1; i < j; i++)
		{
			if (j%i == 0)
			{
				n++;
				s = s - i;
				k[n] = i;
			}
		}
		if (s == 0)
		{
			printf("%d is a 完数", j);
			for (i = 0; i < n; i++)
			{
				printf("%4d", k[i]);
			}
			printf("%4d\n", k[n]);
		}
	}
	system("pause");
	return 0;
}

C语言程序设计实例14

一个正整数x其平方等于某两个正整数平方之和。如:33+44=5*5,那么5称为弦数。

#include <stdio.h>
#include <stdlib.h>


int main()
{
	int i, j, x, flag = 0;
	long m, n;
	for (x = 5; x < 100; x++)
	{
		for (i = 1; i < x; i++)
		{
			for (j = 1; j < x; j++)
			{
				n = i * i + j * j;
				m = x * x;
				if (m == n)
				{
					flag = 1;
					break;
				}
			}
			if (flag == 1)
			{
				printf("\n弦数为%d  %d*%d+%d*%d=%d*%d", x, i, i, j, j, x, x);
				flag = 0;
				break;
			}
		}
	}
	system("pause");
	return 0;
}

C语言程序设计实例15

打印出杨辉三角形(要求打印出10行如下图)
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1

#include <stdio.h>
#include <stdlib.h>


int main()
{
	int i, j, a[10][10];
	printf("\n");
	for (i = 0; i < 10; i++)
	{
		a[i][0] = 1;
		a[i][i] = 1;
	}
	for (i = 2; i < 10; i++)
	{
		for (j = 1; j < i; j++)
		{
			a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
		}
	}
	for (i = 0; i < 10; i++)
	{
		for (j = 0; j <= i; j++)
		{
			printf("%5d", a[i][j]);
		}
		printf("\n");
	}
	system("pause");
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值