<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. 如何更好地用c語言如何輸出菱形

    時間:2025-12-05 22:10:18 C語言

    如何更好地用c語言如何輸出菱形

      引導語;不少考生疑惑如何才能更好c語言如何輸出菱形,以下是百分網小編推薦給大家的c語言如何輸出菱形,歡迎閱讀!

      題目:輸出行列都相等的菱形,如5行5列:

      行列 12345

      1 *

      2 ***

      3 *****

      4 ***

      5 *

      分析:

      當行數等于總行數的一半時,'*'是遞增的,遞增為2。

      當行數大于總行數的一半時,'*'是遞減的,遞增為2。

      設有一個行列為n的菱形,

      我們用變量i作為行數,以0開始,i

      k作為n菱第i行要輸出的'*'個數。

      則i<=n的中值(用m表示,m=(n-1)/2)時,k遞增,i>m時,k遞減。

      因為k相對于m行對稱,所以:

      當i>m時,i每增加i-m時的k值就和第m-i行的k值相等,即第i-m行和第m-(i-m)相對稱。

      所以得出結果:

      當i<=m時,k=2i+1

      當i>m時,k=2(m-(i-m))+1,(m=(n-1)/2)。即k=2n-2i-1

      由于我們只需要輸出'*'左邊的空格即可,所以每行'*'左邊的空格的個數為:(n-每行的k)/2。

      每行循環輸出空格,再循環輸出每行的'*',再輸出回車,結束一行。

      這樣我們就可以開始編程了。

      #include

      int main()

      {

      int i,j,k,n;/pic/p>

      printf("please input odd n:");

      scanf("%d",&n); /pic/p>

      for (i=0;i

      {

      if(n>=2*i+1) /pic/p>

      k=2*i+1;

      else

      k=2*n-2*i-1;

      for(j=(n-k)/2;j>0;j--) /pic/p>

      printf(" ");

      for(;k>0;k--) /pic/p>

      printf("*");

      printf("n"); /pic/p>

      }

      本來呢題目就到止結束了,但上面的程序還不夠完美

      比如說,別人輸入n值為偶數怎么辦?輸入非數值呢?

      我們加一點東西進去:

      #include

      int main()

      {

      int i,j,k,n=0; /pic/p>

      do{ /pic/p>

      printf("please input odd n, 0 to exit:");/pic/p>

      scanf("%d",&n);

      if (!(n%2)) /pic/p>

      {

      printf("you input a even, please input again.n");

      continue;

      }

      for (i=0;i

      {

      if(n>=2*i+1)

      k=2*i+1;

      else

      k=2*n-2*i-1;

      j=(n-k)/2;

      for(;j>0;j--)

      printf(" ");

      for(;k>0;k--)

      printf("*");

      printf("n");

      }

      }while(n);

      return 0;

      }

    【如何更好地用c語言如何輸出菱形】相關文章:

    C語言如何輸出菱形01-27

    C語言輸出菱形的方法08-15

    C語言怎樣輸出菱形01-01

    C語言怎么輸出一個菱形10-16

    用C語言如何區分旅客的國籍12-08

    如何更好地拓展人脈07-03

    如何學習c語言11-01

    c語言如何控制硬件10-28

    C語言是如何調用硬件的07-04

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人