首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C >> C 語言問答

C語言實現簡易加法計算器:輸入兩數輸出算式與結果

     編輯:C 語言問答

基礎版:分別輸入兩數


#include <stdio.h>

int main() {
    int a, b, sum;
    printf("請輸入加數 a 和被加數 b:");
    scanf("%d %d", &a, &b);
    sum = a + b;
    printf("運算結果:%d + %d = %d\n", a, b, sum);
    return 0;
}

進階版:解析 "1+2" 格式字串


#include <stdio.h>
#include <stdlib.h>

int main() {
    char expr[100];
    printf("請輸入算式 (如 1+2):");
    scanf("%99s", expr);  // 讀取無空格字串

    char *plus = strchr(expr, '+');
    if (!plus) { puts("格式錯誤:缺少 +"); return 1; }

    *plus = '\0';                 // 分割為兩個子串
    int a = atoi(expr);
    int b = atoi(plus + 1);
    printf("%s + %s = %d\n", expr, plus + 1, a + b);
    return 0;
}

健壯版:支援減乘除、空白、錯誤處理


double calc(const char *expr) {
    // 簡易遞歸下降解析器 (支援 + - * / 括號)
    // 此處略,完整實現參考「TinyExpr」單文件庫
    return 0;
}

關鍵函數說明

  • strchr(s, '+'):查找 '+' 位置,返回指標。
  • atoi(s):字串轉整數,**不檢查錯誤** (非數字返回 0)。
  • strtol(s, &end, 10):**推薦**,可檢測 end 是否指向末尾,判斷轉換是否完整。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved