解题思路:


每一行头两个数的差为i+2,i为行数(从0开始),然后差值逐渐+1;每行头一个数等于前一行头一个数+i;


注意事项:


每行末尾不要有多于空格


参考代码:

#include<stdio.h>
#include<string.h>
int main()
{
	int N,i,j,first,sp,num; //first标志每行第一个数字,sp表示每列的间隔
	scanf("%d",&N);
	first=1;  
	for(i=0;i<N;i++)
	{
		sp=i+2;
		first+=i;
		num=first;
		for(j=0;j<N-1-i;j++) //注意输出每行倒数第二个就好,因为题目说每行末尾不要有多于空格
		{
			printf("%d ",num);
			num+=sp;
			sp++;
		}
		printf("%d\n",num);
	}
	return 0;
}


 

0.0分

0 人评分

  评论区

  • «
  • »