C语言编程问题:输出100以内个位数为6且能被3整除的所有数。 30

输出100以内个位数为6且能被3整除的所有数。我编的程序是这样的:#include<stdio.h>main(){inti;for(i=1;i<100;i++){if(i... 输出100以内个位数为6且能被3整除的所有数。
我编的程序是这样的:
#include<stdio.h>
main()
{int i;
for(i=1;i<100;i++)
{
if(i%10==6&&i%3==0);
printf("%d",i);
}
}
本来以为没有什么错,但是输出的结果是123....99,和题意不符
求解我哪步算错了,应该怎么改正,谢谢,不要复制粘贴
展开
 我来答
小夏聊生活
高能答主

2019-12-11 · 专注于分享生活知识,热爱生活
小夏聊生活
采纳数:447 获赞数:114612

向TA提问 私信TA
展开全部

输出100以内个位数为6且能被3整除的所有数的源代码如下:

#include&lt;stdio.h&gt;

int main()

{

int i;

for(i=1;i&lt;100;i++)

{

if(i%10 == 6 &amp;&amp; i%3 == 0)

printf(" %d ",i);

}

return 0;

}

扩展资料

1、#include <stdio.h>就是一条预处理命令, 它的作用是通知C语言编译系统在对C程序进行正式编译之前需做一些预处理工作。

2、printf()是格式输出函数,它的功能就是在屏幕上输出指定的信息return是函数的返回值,根据函数类型的不同,返回的值也是不同的。

3、main函数又叫主函数,main函数是c语言程序的入口,程序是从main函数开始执行的,一个c语言程序中只能有一个main函数。

小星星教育知识分享
高粉答主

2019-12-10 · 用教师的智慧点燃学生的智慧火花
小星星教育知识分享
采纳数:202 获赞数:67136

向TA提问 私信TA
展开全部

#include<stdio.h>

main()

{inti;

for(i=1;i<100;i++)

{

if(i%10==6&&i%3==0)

printf("%d\n",i);

}

}

扩展资料

用for循环输出1-1000内能被5整除的数字,且每行输出三个

public class Division {

public static void main(String[] args) {

for (int i = 1; i <=1000; i++) {

if (i%5==0) {

System.out.print(i+”\t”);

}

if (i%15==0) {

System.out.println();

}

}

}               

}

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jianxia2k
推荐于2017-05-21 · TA获得超过399个赞
知道小有建树答主
回答量:365
采纳率:82%
帮助的人:197万
展开全部
if(i%10==6&&i%3==0);
printf("%d",i);

if语句最后面的分号去掉,不然的话这句判断就直接结束了, 不管条件是否满足,下面的printf是另一条语句了,会无条件执行。

另外printf最好加一个\n表示换行,改成

if(i%10==6&&i%3==0)
    printf("%d\n",i);
追问
为什么加上分号结果就会出问题呢
追答
去掉分号,就是一条语句,if判断完了,根据判断的结果决定是否执行下面的printf语句。
如果带有分号,这是两条无关的语句,if判断完了,不做任何处理,这条语句就结束了。下一条printf语句,是另一条语句了,跟上面的if没有关系,所以不管上面的判断如何,printf总是会执行。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
萢萢i3
2015-04-08 · TA获得超过1.3万个赞
知道大有可为答主
回答量:1.7万
采纳率:71%
帮助的人:4652万
展开全部

这样:

#include<stdio.h>
main()
{
    int i;
    for(i=1;i<100;i++)
    {
if(i%10==6&&i%3==0)    /*去掉分号*/
printf("%d ",i);
    }
}
追问
这个分号的有无有什么区别
有分号和没有分号应该怎么分析
追答
if语句在后面的语句没有使用大括号括起来的情况下,默认if后面的第一个语句为子句,而一个语句是以分号分隔的,所以加了分号后,if语句的子句就只有分号这个空语句作为子句了,而printf("%d",i);这一句则不是if语句的子句了。

if语句后面是没有分号的,你可以看看书上的标准写法,后面是没有分号的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2015-04-08
展开全部
#include<stdio.h>
void main()
{int i;
for(i=1;i<100;i++)
{
if(i%10==6&&i%3==0)
{printf("%d ",i);}*****************if语句的条件一定要用{……}括起来!
}
}
追问
!嗯,懂了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式