C语言,每输出5个数换行

#include<stdio.h>#include<stdlib.h>intmain(){intn,i=0;for(n=100;n<=200;n++,i++){if(n%... #include<stdio.h>
#include<stdlib.h>
int main()
{
int n,i=0;
for(n=100;n<=200;n++,i++)
{
if(n%3!=0)continue;
printf("%4d",n);
if(i%4==0)
printf("\n");
}
system("pause");
return 0;
}

为什么它会这样对齐..求改正
展开
 我来答
迷你手工老张
高粉答主

2019-06-02 · 繁杂信息太多,你要学会辨别
知道小有建树答主
回答量:1061
采纳率:100%
帮助的人:28.5万
展开全部

if(i%4==0) 的判断有误,需要更改为如下代码:

#include<stdio.h>

#include<stdlib.h>

int main()

{

int n,i=1; 

for(n=100;n<=200;n++,i++)

{

if(n%3!=0)continue;

printf("%4d",n);

if(i%5==0)

printf("\n");

}

system("pause");

return 0;

}

扩展资料:

位域成员不能单独被取sizeof值。C99规定int、unsigned int和bool可以作为位域类型,但编译器几乎都对此作了扩展,允许其它类型的存在。位域作为嵌入式系统中非常常见的一种编程工具,优点在于压缩程序的存储空间。

其对齐规则大致为:

1、如果相邻位域字段的类型相同,且其位宽之和小于类型的sizeof大小,则后面的字段将紧邻前一个字段存储,直到不能容纳为止;

2、如果相邻位域字段的类型相同,但其位宽之和大于类型的sizeof大小,则后面的字段将从新的存储单元开始,其偏移量为其类型大小的整数倍;

3、如果相邻的位域字段的类型不同,则各编译器的具体实现有差异,VC6采取不压缩方式,Dev-C++和GCC采取压缩方式;

4、如果位域字段之间穿插着非位域字段,则不进行压缩;

5、整个结构体的总大小为最宽基本类型成员大小的整数倍,而位域则按照其最宽类型字节数对齐。



小夏聊生活
高能答主

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

向TA提问 私信TA
展开全部

加一个计数的变量,每次找到目标时计数加一,被5整除时换行。

源代码如下:

#include <stdio.h>

int main() {

int a, b, c;

int l, i;

int count = 0; // 计数的变量

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

{

a = i / 100;

b = i / 10 % 10;

c = i % 10;

l = a + b + c;

if (l % 7 == 0) {

printf("%d ", i);

count++;

// 就是这里

if (count % 5 == 0)

printf("\n");

}

}

return 0;

}

扩展资料

1、printf()函数在碰到”\n”时,并没有直接输出字符’\’与字符’n’,而是将它们看作一个换行标记,执行了换行操作,以使后面的输出打印在新的一行。

2、printf函数的返回值是返回所打印的字符的数目。如有输出错误,那么printf()会返回一个负数。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cjj796
推荐于2017-09-16 · TA获得超过8706个赞
知道大有可为答主
回答量:1.3万
采纳率:68%
帮助的人:3417万
展开全部

你好!是要这样的输出吗

    你对,if(i%4==0) 的判断有误,改成下面这样

#include<stdio.h>
#include<stdlib.h>
int main()
{
int n,i=1;                 // i 从 1 开始,i=0 的时候,第一次就满足换行了
for(n=100;n<=200;n++,i++)
{
if(n%3!=0)continue;
printf("%4d",n);
if(i%5==0)            // 取 5 的余数
   printf("\n");
}
system("pause");
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
BM百梦f72
2013-11-15 · TA获得超过464个赞
知道小有建树答主
回答量:123
采纳率:0%
帮助的人:65.4万
展开全部
当continue跳过时,i++会再执行一次
导致了第一二三次输出时i=0,1,3的情况;
用while的话就不会出现,
这是这两个循环使用时的唯一区别
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
菩提树下0754
2013-11-15 · 超过36用户采纳过TA的回答
知道答主
回答量:195
采纳率:0%
帮助的人:102万
展开全部
printf("%4d",n);每个数字4位
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式