C语言程序设计第四版(何钦铭、颜晖)第十章函数与程序结构之统计完全平方数

  1. 判断满足条件的三位数:编写一个函数,利用参数传入一个3位数n,找出101~n间所有满足下列两个条件的数:它是完全平方数,又有两位数字相同,如144、676等,函数返回找出这样的数据的个数。试编写相应程序。

    #include<stdio.h>
    #include<math.h>
    int sq(int n);
    int main(){
    int n;
    scanf("%d",&n);
    printf("101~%d之间是完全平方数并且有两位数相同的整数有%d个\n",n,sq(n));
    return 0;
    }
    int sq(int n){
    int num,i,count;
    count=0; //记录符合条件的值的个数
    for(i=11;i<=(int)sqrt(n);i++){//遍历101~n之间可能是完全平方数的平方根
    num=pow(i,2);
    if((num%10)==(num/100)||(num%10)==((num/10)%10)||(num/100)==((num/10)%10)){//判断它是否有两位数相同
    count++;
    }
    }
    return count;
    }

输入样例:999

输出结果:101~999之间是完全平方数并且有两位数相同的整数有8个

相关推荐
Magic--2 小时前
从入门到精通:快速排序的核心原理、实现与优化
数据结构·算法·排序算法
沈阳信息学奥赛培训2 小时前
深搜算法 6300:Grid Path Construction(2418)
算法
2401_891482172 小时前
C++中的状态模式
开发语言·c++·算法
Magic--2 小时前
选择排序:原理、实现与优化
数据结构·算法·排序算法
qq_417695052 小时前
基于C++的区块链实现
开发语言·c++·算法
We་ct2 小时前
LeetCode 74. 搜索二维矩阵:两种高效解题思路
前端·算法·leetcode·矩阵·typescript·二分查找
2401_894241922 小时前
基于C++的反射机制探索
开发语言·c++·算法
cui_ruicheng2 小时前
C++ 数据结构进阶:unordered_map 与 unordered_set源码分析与实现
数据结构·c++·算法·哈希算法
C蔡博士2 小时前
最小生成树(MST)详解:定义、算法与核心性质
算法·贪心算法·图论·时间复杂度