c語言基礎案例
Ⅰ 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;
}
(1)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) ┊ 頂▼ ┊列印┊舉報
轉載列表:
轉載
轉載是分享博文的一種常用方式...
前一篇:判斷某一年是否為閏年後一篇:企業發放的獎金根據利潤提成