當前位置:首頁 » 編程語言 » c語言案例分析

c語言案例分析

發布時間: 2025-04-02 20:13:58

c語言項目案例分析 電子版pdf

㈡ c語言水仙花數

#include <stdio.h>

int main()

{

int start, end, i = 0, a, b, c, size = 0;

while (scanf("%d %d", &start, &end) == 2)

{

for (i = start; i <= end; i++)

{

a = i / 100;

b = i / 10 % 10;

c = i % 10;

//total = pow(c, 3) + pow(a, 3) + pow(b, 3);

if ((a*a*a + b*b*b + c*c*c) == i) //滿足水仙花條件

{

if (size == 0) //size=0輸出第一個水仙花數

{

printf("%d", i);

}

else //size++輸出第二。。第n個水仙花數

{

printf(" %d", i);

}

size++; //個數++;

}

}

if (size == 0) //范圍內個數為0,則說明沒有滿足條件的

{

printf("no");

}

printf(" ");

}

return 0;

}

(2)c語言案例分析擴展閱讀:

需要注意的地方:

1.將n整除以100,得出n在百位上的數字hun。

2.將(n-i*100)整除以10(或將n先整除以10再對10求模n/10%10),得出n在十位上的數字ten。

3.將n對10取余,得出n在個位上的數字ind。

4.求得這三個數字的立方和是否與其本身相等,若相等,則該數為水仙花數。

網路-水仙花數

㈢ . 輸入百分制的學生成績,輸出A(90-100),B(80-89),C(70-79),D(60-69),E(60分以下)等級C語言題目

案例五:給出一百分製成績,要求輸出成績等級A,B,C,D,E。90分以上為A,80~89分為B,70~79分為C,60~69分為D,60分以下為E。

1.程序分析:

設成績用score表示,並且score為整型數據。若score≥90,score可能是100,99,…90,把這些值都列出來太麻煩了,可以利用兩個整數相除,結果自動取整的方法,即當90≤score≤100時,score/10隻有10和9兩種情況,這樣用switch語句來解決便簡便了。

程序源代碼:

main( )

{

float score:

char grade;

printf(「請輸入學生成績:」);

scanf(「%f」,&score);

while(score>100||score<0)

{

printf(「\n輸入有誤,請重輸。」);

scanf(「%f」,& score);

}

switch((int)( score/10))

{

case 10:

case 9:grade=』A』;break;

case 8:grade=』B』;break;

case 7:grade=』C』;break;

case 6:grade=』D』;break;

case 5:

case 4:

case 3:

case 2:

case 1:

case 0:grade=』E』;

}

printf(「成績是%5.1f,相應的等級是%c。\n」,socre,grade);

}

5.程序運行結果:

① 請輸入學生成績:90.5

成績是:90.5,相應的等級是A。

② 請輸入學生成績:59

成績是:59.0,相應的等級是E。

6.案例擴展:由鍵盤輸入學生成績等級,輸出成績范圍。等級評定同案例相同。

分享 分享到新浪Qing3


閱讀(2015)┊ 評論 (0)┊ 收藏(0) ┊轉載(0) ┊ 頂▼ ┊列印┊舉報

轉載列表:
轉載
轉載是分享博文的一種常用方式...

前一篇:判斷某一年是否為閏年後一篇:企業發放的獎金根據利潤提成

㈣ C語言 字元輸入 scanf和getchar的區別

一、字元輸入格式與函數

在C語言中,字元輸入有兩種主要方式:scanf與getchar。

1. scanf

scanf是通用輸入函數,可以從標准輸入流讀取多個字元並存儲至對應變數。輸入多個變數時,通過空格、TAB或回車鍵分隔。

2. getchar

getchar從標准輸入流讀取單個字元。首次需要人工輸入,後續調用會直接讀取緩沖區內容,無需再次輸入。

二、stdin與緩沖區

stdin是標准輸入,通常指鍵盤輸入。緩沖區是內存中為輸入或輸出數據預留的空間。輸入字元進入緩沖區,等待讀取。

三、字元輸入案例分析

嘗試輸入字元a和b,發現字元a未被讀取。原因在於使用空格分隔時,空格也被讀入並存入緩沖區,導致下一個字元輸入後讀取緩沖區內容。用回車分隔後,字元a被正確讀取。

四、解決緩沖區問題

為解決緩沖區問題,可在scanf與字元輸入之間添加空格,吸收分隔符。或使用getchar讀取緩沖區內容,或使用fflush清空緩沖區。

實例驗證:

在程序中輸入字元a和b,用空格或回車分隔,觀察輸出結果。

正確使用分隔符、getchar或fflush可有效解決C語言字元輸入時的緩沖區問題。

熱點內容
wifi密碼忘了怎麼改 發布:2025-04-03 18:16:57 瀏覽:748
androidshell腳本 發布:2025-04-03 18:09:24 瀏覽:564
跳傘需要什麼配置 發布:2025-04-03 18:00:13 瀏覽:208
什麼配置性能好 發布:2025-04-03 17:52:48 瀏覽:745
什麼安卓區平板性價比高 發布:2025-04-03 17:46:38 瀏覽:258
三星如何取消指紋解鎖密碼 發布:2025-04-03 17:22:03 瀏覽:898
阿里雲伺服器和自己電腦 發布:2025-04-03 17:21:01 瀏覽:169
銹湖安卓在哪裡下載 發布:2025-04-03 17:14:34 瀏覽:981
Java項目案例分析 發布:2025-04-03 17:01:33 瀏覽:270
sql導入導出資料庫 發布:2025-04-03 16:48:18 瀏覽:781