栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言程序设计-把1、2、3、4、5、6、7、8、9组合成三个三位数,要求每个数字仅用一次,且每个三位数均是完全平方数

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言程序设计-把1、2、3、4、5、6、7、8、9组合成三个三位数,要求每个数字仅用一次,且每个三位数均是完全平方数

设计思路
    把1到9能组合的三位数求出来计算出这些三位数中是完全平方数的部分
 	int arr[]={1,2,3,4,5,6,7,8,9};
    int num;
    for (int i = 0; i < 9; ++i) {//找出三个数的完全平方数
        for (int j = 0; j < 9; ++j) {
            for (int k = 0; k < 9; ++k) {
                if(i==j||i==k||j==k){//当每个数字不重复时才能进行下一步
                    continue;
                }
                num = arr[i]*100+arr[j]*10+arr[k];
                if((int)sqrt(num)* (int)sqrt(num)==num){//组合完成的三位数放到新数组trr中
                    trr[l++] = num;
                }

            }
        }
    }
    从步骤2所得的数字钟筛选出所需要的数
for (int i = 0; i < l; ++i) {
        for (int j = i; j  

把随机获得的三个三位数拆开放到数组中,判断数组中是否有重复的数字。如果没有则证明符合题目条件,否则继续进行下一轮判断

int getResult(int a,int b,int c){
    int arr[9]={0};
    for (int i = 0; i < 3; ++i) {
        arr[i] = a%10;
        a = a/10;

        arr[i+3] = b%10;
        b = b/10;

        arr[i+6] = c%10;
        c = c/10;
    }
    for (int i = 0; i < 9; ++i) {
        for (int j = i+1; j <9; ++j) {
            if(arr[i]==arr[j]){
                return 0; //有重复数
            }
        }
    }
    return 1;
}    

完整代码

#include 
#include 
void getNum();
int getResult(int a,int b,int c);
int main(){
    getNum();
    return 0;
}
void getNum(){
    int arr[]={1,2,3,4,5,6,7,8,9};
    int trr[9],l;
    int num;
    for (int i = 0; i < 9; ++i) {//找出三个数的完全平方数
        for (int j = 0; j < 9; ++j) {
            for (int k = 0; k < 9; ++k) {
                if(i==j||i==k||j==k){
                    continue;
                }
                num = arr[i]*100+arr[j]*10+arr[k];
                if((int)sqrt(num)* (int)sqrt(num)==num){
                    trr[l++] = num;
                }

            }
        }
    }
    //输出其中不重复的三个完全平方数
    for (int i = 0; i < l; ++i) {
        for (int j = i; j  

运行结果:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/779069.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号