问题 F: 例题5-6 矩阵输出

题目:

输出以下4*5的矩阵

1 2 3 4 5

2 4 6 8 10

3 6 9 12 15

4 8 12 16 20

要求使用循环实现,注意每行输出5个数字,每个数字占3个字符的宽度,右对齐。

思路:

利用两个循环来实现,外层循环用来输出行,内层循环用来输出列,关键在于如何找出每行数字的规律,以及要注意题目的要求(每个数字占3个字符的宽度)

提供两种解题方法:
方法1:

for(int i = 1; i < 6;i++)
{
for(int j = 1; j < 6;j++)
{
 	printf("%3d",i * j);//此时的i*j刚好满足题目的要求
}
cout << endl;
}

方法2:

int k = 0;
for(int i = 1; i < 6;i++)
{
	k  = i;
	for(int j = 1; j < 6;j++)
	{
		printf("%3d",k);
		k+=i;
	}
}

补充知识:

%md,m为指定的输出字段的宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出。(长整型%mld,八进制%mo,十六进制%mx)

对于字符同理有%mc

对于float型,可用%m.nf,输出数据共占m列,n位小数,如果数据长度小于m那么左边补空格
        %-m.nf,为左靠齐,右补空格

对于字符串,%ms,输出的字符串占m列,字符串长度小于m,左边补空格,如果超出则全部输出.
      %-ms,右补空格
      %m.ns,输出占m列,但只取字符串左端n个字符。这n个字符输出在m列的右边,然后左边补空格.
      %-m.ns,右补空格

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值