<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. C語言

    C語言怎么輸出一個菱形

    時間:2025-04-21 00:52:16 C語言 我要投稿
    • 相關推薦

    C語言怎么輸出一個菱形

      大家可能沒了解過C語言,或者剛接觸C語言不是很熟的,C語言是可以輸出很多的圖形的。現在小編給你們收集一個C語言怎么輸出一個菱形的相關知識,不懂的可以來看看。

      C語言是計算機的高級語言,在IT行業被眾多的人們是使用,由于IT行業的熱門,使用以及學習C語言的人越來越多,掌握一些C語言基本的語言是非常重要的,只有基礎知識扎實了,才能在C語言上有更大的成果!

      C語言怎么輸出一個菱形 篇1

      源代碼為:

      #include

      void main()

      {

      int n=6;

      int i,a,b;

      //前4行.上半部分

      for( i=1;i<=n;i++)//控制行數

      {

      for( a=n-1;a>=i;a--)//打印空格

      {

      printf(" ");

      }

      for( b=1;b<=2*i-1;b++)//打印*

      {

      printf("*");

      }

      printf(" ");

      }

      //后3行,下半部分

      for( i=n-1;i>=1;i--)

      {

      for( a=i;a<=n-1;a++)

      {

      printf(" ");

      }

      for( b=1;b<=2*i-1;b++)

      {

      printf("*");

      }

      printf(" ");

      }

      }

      2、這是菱形上半部分的代碼:

      //菱形的上半部分

      for( i=1;i<=n;i++)//控制行數

      {

      for( a=n-1;a>=i;a--)//輸出空格

      {

      printf(" ");

      }

      for( b=1;b<=2*i-1;b++)//輸出*

      {

      printf("*");

      }

      printf(" ");

      }

      3、這是菱形下半部分的`代碼:

      //菱形 的下半部分

      for( i=n-1;i>=1;i--)

      {

      for( a=i;a<=n-1;a++)

      {

      printf(" ");

      }

      for( b=1;b<=2*i-1;b++)

      {

      printf("*");

      }

      printf(" ");

      }

      4、此程序中值得注意的地方

      這個程序的源代碼,主要是運用了for語句的循環嵌套。for語句的一般形式為:

      for(循環變量賦初值;循環條件;循環變量增值) {語句}

      當一或二條件知識一個分號代表:此條件一直為真,一直成立!

      5、存C語言的格式:

      程序文件有:源程序文件(后綴為 .c)、目標文件( 后綴為 .obj)、可執行文件(后綴為 .exe),當后綴名錯誤時,則程序不能執行。平常我們 寫的代碼就是源程序文件,所以保存時用 .c ,程序會自動 生成目標文件 .obj ,再到執行文件 .exe .然后執行得到結果。

      C語言怎么輸出一個菱形 篇2

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

      行列 12345

      1 *

      2 ***

      3 *****

      4 ***

      5 *

      分析:

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

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

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

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

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

      則i<=n的中值(用m表示,m=(n-1) 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;//定義四個變量:i是行,j每行*號前的空格數,k每行的*號數

      printf("please input odd n:");

      scanf("%d",&n); //輸入奇數n

      for (i=0;i

      {

      if(n>=2*i+1) //判斷k值

      k=2*i+1;

      else

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

      for(j=(n-k)/2;j>0;j--) //循環輸出空格

      printf(" ");

      for(;k>0;k--) //循環輸出*號

      printf("*");

      printf("n"); //輸出回車結束一行

      }

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

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

      我們加一點東西進去:

      #include

      int main()

      {

      int i,j,k,n=0; //這里給n賦初值,即使輸入非數值,n也可有確切的值。

      do{ //增加一個大循環,可以令n可以輸入多次以觀察不同的結果。

      printf("please input odd n, 0 to exit:");//當輸入0的時候,退出大循環,結束程序。

      scanf("%d",&n);

      if (!(n%2)) //增加對輸入偶數的判斷。

      {

      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語言如何輸出菱形10-16

    C語言怎樣輸出菱形08-02

    C語言輸出菱形的方法07-31

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

    C語言數據輸出及輕量進階10-13

    C語言數據的輸入輸出復習08-11

    C語言字符數組的幾種輸出方式05-21

    C語言的字符串輸出puts()函數06-23

    C語言字符串的輸入輸出07-03

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