标题:[求助]输出100以内能被7整除且含有数字5的所有自然数的思路
只看楼主
inku
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2006-8-6
 问题点数:0 回复次数:14 
[求助]输出100以内能被7整除且含有数字5的所有自然数的思路
要求用c语言编写一道程序,要求是输出所有100以内能够被7整除且含有数字的自然数

这题我是这么想的,符合条件的其实只有35和56这两个数,35可以表示为i%5=0&&i%7=0,(假设i就是符合要求的数),但是我怎么也想不出56该怎么表达好。

[此贴子已经被作者于2006-11-5 13:13:36编辑过]

搜索更多相关主题的帖子: 自然数 内能 数字 思路 整除 
2006-11-05 13:13
guzhou
Rank: 1
等 级:新手上路
威 望:1
帖 子:247
专家分:0
注 册:2006-11-4
得分:0 
分解吧
将该数分解为十位和个位看是否为5
再看能否被7整除

2006-11-05 13:54
frenn
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2006-8-2
得分:0 
n%7==0 && (n/10==5 || n%10==5)
2006-11-05 14:44
ziyi555
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-11-4
得分:0 
#include <stdio.h>
#define N 20
void main()
{
int a,i,j,num[N];
for(a=0,i=0;a<=100;a++)
{
if((a%7==0&&a%10==5)||(a%7==0&&a/10==5))
{
num[i]=a;
i++;
}
}
for(j=0;j<i;j++)
printf("%4d",num[j]);
}

放手一博
2006-11-05 15:55
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 
if(num%7==0&&(num%10==5||num/10==5))
{
printf();
}

倚天照海花无数,流水高山心自知。
2006-11-05 17:00
inku
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2006-8-6
得分:0 

原来是这样,豁然开朗了。我再问一道题目的思路。
还是程序设计题
有一个1维数组,有n个数组成,把这个数组每5个数的和相加,然后输出这个和,如果最后一组不是5个数也要输出和。举个例子,有一个别维数组中有这样几个数:1,3,5,8,9,5,4,7,6,2,1,4,8,6
在这个数组中,1,3,5,8,9这5个数的和为26,5,4,7,6,2,这5个数的和为24,1,4,8,6
因为是最后一组数,虽然不是5个数,但也输出和19,于是这个程序输出结果为26,24,19
我只知道求5个数的和可以用
for(s=0;i=0;i<5;i++)
s=s+a[i];
printf("%d",s);

这样只能输出前5个数的和,怎么才能做到程序的要求呢?请大家提供一下思路吧。

2006-11-05 18:36
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 
int sum=0;
for(i=0;i<n;i++)
{
if(i%5==0||i==n-1)
{
printf("%d\n",sum);
sum=a[i];
}
else
{
sum+=a[i];
}
}

倚天照海花无数,流水高山心自知。
2006-11-05 18:47
baxia
Rank: 1
等 级:新手上路
帖 子:43
专家分:0
注 册:2006-3-10
得分:0 
楼上的没有考虑i==0时也会打印sum吧 还有最后一个数是加不上的。看看我的程序
#include<stdio.h>
void main()
{
int a[]={1,1,1,1,1,1,1,1,1,1,1,1};
int n = sizeof(a)/sizeof(a[0]);
int sum=0;
for(int i=0;i<n;i++)
{
if(i%5==0||i==n-1)
{ if(i==0) {sum+=a[0];continue;}
if(i==n-1) sum+=a[n-1];
printf("%d\n",sum);
sum=a[i];

}
else
{
sum+=a[i];
}
}
}
2006-11-05 20:09
inku
Rank: 1
等 级:新手上路
帖 子:122
专家分:0
注 册:2006-8-6
得分:0 
以下是引用baxia在2006-11-5 20:09:08的发言:
楼上的没有考虑i==0时也会打印sum吧 还有最后一个数是加不上的。看看我的程序
#include<stdio.h>
void main()
{
int a[]={1,1,1,1,1,1,1,1,1,1,1,1};
int n = sizeof(a)/sizeof(a[0]);
int sum=0;
for(int i=0;i<n;i++)
{
if(i%5==0||i==n-1)
{ if(i==0) {sum+=a[0];continue;}
if(i==n-1) sum+=a[n-1];
printf("%d\n",sum);
sum=a[i];

}
else
{
sum+=a[i];
}
}
}

int n = sizeof(a)/sizeof(a[0]);
这句话是什么意思?

2006-11-07 14:44
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 
int n = sizeof(a)/sizeof(a[0]);
是用来计算数组中元素个数.用数组总的空间除去一个元素所占的空间不就是元素个数了.

倚天照海花无数,流水高山心自知。
2006-11-07 15:01



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-100861-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.608587 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved