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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言,每输出5个数换行相关的知识,希望对你有一定的参考价值。

#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;


为什么它会这样对齐..求改正

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、整个结构体的总大小为最宽基本类型成员大小的整数倍,而位域则按照其最宽类型字节数对齐。



参考技术A

加一个计数的变量,每次找到目标时计数加一,被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()会返回一个负数。

参考技术B

你好!是要这样的输出吗

    你对,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;

本回答被提问者采纳
参考技术C 当continue跳过时,i++会再执行一次
导致了第一二三次输出时i=0,1,3的情况;
用while的话就不会出现,
这是这两个循环使用时的唯一区别
参考技术D printf("%4d",n);每个数字4位

假设输出25个数字,每隔5个数换行,C语言中如何实现?

假设输出25个数字,每隔5个数换行,C语言中如何实现?
很好,按照你的例子修改后得出:
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25 现在,发现了新的问题,可以看到就是1到10和下面的数字没有对齐,这个如何解决?
另外,如何在保持“正方形”排列的前提下,让1-25的数字随机排列,又该如何处理?

不过我认为不用for循环最好,printf("i=%d,ch=%c\n",i,ch),把i
ch,换成五个循环输出数\n自动换行。
用for的话下面你看行不行,我没试过
for(j=25,j<1,j--)

for(i=5,i<1,i--)

(你的输出循环函数)

/t
参考技术A int i,j,k;
for(i=0;i<5;i++)

for(j=0;j<5:j++)

if(a[i][j]<10)
printf("%d ",a[i][j]);//打印你的小于10数字
else if(a[i][j]<100)
printf("%d ",a[i][j]);//打印你的小于100数字
else if(a[i][j]<1000)
printf("%d ",a[i][j]);//打印你的小于1000数字

printf("\n");//打印换行


/*请不要copy我的回答,爱跑de鞋子你觉得copy别人的有意思吗?*/
参考技术B 用一个计数器变量n=0;
每输出一个数字n++
用条语句判定输出的字数是否是5的倍数就可以了
if(n%5 == 0)

printf("\n");

补充一个示例程序:
#include<stdio.h>
int main()

int n=0,i;
for(i=0;i<25;i++)

if(n%5 == 0)
printf("\n");
printf("%d\t",i);/*在这里加个'\t'制表符,让他们有足够的空间就对齐了*/
n++;

return 0;

*******************************************
如果要是生成25个随机的数输出很容易能够实现,
但是要让生成好的25个书随机排列就比较麻烦了,
*******************************************
若还有不明白请继续补充提问,若已经弄懂请及时处理提问。
*******************************************本回答被提问者采纳
参考技术C int i,j;
for(i=0;i<5;i++)

for(j=0;j<5:j++)

printf("");//打印你的数字

printf("\n");//打印换行

以上是关于C语言,每输出5个数换行的主要内容,如果未能解决你的问题,请参考以下文章

c语言中 将数组列换行 行换列

C语言怎么编写输出6个数再换行输出数字的命令?

c语言设计 输出1-1000以内,十位数是5的所有整数,每隔5个换一行?

这个C语言小程序在每输入三个数后会不会自动换行,我感觉没问题,为啥运行时不自动换行

怎么用C语言中for循环输出数列:1,1,2,3,5,8..的前n个数

c语言中怎样让一个有10个元素的数组输出5个元素后换行后再输出另外五个函数