我正在使用for循环
打印以下代码的模式EchoServerProtocol
代码如下,导致输出略有错误。
1
2 6
3 7 10
4 8 11 13
5 9 12 14 15
代码给了我这个。 这是我想要的输出错误
main(){
int i,j,k,n,num;
printf("\n Enter no of rows: ");
scanf("%d",&num);
for(i=1;i<=num;i++,k=num){
for(j=1,n=i;j<=i;j++,n+=k){
printf("%d ",n);
}
printf("\n");
}
}
答案 0 :(得分:0)
关键是如何在内循环中更新n
。在每次迭代过程中,您需要它不仅要考虑num
,还要考虑i
。我已将num
修改为5,并将赋值放在外部循环开头的k
,因为它始终是常量:
#include <stdio.h>
int main(void) {
int i, j, k, n, num;
num = 5;
for(i = 1, k = num; i <= num; i++){
for(j = 1, n = i; j <= i; n += k - j, j++){
printf("%d ", n);
}
printf("\n");
}
}
给出:
1
2 6
3 7 10
4 8 11 13
5 9 12 14 15