编写C语言,要求输出所有小于等于已正整数且满足条件X的数之和

学习 时间:2026-04-04 16:52:55 阅读:7419
编写C语言,要求输出所有小于等于已正整数且满足条件X的数之和条件X:这个数既不是7的倍数,各个位上的数也没有7.

最佳回答

忧郁的心情

拉长的鞋子

2026-04-04 16:52:55

//程序其实不复杂,看起来多是因为我解释得较详细,所以不要觉得复杂。#include void fun1(int k) //定义此函数用于判断整数k的各个位是否含有数字7,规定满足返回1,不满足返回0{int t=k;while(t){if(t%10==7)return(0); //如果t除以10的余数是7,即个位上是7,那么不满足条件,返回0t=t/10; //如果满足个位上不是7的条件,那么把t除以10,得到一个除去个位数字的一个新数,循环一下再判断,循环到第二次其实是在判断原数字的十位是否为7,再循环一次就是判断百位,以此类推直到最高位,当t不断除以10最后t=0结束循环}return(1);//如果上面的循环没有一次返回0,表示数字的每一位都不是7,那么满足条件,返回1}void fun2(int a) //定义此函数用于判断整数a是否满足条件X,规定满足返回1,不满足返回0{int b=a;if(b/7==0) return(0); //如果b/7=0,表示b是7的倍数,那么不满足条件X,返回0if(fun1(b)==0) return(0);//如果b不满足每一位都是数字7的条件,返回0return(1);//程序若能执行到这里说明数字b完全满足了条件X,返回1}void main(){int i,n,sum=0;scanf("%d",&n); // 请输入已知正整数nfor(i=1;i

最新回答共有2条回答

  • 优美的睫毛
    回复
    2026-04-04 16:52:55

    //程序其实不复杂,看起来多是因为我解释得较详细,所以不要觉得复杂。#include void fun1(int k) //定义此函数用于判断整数k的各个位是否含有数字7,规定满足返回1,不满足返回0{int t=k;while(t){if(t%10==7)return(0); //如果t除以10的余数是7,即个位上是7,那么不满足条件,返回0t=t/10; //如果满足个位上不是7的条件,那么把t除以10,得到一个除去个位数字的一个新数,循环一下再判断,循环到第二次其实是在判断原数字的十位是否为7,再循环一次就是判断百位,以此类推直到最高位,当t不断除以10最后t=0结束循环}return(1);//如果上面的循环没有一次返回0,表示数字的每一位都不是7,那么满足条件,返回1}void fun2(int a) //定义此函数用于判断整数a是否满足条件X,规定满足返回1,不满足返回0{int b=a;if(b/7==0) return(0); //如果b/7=0,表示b是7的倍数,那么不满足条件X,返回0if(fun1(b)==0) return(0);//如果b不满足每一位都是数字7的条件,返回0return(1);//程序若能执行到这里说明数字b完全满足了条件X,返回1}void main(){int i,n,sum=0;scanf("%d",&n); // 请输入已知正整数nfor(i=1;i

上一篇 合并为一句 This baby is sleeping.That baby is sleeping.( ) ( ) ar

下一篇 人教版初二上册英语书第10页的2d翻译