C语言,1到1000所有3的倍数且含有2和5 10
4个回答
展开全部
#include "stdio.h"
int judge(int n) //判断整数n,各位上是否同时含有数字2和5,满足返回1,不满足返回0
{
int two_flag=0,five_flag=0;
while(n)
{
if(n%10==2)
two_flag=1;
if(n%10==5)
five_flag=1;
n=n/10;
}
if(two_flag==1 && five_flag==1)
return 1;
else
return 0;
}
int main()
{
int i;
for(i=3;i<1000;i+=3)
if(judge(i)==1)
printf("%d\t",i);
printf("\n");
}
展开全部
/*
30 60 90 120 150 180 210 240 270 300
330 360 390 420 450 480 510 540 570 600
630 660 690 720 750 780 810 840 870 900
930 960 990
Press any key to continue
*/
#include <stdio.h>
int main() {
int i,cnt = 0,n = 1000;
for(i = 10; i <= n; i += 10) {
if(i%2 == 0 && i%3 == 0 && i %5 == 0) {
if(cnt && cnt % 10 == 0) printf("\n");
printf("%4d",i);
++cnt;
}
}
if(cnt % 10) printf("\n");
return 0;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
int get_every_number(int a[], int x)
{
int i=0;
while(x!=0)
{
a[i++]=x%10;
x/=10;
}
return i;
}
int check(int a[], int n)
{
int i;
for(i=0; i<n; i++)
{
if(a[i]==2 || a[i]==5)
return 1;
}
return 0;
}
void main()
{
int i;
int a[10];
get_every_number(a, 123);
for(i=1; i<=1000; i++)
{
if(i%3==0)
{
if(check(a, get_every_number(a, i)))
printf("%d\n", i);
}
}
}
不想改了,我做的是含2或者5的,共楼主参考
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//#include "stdafx.h"//vc++6.0加上这一行.
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
void main(void){
int i,k;
char ax[5];
for(k=0,i=3;i<1000;i+=3)
if(strchr(itoa(i,ax,10),'2') && strchr(ax,'5'))
printf(++k%10 ? "%-5d" : "%-5d\n",i);
if(k%10) printf("\n");
}
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
void main(void){
int i,k;
char ax[5];
for(k=0,i=3;i<1000;i+=3)
if(strchr(itoa(i,ax,10),'2') && strchr(ax,'5'))
printf(++k%10 ? "%-5d" : "%-5d\n",i);
if(k%10) printf("\n");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询