Ⅰ c語言編程題
1.將程序段填充完整(實現12個月每個月天數的輸出)
case 1: case 3: case 5: case 7: case 8: case 10: case 12: days=31;break;
case 4: case 6: case 9: case 11: days=30;break;
case 2:
if((yy%4==0 && yy%100!=0) || yy%400==0) days=29;
else days=28;
break;
2.輸入4個整數a,b,c,d,編寫程序,將它們按從大到小的順序輸出(if語句實現)
int a,b,c,d;
scanf("%d %d %d %d",&a,&b,&c,&d);
if(a>b && a>c && a>d) printf("%d ",a);
if(b>a && b>c && b>d) printf("%d ",b);
if(c>a && c>b && c>d) printf("%d ",c);
if(d>a && d>b && d>c) printf("%d ",d);
3.假設獎金稅率如下(ma代表稅前獎金且ma>0,r代表稅率),利用switch語句編寫程序對輸入的一個獎金數,輸出稅率和應交稅款及實得獎金數(扣除獎金稅後)。
int ma;
float r,ts,sd;
scanf("%d",&ma);
switch(ma/1000)
{
case 0: r=0;break;
case 1: r=0.05;break;
case 2: r=0.08;break;
default: r=0
Ⅱ switch(C語言中)是什麼意思
C語言中的SWITCH是計算表達式的值。
並逐個與其後的常量表達式值相比較,當表達式的值與某個常量表達式的值相等時,
即執行其後的語句,然後不再進行判斷,繼續執行後面所有case後的語句。
其一般形式為:
switch(表達式)。case
常量表達式1:
語句1 case
常量;表達式2:
語句2
case
常量;
表達式n:
語句n, default:
語句n+1。switch
是分支語句,就是比較強大的if集;
default為不滿足所有的switch條件則後面的句子被執行。一般將default寫在switch中的最後。
C語言雖然沒有限制
if
else
能夠處理的分支數量,但當分支過多時;
用
if
else
處理會不太方便,而且容易出現
if
else
配對出錯的情況。
(2)c語言獎金稅率switch表示擴展閱讀:
switch語法
1、Switch用在編程中,如C語言中它經常跟Case一起使用,是一個判斷選擇代碼。其功能就是控制業務流程流轉的。
2、直線翻譯:switch語句,即「切換」語句;case即「情況」。
3、switch語句非常有用,但在使用時必須謹慎。所寫的任何switch語句都必須遵循以下規則:
4、只能針對基本數據類型中的整型類型使用switch,這些類型包括int、char等。
5、對於其他類型,則必須使用if語句。switch()的參數類型不能為實型
。
6、case標簽必須是常量表達式(constantExpression),如42或者"42"。
7、case標簽必須是惟一性的表達式;也就是說,不允許兩個case具有相同的值。
參考資料來源:網路:switch
Ⅲ C語言switch語句問題(初學)
1.case2:case3:語句1;break;
這樣的語句,當表達式滿足2或3的時候,都要執行語句1
因為case2中為空語句,它沒有break語句,繼續執行case3的語句,直到遇見break語句為止,case3中有break語句所以終止了,如果沒有繼續往下執行,
2.題目中I<=100000時,如I=50000時,t=0,執行case0語句,注意:當I=100000(僅此一個取值)時t=1,但是你不能因此就把處理語句寫在case1中,應為case1中還包括100000<I<200000的情況,可以把I=100000時的情況與100000<I<200000的情況一起處理,放在case1中如答案:bonus=bon1+(i-100000)*0.075;break;i=100000時(i-100000)*0.075=0,只有bon1=100000*0.1的利潤,不影響處理結果,而你的處理方法就忽略了100000<I<200000也是t=1的情況,從而每次都把case語句錯位了
100000<I<=200000時,如I=150000你的t=I/100000;t是整形的,所以t=1或2(t=2的情況留到後面與200000<I<300000,t=2的情況一起處理),因此應該把你的處理寫在case1中。
200000<I<=400000,t=2或3或4(4的情況後面處理)所以程序中case2與case3要執行相同語句。
400000<I<=600000時t=4或5或6(6的情況後面處理),case4和case5執行相同語句,語句要寫在case5中。
600000<I<=1000000時t=6,7,8,9,10(10的情況後面處理)case6,7,8,9執行相同語句,語句要寫在case9中。
最後,你只需將上面t=10的情況與I>1000000d的情況一起處理,應該把你的處理寫在case10中。