c语言3倍数的个数
㈠ C语言求过程
答案选B,即输出 852。
分析:
根据语句【if(y%3==0)】,说明当y是 3的倍数时,就会执行【printf("%d",--y);】语句。
--y是先让y - 1,最后再输出y的值。
在循环中,y的值从 9开始,条件是y > 0,那么这些数中,是 3的倍数的整数有 9、6、3。因为最后是输出y - 1的值,所以输出的是“852”。
运算过程:
y = 9,y % 3 == 0为真,--y,此时y = 8,输出 8。
y--,此时 y = 7,y % 3 == 0为假。
y--,此时y = 6,y % 3 == 0为真,--y,此时y = 5,输出 5。
y--,此时 y = 4,y % 3 == 0为假。
y--,此时 y = 3,y % 3 == 0为真,--y,此时y = 2,输出 2。
y--,此时 y = 1,y % 3 == 0为假。
y--,此时y = 0,y > 0为假,退出循环。
测试结果
㈡ C语言 3和3的倍数怎么写
假设有整数n,判断n是否是3的倍数,可以用:
if(0==n%3)
{
//是3的倍数的情况
}
else
{
//不是3的倍数的情况
}
㈢ C语言算一个数是否3的倍数或这个数是否带3的问题
#include <stdio.h>
int main()
{
int x;
while(scanf("%d",&x)!=EOF)
{
if(x<1000||x>=10000)
printf("请重新输入\n");
else
{
if(x%3==0)
printf("正确\n");
else
{
int i,temp,k=0;
for(i=0;i<4;i++,x=x/10)
{
temp=x%10;
if(temp==3)
{
k=1;
printf("正确\n");
break;
}
}
if(k==0)
printf("错误\n");
}
}
}
return 0;
}
已测试通过。呵呵