m0_72155027 2022-12-29 19:46 采纳率: 89.7%
浏览 26
已结题

用函数来判断符不符合条件

img


要是是完全平方数而且.有两位数字相同eg121
写一个函数来判断三位数是否为完全平方数,再写一个函数判断三位数是否有相同数字,再在主函数中调用这两个函数找出所有满足条件的数。
我的思路如上图
用函数判断是否符合条件能不能用我写的不符合条件置为零的方法呢?
但是程序运行不行,还是直接输出了100到1000的九百个数字,为什么?

  • 写回答

2条回答 默认 最新

  • Huazie 优质创作者: 编程框架技术领域 2022-12-29 19:58
    关注
    • 这里修改的都是副本,不影响main函数中的So变量

    img

    修改如下:

    img

    #include<stdio.h>
    #include<string.h>
    
    int same(int So) 
    {
        int a,b,c;
        a = So/100;
        b = So/10 - a;
        c = So%10;
        if (a==b || a==c || b==c)
            return 1;
        return 0;
    }
    
    int pingfang(int So)
    {
        int i;
        int flag = 0;
        for (i = 1; i < 32; i++)
        {
            if (i * i == So)
            {
                flag = 1;
                break;
            }
        }
        return flag;
    }
    
    int main() {
        int So;
        for (So = 100; So < 1000; So++) 
        {
            if (same(So) && pingfang(So)) 
            {
                printf("%4d", So);
            }
        }
    
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 1月6日
  • 已采纳回答 12月29日
  • 创建了问题 12月29日