C++语言素数原理
/*
学习内容:输入一个32位的整数,打印出到该数范围内的所有素数。
只能被1和自身整除的数为素数
语言:C++
*/
#includeiostream //C语言中的stdio.h
#includecmath //C语言中的math.h
#includeclimits //C语言中的limits.h
#includeiomanip //格式化控制输出
usingnamespacestd;
//判断一个整数是否为素数
boolIsPrime(intiValue)
{
inti;
intiRoot;
iRoot=static_castint(sqrt((double)iValue));//数据类型转换
for(i=2;i=iRoot;++i)
{
if(iValue%i==0)
returnfalse;
}
returntrue;
}
intmain()
{
unsignedinti; //循环变量
unsignediMax; //保存有符号整型的最大值int
unsignediCount=1; //打印输出的时候用于控制换行显示
cout"输入一个32位的整数,可以打印出到该数范围内的所有素数。"endl;
cout"请输入该数:";
while(!(ciniMax)
iMax2
iMaxINT_MAX) //获取用户的输入,保存到iMax变量中
{
cout"输入的值不合法,请重新输入:";
cin.clear();//清除cin的错误标志位
cin.sync();//清除输入缓存区
}
// coutiMaxendl;
for(i=2;i=iMax;++i)
{
if(IsPrime(i))
{
coutsetw(12)i;//每一个素数占12个字符的宽度setw==setwidth
if(iCount++%6==0)//每一行只显示6个素数
coutendl;//换行
}
}
coutendl;
return0;
}
本月25日新开启C语言系统学习班,能申请到