夜间福利网站,免费动漫av,一级做a爰片久久毛片免费陪,夜夜骑首页,黄色毛片视频,插插插操操操,综合av色

C語言怎樣輸出菱形

時(shí)間:2025-11-20 00:26:46 C語言

C語言怎樣輸出菱形

  C語言怎樣輸出菱形你知道嗎?上網(wǎng)搜索一下,但網(wǎng)上的方法都是分為上下部分用兩個(gè)嵌套for循環(huán)輸出。下面是小編為大家?guī)淼腃語言怎樣輸出菱形的知識(shí),歡迎閱讀。

  C語言怎樣輸出菱形

  適有同學(xué)問起一些C語言題目,本想上網(wǎng)搜索了事,但網(wǎng)上的方法都是分為上下部分用兩個(gè)嵌套for循環(huán)輸出。我想有沒有合起來輸出的呢,這樣符合簡潔又美觀的要求呢?答案是有的。

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

  行列 12345

  1 *

  2 ***

  3 *****

  4 ***

  5 *

  分析:

  當(dāng)行數(shù)等于總行數(shù)的一半時(shí),'*'是遞增的,遞增為2。

  當(dāng)行數(shù)大于總行數(shù)的一半時(shí),'*'是遞減的,遞增為2。

  設(shè)有一個(gè)行列為n的菱形,

  我們用變量i作為行數(shù),以0開始,i

  k作為n菱第i行要輸出的'*'個(gè)數(shù)。

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

  因?yàn)閗相對(duì)于m行對(duì)稱,所以:

  當(dāng)i>m時(shí),i每增加i-m時(shí)的k值就和第m-i行的k值相等,即第i-m行和第m-(i-m)相對(duì)稱。

  所以得出結(jié)果:

  當(dāng)i<=m時(shí),k=2i+1

  當(dāng)i>m時(shí),k=2(m-(i-m))+1,(m=(n-1)/2)。即k=2n-2i-1

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

  每行循環(huán)輸出空格,再循環(huán)輸出每行的'*',再輸出回車,結(jié)束一行。

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

  #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>

  }

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

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

  我們加一點(diǎn)東西進(jì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語言怎樣輸出菱形】相關(guān)文章:

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

C語言輸出菱形的方法11-18

C語言怎么輸出一個(gè)菱形10-16

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

C語言數(shù)據(jù)的輸入輸出復(fù)習(xí)11-08

C語言數(shù)據(jù)輸出及輕量進(jìn)階01-31

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

C語言的字符串輸出puts()函數(shù)12-03

關(guān)于c語言約瑟夫問題輸出序號(hào)算法12-13