5-14 求整数段和

给定两个整数AAA和BBB,输出从AAA到BBB的所有整数以及这些数的和。

输入格式:

输入在一行中给出2个整数AAA和BBB,其中−100≤A≤B≤100,其间以空格分隔。

输出格式:

首先顺序输出从AAA到BBB的所有整数,每5个数字占一行,每个数字占5个字符宽度,向右对齐。最后在一行中按Sum = X的格式输出全部数字的和X。

输入样例:

-3 8

输出样例:

   -3   -2   -1    0    1
    2    3    4    5    6
    7    8
Sum = 30

解题思路:
主要是输出格式的控制。%md 代表输出输出的字符宽度(包括符号位),若不足 m,在左端补空格,若大于 m,原位输出。m 也可以是负值,相应地,不足 m 时,在右端补空格。

每 5 个一行用 %5 来控制。

解题代码:

#include<stdio.h>

int main ()
{
	int A, B;
	scanf("%d %d", &A, &B);
	
	int sum = 0, count = 0;
	while (A <= B) {
		sum += A;
		printf("%5d", A++);
		count++;
		if (count % 5 == 0 && A-1 < B) { //添加 A<B 防止数的总数恰为 5 的整数倍时多出的回车 
			printf("
");
		}
	} 
	printf("
");
	printf("Sum = %d
", sum);
	
	return 0;
}
原文地址:https://www.cnblogs.com/andywenzhi/p/5734353.html