c语言程序:编写函数,判断一个正整数是不是为完全平方数,并输出100以内的完全平方数。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言程序:编写函数,判断一个正整数是不是为完全平方数,并输出100以内的完全平方数。相关的知识,希望对你有一定的参考价值。
参考技术A*/
package questions;
public class Q10
public static void main(String[]args)
int n=0;
for(int i=0;i<=100000;i++)//先确定一个在100000内的大概范围
if(isCompSqrt(i+100))
n=i;
break;
System.out.print("所求的数是:"+n);
private static boolean isCompSqrt(int p)//判断完全平方数的方法
boolean flag=false;
double fsqrt=Math.sqrt(p);//先将数开平方
int q=(int)fsqrt;//转换成整数,另q为开平方且转换为整数的结果。
if(p==Math.pow(q,2))//pow(x,y)就是计算x的y次幂。把开平方后的整数再平方,看看它和开平方之前的数是不是相等。
flag=true;
return flag;
扩展资料:
return用法:
作用是结束正在运行的函数,并返回函数值。return后面可以跟一个常量,变量,或是表达式。
函数的定义一般是这样的,例如:
int a(int i)//第一个int是函数的返回值的类型,也就是return后面跟的值的类型,a是函数的名称,括号里的是传递给函数的参数,int是参数的类型,i是参数的名字
...//省略函数体内容
return b;//b必须与函数头的返回值一致(此处为int型)
简单函数举例:
int addOne(int b)
return b+1;
该函数的作用是取得一个数,将这个数加上1,再将结果返回
调用时这样:
int result=addOne(2);//此时result的值为3
函数括号里的参数也可以为变量或能算出值的表达式
以上就是一个基本的函数,一般的函数都有返回值,也就是return后面跟的值,返回值可以为各种数据类型,如:int,float,double,char,a[](数组),*a(指针),结构或类(c++)
但不是所有函数都有返回值,如果某个函数无返回值,那么返回值的位置则为“void”关键字,此时函数体中无返回值,即无return的值。但是函数中也可出现return,即一个空的return句子,其作用是使函数立即结束,如
void print()//括号中为空表示无传递参数
printf("a");
printf("b");
return;//函数执行到此处结束
printf("c");
//该函数只执行到return语句处,即屏幕上输出的为"ab"
C语言中如何判断整数是不是为平方数
若N=n*n,N,n均为正整数,则N为完全平方数C语言中,include <math>
直接对N开平方, 如果有 sqrt(N)==int(sqrt(N)),则N为完全平方数
sqrt()函数是math库中的开平方函数,如果开方结果与取整结果一样,则符合要求. 参考技术A
1、截取字符串
截取字符串可以说是字符串处理功能中最常用的一个子功能了,能够实现截取字符串中的特定位置的一个或多个字符。举例说明其基本功能:
代码如下:
@echo off
set ifo=abcdefghijklmnopqrstuvwxyz0123456789
echo 原字符串(第二行为各字符的序号):
echo %ifo%
echo 123456789012345678901234567890123456
echo 截取前5个字符:
echo %ifo:~0,5%
echo 截取最后5个字符:
echo %ifo:~-5%
echo 截取第一个到倒数第6个字符:
echo %ifo:~0,-5%
echo 从第4个字符开始,截取5个字符:
echo %ifo:~3,5%
echo 从倒数第14个字符开始,截取5个字符:
echo %ifo:~-14,5%
pause
2、当然,上面的例子只是将字符串处理的基本功能展示出来了,还看不出字符串处理具体有什么用处。下面这个例子是对时间进行处理。
代码如下:
@echo off
echo 当前时间是:%time% 即 %time:~0,2%点%time:~3,2%分%time:~6,2%秒%time:~9,2%厘秒
pause
~ 参考技术C bool p(int a) //判断一个数是否为平方数
for(int i=2;i<sqrt((double)a)+1;i++)
if(pow((double)i,2)==a) //调用pow函数,pow(x,y)其作用是计算x的y次方。i^2
return true;
else if(pow((double)i,2)>a)
return false;
return false;
以上是关于c语言程序:编写函数,判断一个正整数是不是为完全平方数,并输出100以内的完全平方数。的主要内容,如果未能解决你的问题,请参考以下文章
C语言:编写一个测试一个串是不是为回文的递归函数,是回文,返回1;不是,返回0。
ZZNUOJ_用C语言编写程序实现1370:判断素数(附完整源码)