當前位置:首頁 » 編程語言 » c語言輸出實心菱形
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言輸出實心菱形

發布時間: 2023-02-24 03:36:43

c語言輸出菱形

工具/材料

ubuntu+vim+gcc

  • 01

    首先,輸入預處理指令#include <stdio.h>與函數原型void print(int n)。
    其中,n表示行數。

  • 02

    然後,對輸入的n進行提前判斷,若小於0或為偶數,則結束列印。

  • 03

    接著對上半個菱形進行輸出(包括最長的行)。使用兩層循環進行輸出,分別控制行數與行內的位置。

  • 04

    接著對下半個菱形進行輸出(包括最長的行)。也使用兩層循環進行輸出,分別控制行數與行內的位置。

  • 05

    對n=5與n=7進行輸出測試,代碼如下。

  • 06

    編譯運行後的結果如下

  • 07

    以下是所有的代碼:
    #include <stdio.h>

    void print(int n)
    {
    //判斷n是否符合正奇數的要求
    if(n < 0 || n % 2 == 0)
    //不符合則直接退出
    return;
    //對上半個菱形輸出
    int i = 1,j = 1;
    //i控制行數
    for(i = 1; i <= (n + 1) / 2; i++)
    {
    //j控制每一行的位置
    //輸出空格
    for(j = 1; j <= (n+1)/2 - i; j++)
    printf(" ");
    //輸出*
    for(j = 1; j <= 2 * i - 1; j++)
    printf("*");
    //輸出換行
    printf(" ");
    }
    //輸出下一半
    //i控制行數
    for(i = 1; i <= n/2; i++)
    {
    //j控制每一行的位置
    //輸出空格
    for(j = 1; j <= i; j++)
    printf(" ");
    //輸出*
    for(j = 1; j <= n -2 * i; j++)
    printf("*");
    //輸出換行
    printf(" ");
    }
    }

    //測試函數,測試n=5和n=7
    int main()
    {
    printf("5 ");
    print(5);
    printf("7 ");
    print(7);
    return 0;
    }

⑵ c語言輸出菱形

java語言輸出菱形:

publicstaticvoidmain(String[]args){
introw=11;//設置列印的行數,11也就是菱形對角線的長。
for(inti=0;i<row;i++){
for(intj=0;j<row;j++){
//左上,右上,左下,右下四個角列印空格
//可以一個判斷語句寫出,四個判斷分別對應四個角的位置
if(i<row/2&&(j<row/2-i||j>row/2+i)||
i>row/2&&(j<i-row/2||j>row-i+row/2-1)){
//滿足條件列印空格
System.out.print("");
}else{
//不滿足條件列印*
System.out.print("*");
}
}
//一次循環結束,換行
System.out.println();
}
System.out.println("---------------------------------");

//下面列印花紋。很多菱形循環排列
//設置橫排重復次數15,豎排重復次數12。共15*12個菱形,每一個菱形是11的對角線長
intwCount=15;
inthCount=12;
intwRows=row*wCount;
inthRows=row*hCount;
for(inti=0;i<hRows;i++){
inttemp1=i;
i=i%row;
for(intj=0;j<wRows;j++){
inttemp2=j;
j=j%row;
if(i<row/2&&(j<row/2-i||j>row/2+i)||
i>row/2&&(j<i-row/2||j>=row+row/2-i)){
System.out.print("");
}else{
System.out.print("*");
}
j=temp2;
}
i=temp1;
System.out.println();
}

}

⑶ 用C語言編程輸出菱形 圖案

#include<stdio.h>
void main()
{
int i,j,k;
for(i=1;i<=4;i++) //先列印上邊的四行
{
for(j=1;j<=4-i;j++) //控制要列印的空格數量
printf(" ");
for(k=1;k<=2*i-1;k++) //控制要列印的星號數
printf("*");
printf(" ");
}
for(i=1;i<=3;i++)
{
for(j=1;j<=i;j++) //控制要列印的空格數
printf(" ");
for(k=1;k<=7-2*i;k++) //控制要列印的星號數
printf("*");
printf(" ");
}
}

(3)c語言輸出實心菱形擴展閱讀:

for循環

for循環結構是c語言中最具有特色的循環語句,使用最為靈活方便,它的一般形式為:

for(表達式1;表達式2;表達式3)循環體語句 。(其中;不能省略)

表達式

表達式1為初值表達式,用於在循環開始前為循環變數賦初值。

表達式2是循環控制邏輯表達式,它控制循環執行的條件,決定循環的次數。

表達式3為循環控制變數修改表達式,它使for循環趨向結束。

循環體語句是在循環控制條件成立的情況下被反復執行的語句。

但是在整個for循環過程中,表達式1隻計算一次,表達式2和表達式3則可能計算多次,也可能一次也不計算。循環體可能多次執行,也可能一次都不執行。

先執行表達式2,然後執行循環結構,最後表達式3,一直這樣循環下去。

for循環語句是c語言種功能最為強大的語句,甚至在一定程度上可以代替其他的循環語句。

do

do循環結構,do 1 while⑵;的執行順序是1->2->1...循環,2為循環條件。

while

while循環結構,while(1) 2; 的執行順序是1->2->1...循環,1為循環條件

以上循環語句,當循環條件表達式為真則繼續循環,為假則跳出循環。

⑷ c語言列印字元菱形

#include<stdio.h>
#include<math.h>
intmain(void)
{
intn,i,j,cnt;
while(scanf("%d",&n)!=EOF)
{
cnt=0;
for(i=-n;i<n+1;++i)
{
for(j=-n;j<n+1;++j)
{
putchar(abs(j)<=n-abs(i)?'A'+cnt++:'');
}
putchar(' ');
}
}
return0;
}

⑸ 用c語言中的for循環輸出菱形

#include <stdio.h>
int main()
{
int A=3;
scanf("%d",&A);

int i,j,x,a,b,c,d,e,f,g;
for(i=1;i<=A+1;i++)
{
for(x=A;x>=i;x--)
{
printf(" ");
}
for(a=1;a<=i;a++)
{
printf("*");
}
for(b=0;b<=i-2;b++)
{
printf("*");
}
for(c=A;c>=i;c--)
{
printf(" ");
}
printf("\n");
}
for(j=1;j<=A;j++)

for(d=1;d<=j;d++)
{
printf(" ");
}
for(e=A;e>=j;e--)
{
printf("*");
}
for(f=A-1;f>=j;f--)
{
printf("*");
}
for(g=0;g<=j-1;g++)
{
printf(" ");
}
printf("\n");
}
return 0;
}

要打出圖片題目中所示菱形,只需run下程序,輸入3即可(即input A=3)。代碼中的那個A可以理解為菱形的橫對角線的*的數量減1後的一半。以上代碼適合初學者,因為我也是個初學者,對於C語言高手來說,我這個復雜了,我的思路是四個小三角形拼出一個菱形的。。。你run下看可不可以?然後由於這個答案輸出框的條件限制,輸出的格式,如空格換行等那些會沒顯示到