2017-09-09 30 views
-3
main() 
{ 
    int a; // Dabartine data 
    int b; // Gimimo data 
    int c; 
    printf("Iveskite dabartine data formatu yymmdd:"); 
    scanf("%d", &a); 
    printf("Iveskite savo gimimo data formatu yymmdd:"); 
    scanf("%d", &b); 
    c = a - b; 
    printf("Jusu amzius yra %d metai", c); 
    return 0; 
} 

有人能告訴我如何使最終結果只有2位數?這是根據當前日期和出生日期計算年齡的代碼。答案是yymmdd格式,我需要刪除mmdd部分,只留下年份,例如:它打印180602,我只需要離開18(它是人的年齡)如何在使用%d的printf中保留2位數

+1

你能證明*你自己解決這個問題的努力嗎? –

+0

Google或man printf –

+2

這個問題實際上並不是將'4'打印爲'04'或任何東西。我想這是問如何把'920915'變成'92'。 – melpomene

回答

2

您可以嘗試c = (a - b)/10000; 這將丟棄最後4位數字而不是四捨五入。

+0

謝謝,該死的我很笨,想不到這個簡單的解決方案:// – mjay99