A. 簡單的c語言編程
#include <stdio.h>
#include <string.h>
void main()
{
char a1[19], a2[19];
char b1[13], b2[13];
char c1[9], c2[9];
a1[18] = a2[18] = '\0';
c1[8] = c2[8] = '\0';
printf("input the first id:\n");
scanf("%s", a1);
printf("input the second id:\n");
scanf("%s", a2);
strcpy(b1, &a1[6]);
printf("%s\n", b1);
strcpy(b2, &a2[6]);
strncpy(c1, b1, 8);
strncpy(c2, b2, 8);
printf("first :%s\n", c1);
printf("second:%s\n", c2);
if(strcmp(c1, c2) == 0)
printf("age: the first = the second\n");
else if(strcmp(c1, c2) > 0)
printf("age: the first < the second\n");
else
printf("age: the first > the second\n");
}
B. 簡單c語言程序
1、★編寫程序,輸入兩個整數:1500和350,求出它們的商和余數並輸出。
main()
{int
a;
int
b;
scanf("%d%d",a,b)
printf("商:%d\n余數:%d",a/b,a%b);
}
2、★編寫程序,讀入三個整數給a,b,c,然後交換它們中的數,把a中原來的值給b,b中原來的值給c,
c中原來的值給a,且輸出改變後的a,b,c的值
main()
{int
a;
int
b;
int
c;
int
tmp;
scanf("%d%d%d",a,b,c)
printf("a:%d
b:%d
c:%d",a,b,c);
tmp=c;
c=b;
b=a;
a=c;
printf("a:%d
b:%d
c:%d",a,b,c);
}
3、★輸入兩個整型變數a,b的值,輸出a+b,a-b,a*b,a/b,(float)a/b,a%b的結果,要求連同算式一起輸出,每個算式佔一行。
main()
{int
a;
int
b;
scanf("%d%d",a,b)
printf("a+b=%d\na-b=%d\na*b=%d\na/b=%d\n(float)a/b=%f\na%b=%d",a+b,a-b,a*b,a/b,(float)a/b,a%b);
}
4、★輸入一個非負數,計算以這個數為半徑的圓周長和面積。
main()
{float
a;
scanf("%f",a);
printf("周長=%f\n面積=%f",2*a*3.14,3.14*a*a);
}
5、★輸入任意一個三位數,將其各位數字反序輸出(例如輸入123,輸出321).
main()
{int
a;
int
b;
scanf("%d",a);
printf("%d",a%10);
a=a%100
printf("%d",a%10);
a=a%10
printf("%d",a%10);
}
6、★輸入任意大小的三個整數,判斷其中是否有兩個奇數一個偶數。若是,則輸出「YES」,不是則輸出「NOT」
(要求用條件表達式進行判斷,不使用if語句)
main()
{int
a;
int
b;
int
c;
int
n=0;
scanf("%d%d%d",a,b,c);
a%2==1?n++:a;
b%2==1?n++:b;
c%2==1?n++:c;
if
n==2
printf("YES");
else
printf("NOT");
}
7、★求前驅字元和後繼字元。輸入一個字元,找出它的前驅字元和後繼字元,並按ASCII碼值,按從大到小的順序輸出這三個字元及其對應的ASCII碼值。
main()
{char
a;
scanf("%c",a);
printf("%c%c%c"a-1,a,a+1);
}
累啊
C. 單片機c語言編程100個實例
51單片機C語言編程實例 基礎知識:51單片機編程基礎 單片機的外部結構: 1. DIP40雙列直插; 2. P0,P1,P2,P3四個8位準雙向I/O引腳;(作為I/O輸入時,要先輸出高電平) 3. 電源VCC(PIN40)和地線GND(PIN20); 4. 高電平復位RESET(PIN9);(10uF電容接VCC與RESET,即可實現上電復位) 5. 內置振盪電路,外部只要接晶體至X1(PIN18)和X0(PIN19);(頻率為主頻的12倍) 6. 程序配置EA(PIN31)接高電平VCC;(運行單片機內部ROM中的程序) 7. P3支持第二功能:RXD、TXD、INT0、INT1、T0、T1 單片機內部I/O部件:(所為學習單片機,實際上就是編程式控制制以下I/O部件,完成指定任務) 1. 四個8位通用I/O埠,對應引腳P0、P1、P2和P3; 2. 兩個16位定時計數器;(TMOD,TCON,TL0,TH0,TL1,TH1) 3. 一個串列通信介面;(SCON,SBUF) 4. 一個中斷控制器;(IE,IP) 針對AT89C52單片機,頭文件AT89x52.h給出了SFR特殊功能寄存器所有埠的定義。 C語言編程基礎: 1. 十六進製表示位元組0x5a:二進制為01011010B;0x6E為01101110。 2. 如果將一個16位二進數賦給一個8位的位元組變數,則自動截斷為低8位,而丟掉高8位。 3. ++var表示對變數var先增一;var—表示對變數後減一。 4. x |= 0x0f;表示為 x = x | 0x0f; 5. TMOD = ( TMOD & 0xf0 ) | 0x05;表示給變數TMOD的低四位賦值0x5,而不改變TMOD的高四位。 6. While( 1 ); 表示無限執行該語句,即死循環。語句後的分號表示空循環體,也就是{;} 在某引腳輸出高電平的編程方法:(比如P1.3(PIN4)引腳) 代碼 1. #include <AT89x52.h> //該頭文檔中有單片機內部資源的符號化定義,其中包含P1.3 2. void main( void ) //void 表示沒有輸入參數,也沒有函數返值,這入單片機運行的復位入口 3. { 4. P1_3 = 1; //給P1_3賦值1,引腳P1.3就能輸出高電平VCC 5. While( 1 ); //死循環,相當 LOOP: goto LOOP; 6. } 注意:P0的每個引腳要輸出高電平時,必須外接上拉電阻(如4K7)至VCC電源。 在某引腳輸出低電平的編程方法:(比如P2.7引腳) 代碼 1. #include <AT89x52.h> //該頭文檔中有單片機內部資源的符號化定義,其中包含P2.7 2. void main( void ) //void 表示沒有輸入參數,也沒有函數返值,這入單片機運行的復位入口 3. { 4. P2_7 = 0; //給P2_7賦值0,引腳P2.7就能輸出低電平GND 5. While( 1 ); //死循環,相當 LOOP: goto LOOP; 6. } 在某引腳輸出方波編程方法:(比如P3.1引腳) 代碼 1. #include <AT89x52.h> //該頭文檔中有單片機內部資源的符號化定義,其中包含P3.1 2. void main( void ) //void 表示沒有輸入參數,也沒有函數返值,這入單片機運行的復位入口 3. { 4. While( 1 ) //非零表示真,如果為真則執行下面循環體的語句 5. { 6. P3_1 = 1; //給P3_1賦值1,引腳P3.1就能輸出高電平VCC 7. P3_1 = 0; //給P3_1賦值0,引腳P3.1就能輸出低電平GND 8. } //由於一直為真,所以不斷輸出高、低、高、低……,從而形成方波 9. } 將某引腳的輸入電平取反後,從另一個引腳輸出:( 比如 P0.4 = NOT( P1.1) ) 代碼 1. #include <AT89x52.h> //該頭文檔中有單片機內部資源的符號化定義,其中包含P0.4和P1.1 2. void main( void ) //void 表示沒有輸入參數,也沒有函數返值,這入單片機運行的復位入口 3. { 4. P1_1 = 1; //初始化。P1.1作為輸入,必須輸出高電平 5. While( 1 ) //非零表示真,如果為真則執行下面循環體的語句 6. { 7. if( P1_1 == 1 ) //讀取P1.1,就是認為P1.1為輸入,如果P1.1輸入高電平VCC 8. { P0_4 = 0; } //給P0_4賦值0,引腳P0.4就能輸出低電平GND 2 51單片機C語言編程實例 9. else //否則P1.1輸入為低電平GND 10. //{ P0_4 = 0; } //給P0_4賦值0,引腳P0.4就能輸出低電平GND 11. { P0_4 = 1; } //給P0_4賦值1,引腳P0.4就能輸出高電平VCC 12. } //由於一直為真,所以不斷根據P1.1的輸入情況,改變P0.4的輸出電平 13. } 將某埠8個引腳輸入電平,低四位取反後,從另一個埠8個引腳輸出:( 比如 P2 = NOT( P3 ) ) 代碼 1. #include <AT89x52.h> //該頭文檔中有單片機內部資源的符號化定義,其中包含P2和P3 2. void main( void ) //void 表示沒有輸入參數,也沒有函數返值,這入單片機運行的復位入口 3. { 4. P3 = 0xff; //初始化。P3作為輸入,必須輸出高電平,同時給P3口的8個引腳輸出高電平 5. While( 1 ) //非零表示真,如果為真則執行下面循環體的語句 6. { //取反的方法是異或1,而不取反的方法則是異或0 7. P2 = P3^0x0f //讀取P3,就是認為P3為輸入,低四位異或者1,即取反,然後輸出 8. } //由於一直為真,所以不斷將P3取反輸出到P2 9. } 注意:一個位元組的8位D7、D6至D0,分別輸出到P3.7、P3.6至P3.0,比如P3=0x0f,則P3.7、P3.6、P3.5、P3.4四個引腳都輸出低電平,而P3.3、P3.2、P3.1、P3.0四個引腳都輸出高電平。同樣,輸入一個埠P2,即是將P2.7、P2.6至P2.0,讀入到一個位元組的8位D7、D6至D0。 第一節:單數碼管按鍵顯示 單片機最小系統的硬體原理接線圖: 1. 接電源:VCC(PIN40)、GND(PIN20)。加接退耦電容0.1uF 2. 接晶體:X1(PIN18)、X2(PIN19)。注意標出晶體頻率(選用12MHz),還有輔助電容30pF 3. 接復位:RES(PIN9)。接上電復位電路,以及手動復位電路,分析復位工作原理 4. 接配置:EA(PIN31)。說明原因。 發光二極的控制:單片機I/O輸出 將一發光二極體LED的正極(陽極)接P1.1,LED的負極(陰極)接地GND。只要P1.1輸出高電平VCC,LED就正向導通(導通時LED上的壓降大於1V),有電流流過LED,至發LED發亮。實際上由於P1.1高電平輸出電阻為10K,起到輸出限流的作用,所以流過LED的電流小於(5V-1V)/10K = 0.4mA。只要P1.1輸出低電平GND,實際小於0.3V,LED就不能導通,結果LED不亮。 開關雙鍵的輸入:輸入先輸出高 一個按鍵KEY_ON接在P1.6與GND之間,另一個按鍵KEY_OFF接P1.7與GND之間,按KEY_ON後LED亮,按KEY_OFF後LED滅。同時按下LED半亮,LED保持後松開鍵的狀態,即ON亮OFF滅。 代碼 1. #include <at89x52.h> 2. #define LED P1^1 //用符號LED代替P1_1 3. #define KEY_ON P1^6 //用符號KEY_ON代替P1_6 4. #define KEY_OFF P1^7 //用符號KEY_OFF代替P1_7 5. void main( void ) //單片機復位後的執行入口,void表示空,無輸入參數,無返回值 6. { 7. KEY_ON = 1; //作為輸入,首先輸出高,接下KEY_ON,P1.6則接地為0,否則輸入為1 8. KEY_OFF = 1; //作為輸入,首先輸出高,接下KEY_OFF,P1.7則接地為0,否則輸入為1 9. While( 1 ) //永遠為真,所以永遠循環執行如下括弧內所有語句 10. { 11. if( KEY_ON==0 ) LED=1; //是KEY_ON接下,所示P1.1輸出高,LED亮 12. if( KEY_OFF==0 ) LED=0; //是KEY_OFF接下,所示P1.1輸出低,LED滅 13. } //松開鍵後,都不給LED賦值,所以LED保持最後按鍵狀態。 14. //同時按下時,LED不斷亮滅,各佔一半時間,交替頻率很快,由於人眼慣性,看上去為半亮態 15. } 數碼管的接法和驅動原理 一支七段數碼管實際由8個發光二極體構成,其中7個組形構成數字8的七段筆畫,所以稱為七段數碼管,而餘下的1個發光二極體作為小數點。作為習慣,分別給8個發光二極體標上記號:a,b,c,d,e,f,g,h。對應8的頂上一畫,按順時針方向排,中間一畫為g,小數點為h。 我們通常又將各二極與一個位元組的8位對應,a(D0),b(D1),c(D2),d(D3),e(D4),f(D5),g(D6),h(D7),相應8個發光二極體正好與單片機一個埠Pn的8個引腳連接,這樣單片機就可以通過引腳輸出高低電平控制8個發光二極的亮與滅,從而顯示各種數字和符號;對應位元組,引腳接法為:a(Pn.0),b(Pn.1),c(Pn.2),d(Pn.3),e(Pn.4),f(Pn.5),g(Pn.6),h(Pn.7)。 如果將8個發光二極體的負極(陰極)內接在一起,作為數碼管的一個引腳,這種數碼管則被稱為共陰數碼管,共同的引腳則稱為共陰極,8個正極則為段極。否則,如果是將正極(陽極)內接在一起引出的,則稱為共陽數碼管,共同的引腳則稱為共陽極,8個負極則為段極。 以單支共陰數碼管為例,可將段極接到某埠Pn,共陰極接GND,則可編寫出對應十六進制碼的七段碼表位元組數據
D. 最簡單的C語言代碼
最簡單的C語言代就是輸出「helloWord」,通常是作為初學編程語言時的第一個程序代碼。具體代碼如下:
#include <stdio.h>
int main(){
printf("Hello, World! ");
return 0;
}
(4)c語言簡單編程實例擴展閱讀:
1、程序的第一行#include <stdio.h>是預處理器指令,告訴 C 編譯器在實際編譯之前要包含 stdio.h 文件。
2、下一行intmain()是主函數,程序從這里開始執行。
3、下一行printf(...)是C中另一個可用的函數,會在屏幕上顯示消息"Hello,World!"。
4、下一行return0;終止main()函數,並返回值0。
E. 用C語言編寫一個簡單程序,有哪些步驟,可以舉一個例子詳細講解下嗎
//以Helloworld示例
//先使用編輯工具如windows的記事本或vc++環境,或linux的vim編輯器創建一個hello.c文件
//打開文件後,如下 步驟寫程序
#include <stdio.h>//首先要引入c語言的標准輸入輸出庫文件,因為這個文件里有已經定義好的可以使用的函數
//接下來需要寫一個main函數,這也是c語言程序里必不可少的一個函數,叫主函數,他是整個程序的入口函數,程序所有的功能實現都要在這個函數中體現。但是這個函數有且僅有一個
int main()
{
//這是main函數的函數體,要實現什麼功能,就把實現功能的語句寫到這裡面
//比如我要實現列印HelloWorld字元,那麼我就調用printf()標准輸出語句
printf("Hello World!\n");//這個語句表示原樣輸出引號內的字元,『\n』表示換行
return 0;//最後,因為main函數有一個int的返回類型限定,那麼我們使用return語句返回一個int類型的值 0.
}
//這樣就結束了。一個簡單的但又完整的C程序就有了,
//下一步就是使用編譯器編譯成目標的可執行文件:
//如果是windows下的vc++,那麼需要分別點擊編譯,鏈接兩個按鈕生成hello.exe可執行文件
//如果是linux下直接在shell中使用gcc hello.c就可以編譯成可執行文件a.out
//最後就是運行了,windows下直接點擊vc++的運行或雙擊hello.exe可以出現dos窗口運行,並顯示結果,linux下使用「./a.out」可以直接運行,運行結果會顯示在shell中。
//這就是整個完整的流程,包括每一步。如果幫助到你,請你採納為答案。謝謝。
F. C語言簡單例子
C語言中,一般會用到函數。系統默認從主函數開始運行,即main()函數。一般結構為:
void main(void)
{
....
}
一般函數是帶有參數的,即後面括弧中需要一個或n個變數。中間用逗號隔開。例如
void add(int a, int b)
{
...
}
其中a,b為整形的參數,在大部分系統中int 代表16位的數。
有的函數還有返回值:像上面的一個加法函數,可以寫成:
int add(int a,int b)
{
return (a+b); //retuen為返回值
}
當我們要調用該函數時,只需要這要寫:
void main(void)
{
int sum = 0;
sum = add(x1,x2); //x1,x2為兩個常數
}
G. c語言程序設計實例
// 電話本Dlg.cpp : 實現文件
//
#include stdafx.h
#include 電話本.h
#include 電話本Dlg.h
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// C電話本Dlg 對話框
C電話本Dlg::C電話本Dlg(CWnd* pParent /*=NULL*/)
: CDialog(C電話本Dlg::IDD, pParent)
{
m_hIcon = AfxGetApp()-LoadIcon(IDR_MAINFRAME);
}
void C電話本Dlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(C電話本Dlg, CDialog)
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
//}}AFX_MSG_MAP
ON_EN_CHANGE(IDC_EDIT1, C電話本Dlg::OnName)
ON_EN_CHANGE(IDC_EDIT2, C電話本Dlg::OnPhoto)
ON_EN_CHANGE(IDC_EDIT3, C電話本Dlg::OnAddress)
ON_EN_CHANGE(IDC_EDIT4, C電話本Dlg::OnShow)
ON_BN_CLICKED(IDC_BUTTON1, C電話本Dlg::OnFill)
ON_BN_CLICKED(IDC_BUTTON2, C電話本Dlg::OnInsert)
ON_BN_CLICKED(IDC_BUTTON3, C電話本Dlg::OnFind)
ON_BN_CLICKED(IDC_BUTTON4, C電話本Dlg::OnDelete)
ON_BN_CLICKED(IDC_BUTTON5, C電話本Dlg::OnEdit)
ON_BN_CLICKED(IDC_BUTTON7, C電話本Dlg::OnSave)
END_MESSAGE_MAP()
// C電話本Dlg 消息處理程序
BOOL C電話本Dlg::OnInitDialog()
{
CDialog::OnInitDialog();
// 設置此對話框的圖標。當應用程序主窗口不是對話框時,框架將自動
// 執行此操作
SetIcon(m_hIcon, TRUE); // 設置大圖標
SetIcon(m_hIcon, FALSE); // 設置小圖標
// TODO: 在此添加額外的初始化代碼
ifstream InFile(Wab.fsd,ios::in);
listWabList::iterator ItWab;
char Tmp1[8],Tmp2[16],Tmp3[32];
Wab.clear();
while(InFile Tmp1 Tmp2 Tmp3)
{
OutWab.Name=Tmp1;
OutWab.Photo=Tmp2;
OutWab.Address=Tmp3;
Wab.push_front(OutWab);
}
C電話本Dlg::OnFill();
return TRUE; // 除非將焦點設置到控制項,否則返回 TRUE
}
// 如果向對話框添加最小化按鈕,則需要下面的代碼
// 來繪制該圖標。對於使用文檔/視圖模型的 MFC 應用程序,
// 這將由框架自動完成。
void C電話本Dlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // 用於繪制的設備上下文
SendMessage(WM_ICONERASEBKGND, reinterpret_castWPARAM(dc.GetSafeHdc()), 0);
// 使圖標在工作矩形中居中
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(rect);
int x = (rect.Width() - cxIcon 1) / 2;
int y = (rect.Height() - cyIcon 1) / 2;
// 繪制圖標
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
}
//當用戶拖動最小化窗口時系統調用此函數取得游標顯示。
//
HCURSOR C電話本Dlg::OnQueryDragIcon()
{
return static_castHCURSOR(m_hIcon);
}
void C電話本Dlg::OnName()
{
CEdit *pMaxLen=(CEdit*)GetDlgItem(IDC_EDIT1);
pMaxLen-SetLimitText(6);
GetDlgItemText(IDC_EDIT1,InWab.Name);
}
void C電話本Dlg::OnPhoto()
{
CEdit *pMaxLen=(CEdit*)GetDlgItem(IDC_EDIT2);
pMaxLen-SetLimitText(11);
GetDlgItemText(IDC_EDIT2,InWab.Photo);
}
void C電話本Dlg::OnAddress()
{
CEdit *pMaxLen=(CEdit*)GetDlgItem(IDC_EDIT3);
pMaxLen-SetLimitText(30);
GetDlgItemText(IDC_EDIT3,InWab.Address);
}
void C電話本Dlg::OnShow()
{
// TODO: 如果該控制項是 RICHEDIT 控制項,則它將不會
// 發送該通知,除非重寫 CDialog::OnInitDialog()
// 函數並調用 CRichEditCtrl().SetEventMask(),
// 同時將 ENM_CHANGE 標志「或」運算到掩碼中。
// TODO: 在此添加控制項通知處理程序代碼
}
void C電話本Dlg::OnFill()
{
CString OutAll,OutTemp,Space,Enter;
Space=_T( );
Enter=_T(\r\n);
listWabList::iterator ItWab;
for(ItWab=Wab.begin();ItWab!=Wab.end();ItWab )
{
OutWab=*ItWab;
OutTemp=OutWab.Name Space OutWab.Photo Space OutWab.Address;
OutAll=OutAll OutTemp Enter;
}
SetDlgItemText(IDC_EDIT4,OutAll);
}
void C電話本Dlg::OnInsert()
{
Wab.push_front(InWab);
C電話本Dlg::OnFill();
}
void C電話本Dlg::OnFind()
{
CString OutAll,OutTemp,Space,Enter;
Space=_T( );
Enter=_T(\r\n);
listWabList::iterator ItWab;
for(ItWab=Wab.begin();ItWab!=Wab.end();ItWab )
{
if(ItWab-Name==InWab.Name)
{
OutTemp=ItWab-Name Space ItWab-Photo Space ItWab-Address;
OutAll=OutAll OutTemp Enter;
}
}
SetDlgItemText(IDC_EDIT4,OutAll);
}
void C電話本Dlg::OnDelete()
{
CString OutAll,OutTemp,Space,Enter;
Space=_T( );
Enter=_T(\r\n);
listWabList::iterator ItWab;
for(ItWab=Wab.begin();ItWab!=Wab.end();ItWab )
{
if(ItWab-Name==InWab.Name)
{
OutTemp=ItWab-Name Space ItWab-Photo Space ItWab-Address;
OutAll=OutAll OutTemp Enter;
break;
}
}
SetDlgItemText(IDC_EDIT4,OutAll);
if(ItWab!=Wab.end()) Wab.erase(ItWab);
}
void C電話本Dlg::OnEdit()
{
CString OutAll,OutTemp,Space,Enter;
Space=_T( );
Enter=_T(\r\n);
listWabList::iterator ItWab;
for(ItWab=Wab.begin();ItWab!=Wab.end();ItWab )
{
if(ItWab-Name==InWab.Name)
{
OutTemp=ItWab-Name Space ItWab-Photo Space ItWab-Address;
OutAll=OutAll OutTemp Enter;
break;
}
}
SetDlgItemText(IDC_EDIT4,OutAll);
if(ItWab!=Wab.end())
{
Wab.erase(ItWab);
Wab.push_front(InWab);
}
}
void C電話本Dlg::OnSave()
{
CString Tmp1,Tmp2,Tmp3;
ofstream OutFile(Wab.fsd,ios::out);
listWabList::iterator ItWab;
for(ItWab=Wab.begin();ItWab!=Wab.end();ItWab )
{
Tmp1=ItWab-Name;
Tmp2=ItWab-Photo;
Tmp3=ItWab-Address;
OutFile Tmp1 ' ' Tmp2 ' ' Tmp3 endl;
}
}
只是個用C語言編寫的電話本程序 很有實用意義
H. c語言簡單編程
1.輸入2個正整數m和n,求其最大公約數和最小公倍數
#include<stdio.h>
#include<math.h>
int main()
{
int m,n,p,q,s,r;
printf("請輸入兩個正整數;m,n\n");
scanf("%d,%d",&m,&n);
s=m*n;
if(m<n)
{
p=m;
m=n;
n=p;
}
printf("%d\t%d\n",m,n);/*按從大到小輸出m,n */
while(n!=0)
{
q=m%n;
m=n;
n=q;
}
/*是不是m才是最大公約數啊*/
r=s/m;
printf("m和n最大公約數為 %d\n",m);
printf("m和n最小公倍數為 %d\n",r);/*m和n的積除以m和n的最大公約數即為最小公倍數*/
return 0;
}
2.輸出100以內能被3整除且個位數為6的所有整數。
#include<stdio.h>
int main(void)
{
int i;
for(i=1;i<=100;i++)
if(i%3==0&&i%10==6)printf("%d ",i);
return 0;
}
3. 編程計算從1到10各數階乘的和,即1! + 2! + 3! + …… + 9! + 10! 的和
#include<stdio.h>
int main(void)
{
int sum,i,term;
sum=0;
term=1;
for(i=1;i<=10;i++)
{
term=term*i;
sum=sum+term;
printf("%d的階乘 %d\n",i,term);
}
printf("1到10各數階乘的和 %d\n",sum);
return 0;
}
4.使用嵌套循環產生下列由大寫字母組成的圖
#include<stdio.h>
int main(void)
{
char ch1,ch2;
for(ch1='A';ch1<='Z';ch1++)
{
for(ch2='A';ch2<=ch1;ch2++)
printf("%c",ch2);
printf("\n");
}
return 0;
}
5. 編程輸出所有三位數中的素數。
#include<stdio.h>
int main(void)
{
int x,i;
for(x=100;x<=999;x++)
{
for(i=2;i<x/2;i++)
if(x%i==0)break;
if(i==x/2)printf("%d ",x);
}
return 0;
}
6. 定義一個函數even(),判斷一個整數是否是偶數。如果是偶數返回1,否則返回0。(要求包括能使程序正常運行的主函數)
#include<stdio.h>
int main(void)
{
int even(int);
int x,y;
scanf("%d",&x);
y=even(x);
if(y==1)
printf("%d 是偶數\n",x);
else
printf("%d 是奇數\n",x);
return 0;
}
int even(int x)
{
if(x%2==0)
return 1;
else
return 0;
}
7. 編寫函數mypow,求整型變數x的y次方。(要求包括能使程序正常運行的主函數)
#include<stdio.h>
int main(void)
{
int mypow(int,int);
int x,y,s;
scanf("%d%d",&x,&y);
s=mypow(x,y);
printf("%d的%d次方是 %d\n",x,y,s);
return 0;
}
int mypow(int x,int y)
{
int sum,i;
sum=1;
for(i=1;i<=y;i++)
sum=sum*x;
return sum;
}
8.輸入一個3位整數,輸出它的逆序數。例如,輸入127,輸出應該是721。
#include<stdio.h>
int main(void)
{
int x,y;
scanf("%d",&x);
y=x/100+x/10%10*10+x%10*100;
printf("%d的逆序數 %d\n",x,y);
return 0;
}
9. 編寫一個字元串連接函數,其功能是將兩個字元串連接起來形成一個新的字元串,以實現庫函數strcat()的功能
#include<stdio.h>
int main(void)
{
void mystrcat(char s1[],char s2[]);
char s1[80],s2[80];
scanf("%s%s",s1,s2);
mystrcat(s1,s2);
printf("%s\n",s1);
return 0;
}
void mystrcat(char s1[],char s2[])
{
int i,j;
for(i=0;s1[i]!='\0';i++);
for(j=0;s2[j-1]!='\0';j++)s1[i+j]=s2[j];
}
10. 編寫一個字元串復制函數,其功能是將字元數組s2中的全部字元(包括字元串結束符號'\0')拷貝到字元數組 s1 中,以實現庫函數strcpy()的功能。
#include<stdio.h>
int main(void)
{
void mystrcpy(char s1[],char s2[]);
char s1[80],s2[80];
scanf("%s",s2);
mystrcpy(s1,s2);
printf("%s\n",s1);
return 0;
}
void mystrcpy(char s1[],char s2[])
{
int i;
for(i=0;s2[i-1]!='\0';i++)
s1[i]=s2[i];
}
11.有一字元串,包含n個字元。寫一函數,將此字元串中從第m個字元開始的全部字元復製成為另一個字元串
#include<stdio.h>
int main(void)
{
void mystrcpy2(char s1[],char s2[],int m,int n);
char s1[80],s2[80];
int m,n;
scanf("%d%d",&m,&n);
scanf("%s",s1);
mystrcpy2(s1,s2,m,n);
printf("s1: %s\ns2: %s\n",s1,s2);
return 0;
}
void mystrcpy2(char s1[],char s2[],int m,int n)
{
int i,j;
for(i=m-1,j=0;i<n&&s1[i]!='\0';i++)
s2[j++]=s1[i];
s2[j]='\0';
}
I. 經典C語言程序例子
題目01:在一個已知的字元串中查找最長單詞,假定字元串中只含字母和空格,空格用來分隔不同的單詞。
(9)c語言簡單編程實例擴展閱讀:
C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。
J. 簡單C語言編程
1。#include <iostream>
using namespace std;
int main()
{
int i;
for(i=0;i<=100;i++)
{
if(i%4==0&&i%9==0)
cout<<i<<endl;
}
return 0;
}
2。
#include <iostream>
using namespace std;
int main()
{int a,b,c,d;
cin>>a>>b>>c;
d=c;
c=b;
b=a;
a=d;
cout<<a<<endl<<b<<endl<<c<<endl;
return 0;
}
3。#include <fstream>
#include <iostream>
using namespace std;
int main()
{
char a[90];
ofstream outfile("your_file.txt",ios::out);
cin.getline(a,90);
outfile<<a;
return 0;
}
4。
#include <iostream>
using namespace std;
int main()
{
char c[80];
cin.getline(c,80);
int i=0,j=0;
while(c[i]!='\0')
{
if(c[i]>=65&&c[i]<=90)
i++;
j++;
}
cout<<j<<endl;
return 0;
}
5。
#include <iostream>
using namespace std;
struct student
{
char name[50];
int score;
};
int main()
{
student a[5];
int i;
for(i=0;i<=4;i++)
{
cin>>a[i].name>>a[i].score;
}
FILE *fp;
fp=fopen("data1.txt","w");
for(i=0;i<=4;i++)
{
fprintf(fp,"%s\n",a[i].name);
fprintf(fp,"%d\n",a[i].score);
}
fclose(fp);
return 0;
}