用c語言輸出的圖案
㈠ c語言輸出數字圖案
這個有助於幫助你理解計算機顯示字元的方法和原理。
首先要存儲每個數字字元的點陣信息,每個點用1位二進制數表示1表示有點0表示無點。
分析一下,你的每個數字每行12字元,即12點,共18行,可以用16位二進制數組存放
那麼我們就開設數組存儲unsigned short int num1[18];
拿字元1來說,每行的點陣轉化成16進制數據記錄下來:
000000000000 0x00
000000000110 0x06
000000011110 0x1e
000000011110 0x1e
000000000110 0x06
000000000110 0x06
000000000110 0x06
000000000110 0x06
000000000110 0x06
000000000110 0x06
000000000110 0x06
000000000110 0x06
000000000110 0x06
000000000110 0x06
000000000110 0x06
000000000110 0x06
000000000000 0x00
這樣存儲下來是:unsigned short int num1[18]={0,6,0x1e,0x1e,6,6,6,6,6,6,6,6,6,6,6,6,0};
程序在顯示這樣的字元時,需要逐行取這些點陣,逐位判斷是否是1,根據顯示要求看1代表字元0還是空格;多個數字一行需要同時先把所有數字的第1行顯示完後再去處理第2行,直到處理完18行為止。
㈡ 怎麼用C語言輸出如下圖形
#include<stdio.h>
void main()
{ int i,j,n=1;
for ( i=0;i<5;i++,printf("\n") ) //5行,每循環一次換行
for ( j=0;j<i+1;j++,n++ ) //每次循環分別輸出1,2,3,4,5個數據
printf("%d ",n); //每次輸出數據和一個空格,每輸出一個數據數據自身加1
}
㈢ 用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>
intmain(void)
{
inti;
for(i=0;i<5;++i)
{
printf("%*s ",i+5,"*****");
}
return0;
}
㈤ 用C語言輸出一個五角星圖案
我用VC6實現了。關鍵代碼如下:
1、獲得五個外頂點的坐標:
int m_xw[5]; //5個X外頂點坐標
int m_yw[5]; //5個Y外頂點坐標
void CMyTestView::getCoord()
{
int c = 360 / 5; //角度
int r = 150;
for (int i = 0; i < 5; i++)
{
m_xw[i] = (int) (cos(i * c * PI / 30 - PI / 2) * (r) + r);
m_yw[i] = (int) (sin(i * c * PI / 30 - PI / 2) * (r) + r);
}
}
2、畫線段:
在構造函數中調用求頂點坐標的函數求頂點坐標:
this->getCoord();
然後直接在繪圖函數中添加如下代碼:
void CMyTestView::OnDraw(CDC* pDC)
{
CMyTestDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
pDC->MoveTo(m_xw[4], m_yw[4]);
pDC->LineTo(m_xw[1], m_yw[1]);
pDC->LineTo(m_xw[3], m_yw[3]);
pDC->LineTo(m_xw[0], m_yw[0]);
pDC->LineTo(m_xw[2], m_yw[2]);
pDC->LineTo(m_xw[4], m_yw[4]);
}
//運行結果
完整的程序給你發到QQ郵箱了!
㈥ 用C語言編寫一個程序輸出菱形圖案
#include<stdio.h>
intmain(void)
{
inti,j,k,n;
printf("n=");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
for(j=1;j<=n+1-i;j++)
printf("");
for(k=1;k<=2*i-1;k++)
printf("%c",64+i);
printf(" ");
}
for(i=1;i<=n-1;i++)
{
for(j=1;j<=i+1;j++)
printf("");
for(k=1;k<=2*(n-i)-1;k++)
printf("%c",65+n-i-1);
printf(" ");
}
return0;
}
㈦ 如何用c語言輸出這樣圖形
#include<stdio.h>
#define N 5
void main()
{int i,j;
for(i=1;i<=N;i++)
{for(j=0;j<=N-i;j++)
{printf("%4c",'*');}
printf("\n");
}
}這個你可以根據需要更改N的值,從而可以得到不同層數的圖形。