簡體   English   中英

c中的數字圖案印刷

[英]Number pattern printing in c

我是編程新手。 因此,作為練習,我正在嘗試打印如下所示的數字模式。

0
10
210
3210
43210

我嘗試了下面的代碼。

 #include<stdio.h>
 void main()
 {
    int i ,j,n=5;
    for(i=0;i<=n;i++)
    {
        for(j=0;j>=i;j--)
        {
           printf("%d",i);
        }
        printf("\n");
     }
}

運行上面的代碼后得到的 output 是:-

10
10
10
10
10

我只是卡住了。 無法解決這個問題。 任何人都可以幫助我嗎?

有兩個循環。 第一個循環控制范圍為 [0,N) 的行號。 第二個循環控制每行的字符序列。 每行打印出 [Line_Number + 1] 個數字。 該序列的模式為 [Line_Number - Column_Number]。

示例代碼:

#include <stdio.h>
void main() {
  int i, j, n = 5;
  for (i = 0; i < n; i++) {
    for (j = 0; j < (i + 1); j++) {
      printf("%d", (i - j));
    }
    printf("\n");
  }
}

構建並運行:

gcc test.c
./a.out

output:

0
10
210
3210
43210

您對inner loop-j犯了一個簡單的錯誤。 確保您的外部循環i-loop指的是行數,並且您的打印為printf("%d",i); 定義你想要多少行。

#include<stdio.h> 
void main() 
{ 
    int i ,j,n=5; 
    for(i=0;i<n;i++) 
    {
        for(j=i;j>=0;j--) 
        {
            printf("%d",j);
        }
        printf("\n");
    }
}

那么 output 將是:

0
10
210
3210
43210
 #include<stdio.h>
 void main()
 { 
 int i ,j,n=5,t[n];
   for(i=0;i<n;i++)
     {
        t[i]=i;
        for(j=i;j>=0;j--)
           {
              printf("%d",t[j]);                  
           } 
        printf("\n");
     }

嘗試這個...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM