iT邦幫忙

2022 iThome 鐵人賽

DAY 13
0
自我挑戰組

C語言與C++語言自學系列 第 13

C語言與C++語言自學第十三天

  • 分享至 

  • xImage
  •  

C語言的複合賦值與遞增遞減值

我們在流程控制的時候我們時常會需要用到,所以我們需要去理解複合賦值和遞增遞減值,例如a+=2就是把a的值做加2存回到左邊的a,在舉例count=count+1也可以寫成count+=1,這其中我們便可省略的掉一個count,如果變數名稱比較長時,我們便可省去一些時間,那麼count+1跟count++有什麼差別呢,最大的差別是count+1之後是不會改變count本身的值的,count++是count+1之後在存回count,我們繼續討論遞增遞減值的運算,i++和++i的差別在哪,雖然他們都等於i=i+1,i++得到的是i++原本的值,++i得到的是i+1後的值,什麼叫算結果呢?下程式碼介紹他們的結果

int a=0;
int b;
b=a++;
b=++a;

第一行的b中結果是a=1 b=1,第二行中的b的結果是a=2 b=1

C語言消費金額計算

試著寫一方程式讓使用者分別輸入商品編號,輸入為0依照下方的售價表進行結算,顯示賣出總金額

1: 90
2: 75
3: 83
4: 89
5: 71

我們可用switch的概念下程式碼

#include <stdio.h>
int main(){
    int total=0;
    int id;
    do{
        scanf("%d",&id);
        switch(id){
            case 1: total+=90; break;
            case 2: total+=75; break;
            case 3: total+=83; break;
            case 4: total+=89; break;
            case 5: total+=71; break;
        }
    }while(id!=0);
    printf("Total: %d\n", total);
    return 0;
}

上面的程式碼,我們先假設兩個變數,一個total和id,由於id可以輸入好幾次,scanf我們至少會輸入一次,我們可以使用do while來包switch,我們一直讀id直到id=0的時候,我們就照著上面的表格1號是多少依此類推,case1接下來case2接下來case3...等等,記得要加break,最後直到輸入0為止,最後將total總額印出來即可


上一篇
C語言與C++語言自學第十二天(函式呼叫堆疊以及活動紀錄)
下一篇
C語言與C++語言自學第十四天
系列文
C語言與C++語言自學30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言