精华内容
下载资源
问答
  • PTA 基础编程题目集 6-7 统计某类完全平方数 C语言 本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。 函数接口定义: int IsTheNumber ( const int N )...

    PTA 基础编程题目集 6-7 统计某类完全平方数 C语言

    本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。

    函数接口定义:
    int IsTheNumber ( const int N );
    其中N是用户传入的参数。如果N满足条件,则该函数必须返回1,否则返回0。

    裁判测试程序样例:

    #include <stdio.h>
    #include <math.h>
    
    int IsTheNumber ( const int N );
    
    int main()
    {
        int n1, n2, i, cnt;
    	
        scanf("%d %d", &n1, &n2);
        cnt = 0;
        for ( i=n1; i<=n2; i++ ) {
            if ( IsTheNumber(i) )
                cnt++;
        }
        printf("cnt = %d\n", cnt);
    
        return 0;
    /* 你的代码将被嵌在这里 */
    }
    

    输入样例: 105 500
    输出样例: cnt = 6

    int IsTheNumber(const int N) {
    	int x; double a;
    	int n = N;
    	int b[10] = {0};
    	a = sqrt(n);
    	if (a==(int)a) {
    		while (n) {
    			x = n % 10;
    			n /= 10;
    			if (b[x]==1) {
    				return 1;
    			}
    			else {
    				b[x] = 1;
    			}
    		}return 0;
    	}
    	return 0;
    }
    
    展开全文
  • C语言 完全平方数

    千次阅读 2020-12-26 19:25:37
    若一个数能表示成某个数的平方的形式,则称为完全平方数。 #include<stdio.h> #include<math.h> int IsSquare(long int n); int main() { long n,p; scanf("%d",&n); if(p==IsSquare(n)) ...

    若一个数能表示成某个数的平方的形式,则称为完全平方数。

    #include<stdio.h>
    #include<math.h>
    int IsSquare(long int n);
    int main() {
    	long n,p;
    	scanf("%d",&n);
    	if(p==IsSquare(n))
    		printf("%d 不是平方数",n);
    	else
    		printf("%d 是平方数\n",n);
    	return 0;
    }
    
    int IsSquare(long int n) {
    	int m,t;
    	m=(int)sqrt(n);
    	t=(int)sqrt(n)+1;
    	if(m*m==n)
    		return m;
    	else if(t*t==n)
    		return t;
    	else
    		return 0;
    }
    

    小剧场:我希望我不会回头。I hope I will not turn back.

    展开全文
  • C语言完全平方数

    千次阅读 2019-12-30 08:42:54
    C语言完全平方数 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? 分析 在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足如下...

    C语言求完全平方数

    一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? 
    

    分析

    在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足如下条件,即是结果。
    

    程序

    #include "stdio.h" 
    #include "math.h" 
    void main() 
    { 
     double i,x,y; 
     for (i=1;i<100000;i++) 
     { 
      x=sqrt(i+100); //x为加上100后开方后的结果
      y=sqrt(i+268); //y为再加上168后开方后的结果
      /*如果一个数的平方根的平方等于该数,这说明此数是完全平方数*/
      if(x*x==i+100&&y*y==i+268) 
       printf("\n%f\n",i); 
     } 
    }

    部分结果展示

    在这里插入图片描述

    展开全文
  • 可以运行,但是浪费了大量的空间,有一些知识点很迷惑,后续慢慢改吧 int numSquares(int n) { int a,i; for(i=1;i&lt;=n;i++){ if((i*i)&gt;n) break; a=i; } ... if(z==a) re...

    可以运行,但是浪费了大量的空间,有一些知识点很迷惑,后续慢慢改吧

    int numSquares(int n) {
      
        int a,i;
        for(i=1;i<=n;i++){
            if((i*i)>n) break;
            a=i;
        }
      
        double z;
        z=sqrt(n);
      
        if(z==a) return 1;
        
        int *queue;
        queue=(int*)malloc(sizeof(int)*1000000);
        
        
        queue[0]=n;
      
        
        int total_queue_size=1;
        int queue_size;
        
        int head=0;
        int tail=1;
        int count=0;
        int last=1;
        while(last==1){//while
            count++;
            int j;
            queue_size=total_queue_size-head;
            
            for(j=0;j<queue_size;j++){
              //
              int a1,m,n1;
              n1=queue[head];
              for(m=1;m<=n1;m++){
                if((m*m)>n1) break;
                a1=m;
              }
              //printf("a1=%d\n------\n",a1);
              //
              //-------插入队列------
              int k,n2;
              for(k=a1;k>0;k--){
                  n2=n1-k*k;
                  //printf("insert value %d\n",n2);
                  //if(n2==0) return count;
                  if(n2==0){
                    last=0;
                    break;
                  }
                  total_queue_size++;
                  queue[tail]=n2;
                  tail++;
                }
              if(last==0) break;
                
              //-------------
                head++;
            }
        }//while
        return count;
    }

     

    展开全文
  • 给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, …)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。 示例 1: 输入: n = 12 输出: 3 解释: 12 = 4 + 4 + 4. 示例 2: 输入: n = 13 输出: 2 ...
  • 统计某类完全平方数C语言

    千次阅读 2020-02-05 15:45:57
    统计某类完全平方数C语言实现) 问题简述: 本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。 函数接口: //其中N是用户传入的参数。如果N满足条件,...
  • 完全平方数(C语言实现)

    千次阅读 2016-12-30 13:17:58
    一个整数,它加上100后是一个完全平方数请问该数是多少? 二、程序分析 1.题目中没有限定这个整数的范围,因此,可以在代码中#define scope 10000,即使用scope变量定义一个范围,比如10000。如果想修改范围,只...
  • 编写程序,输出 1~1000 之间所有的完全平方数。 代码实现 # include <stdio.h> # include <math.h> //要用sqrt() int main(void) { int i; //循环变量 int x; //存储每个数的二次方根 for (i=1; i&...
  • Problem A: 零起点学算法30——输出四位完全平方数文章目录前言一、题目介绍二、代码总结 前言 一道C语言的思考 一、题目介绍 输出所有形如aabb的四位完全平方数(即前2位数字相等,后2位数字相等,且是另外一个数的...
  • 完全平方数问题(C语言

    千次阅读 2019-11-22 15:52:37
    题目:一个整数,他加上100后是一个完全平方数,再加上168又是一个完全平方数,求该数是多少? 分析:完全平方数,就是可以开方得到整数的数。 代码如下: #include <stdio.h> #include <math.h> int...
  • 有两种方法如下:方法1:#include&lt;stdio.h&gt; #include&lt;math.h&gt; int main() { int i,a,b,c,d; for(i=1000;i&lt;10000;i++) { a=i/1000; b=(i-a*1000)/100;......
  • 完全平方数C语言) 算法-动态规划(分割整数):算法与数据结构参考 题目: 给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, …)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。例: 输入: ...
  • c语言完全平方数

    2021-04-03 20:32:47
    题目:一个整数,它加上 100 后是一个完全平方数,再加上 168 又是一个完全平方数,请问 该数是多少? 1.程序分析:在 10 万以内判断,先将该数加上 100 后再开方,再将该数加上 268 后再开方,如果开方后 的结果...
  • 题目:一个整数,它加上100后是完全平方数,再加上168后还是完全平方数,问这个数是多少? 分析:完全平方数:如果一个正整数a 是某一个整数 b 的平方,那么这个正整数 a 叫做完全平方数。由此可知,我们可以使用...
  • C语言经典例3-完全平方数

    千次阅读 2020-01-23 19:47:44
    一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? 2 分析 方法1(有缺陷,答案不全):直接用暴力解法,由于不知道数的确切范围,所以假定该数在0到10000内进行求解,求解的...
  • 完全平方数 若一个数能表示成某个数的平方的形式,则称这个数为完全平方数。 代码 #include<stdio.h> //完全平方数 void main(){ int i,j,m,n; printf("输入范围:"); scanf("%d%d",&m,&n); ...
  • 2.如果一个最少可以拆成4个平方和,则这个还满足 n = (4^a)*(8b+7) —> 因此可以先看这个3.是否满足上述公式,如果不满足,答案就是1,2,3了 4.如果这个本来就是某个平方,那么答案就是1,否则...
  • c语言-统计某类完全平方数

    千次阅读 2018-09-11 16:49:15
    6-7统计某类完全平方数(20 分) 本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。 函数接口定义: int IsTheNumber ( const int N ); 其中N是...
  • C语言完全平方数

    千次阅读 2020-03-29 12:14:26
    它既是完全平方数,又是两位数字相同,例如 144、676 等。 请编制函数实现此功能,满足该条件的整数的个数通过所编制的函数返回。 最后调用writeDat()把结果输出到文件 out.dat 中。 #include <stdio.h> int ...
  • 【C】 完全平方数

    千次阅读 2020-05-17 23:54:03
    一个整数n(n小于1000),它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? 完全平方数:若一个数能表示成某个整数的平方的形式,则称这个数为完全平方数完全平方数是非负数,而一...
  • 实验5-6 使用函数判断完全平方数 (10 point(s)) 本题要求实现一个判断整数是否为完全平方数的简单函数。 函数接口定义: int IsSquare( int n ); 其中n是用户传入的参数,在长整型范围内。如果n是完全平方数,...
  • 首先强调一下,完全平方数和完全数不是一个 概念,完全平方数:若一个数能写成某一个数平方的形式,那么这个数就是完全平方数,比如25=5*5,36=6*6,那么25,36都是完全平方数,另外虽然25=(-5)*(-5),但对于本题不...
  • C语言经典代码(判断完全平方数

    万次阅读 2018-01-28 16:43:04
    题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?  1.程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后  的结果满足如下...
  • C程序----判断完全平方数

    千次阅读 2020-04-11 21:20:47
    #include <stdio.h> #include <stdlib.h> int IsSquare(int n); int main() { int n ,flag = 0 ; printf("input n: "); scanf("%d",&n); flag = IsSquare(n); ...
  • 程序分析:在10万以内判断,先将该加上100后再开方,再将该加上268后再开方, 如果开方后的结果满足条件,即是结果. long int i,x,y; for(i=0;i<100000;i++){ x=sqrt(i+100);//求平方根 y=sqrt(i+...
  • 那我们不妨这样想,我们可以把问题想成该数n等于一个完全平方数m加上(n-m),然后转化成求(n-m)可拆成怎样的完全平方数和。这样,状态转移方程就可以列出来了。 2.取最优 现在我们就有一个问题,怎么遍历一遍n以内...
  • C语言判断完全平方数

    2021-09-03 13:08:12
    // 1+3+5+7+....+(2*n-1)=n^2 bool isPerfectSqr(int x) { int t = 0; int i = 1; while (t < x) { t += i; i += 2; } return t == x; } bool isPerfectSqr(int x) { int t = 1; while (x >...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,296
精华内容 2,918
关键字:

完全平方数c语言

c语言 订阅