输出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,和题意不符
求解我哪步算错了,应该怎么改正,谢谢,不要复制粘贴
输出100以内个位数为6且能被3整除的所有数的源代码如下:
#include<stdio.h>
int main()
{
int i;
for(i=1;i<100;i++)
{
if(i%10 == 6 && i%3 == 0)
printf(" %d ",i);
}
return 0;
}
扩展资料
1、#include <stdio.h>就是一条预处理命令, 它的作用是通知C语言编译系统在对C程序进行正式编译之前需做一些预处理工作。
2、printf()是格式输出函数,它的功能就是在屏幕上输出指定的信息return是函数的返回值,根据函数类型的不同,返回的值也是不同的。
3、main函数又叫主函数,main函数是c语言程序的入口,程序是从main函数开始执行的,一个c语言程序中只能有一个main函数。
#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();
}
}
}
}
本回答被网友采纳if语句最后面的分号去掉,不然的话这句判断就直接结束了, 不管条件是否满足,下面的printf是另一条语句了,会无条件执行。
另外printf最好加一个\n表示换行,改成
if(i%10==6&&i%3==0)为什么加上分号结果就会出问题呢
追答去掉分号,就是一条语句,if判断完了,根据判断的结果决定是否执行下面的printf语句。
如果带有分号,这是两条无关的语句,if判断完了,不做任何处理,这条语句就结束了。下一条printf语句,是另一条语句了,跟上面的if没有关系,所以不管上面的判断如何,printf总是会执行。
这样:
#include<stdio.h>这个分号的有无有什么区别
有分号和没有分号应该怎么分析
if语句在后面的语句没有使用大括号括起来的情况下,默认if后面的第一个语句为子句,而一个语句是以分号分隔的,所以加了分号后,if语句的子句就只有分号这个空语句作为子句了,而printf("%d",i);这一句则不是if语句的子句了。
if语句后面是没有分号的,你可以看看书上的标准写法,后面是没有分号的。
!嗯,懂了