C语言:亲密数对

题目描述

在自然数中有一种这样的数:它自身是一个完全平方数,加上1之后是一个素数,这一对数被称为亲密数对,请编程找出指定区域内的所有亲密数对。
例如在[10,100]之间的亲密数对有:(16,17),(36,37)
在[100,200]之间的亲密数对有:(100,101),(196,197)
在[1000,2000]之间的亲密数对有:(1296,1297),(1600,1601)

输入格式

一行,两个整型数据s和t,表示指定的区间[s,t],且10≤s≤t≤10,000,000,中间以空格分隔。题目保证指定区间内至少有一对亲密数

输出格式

每一对亲密数对占一行,第一个是完全平方数,第二个是素数,中间以空格分隔。

#include 
#include 
#include 
int prime(int n)
{
	if(n<=1)
	{
		return 0;
	}else{
		int i;
		int flag=1;
		for(i=2;i<=sqrt(n);i++)
		{
			if(n%i==0)
			{
				flag=0;
			}
		}
		
		if(flag==1)
		{
			return 1;
		}else{
			return 0;
		}
	}
}

int wanquan(int n)
{
	int t=sqrt(n);
	if(t*t==n)
	{
		return 1;
	}else{
		return 0;
	}
}

int main()
{
	int s,t;
	scanf("%d%d",&s,&t);
	int i;
	for(i=s;i

你可能感兴趣的:(c语言,开发语言)