【問題描述】超市對快要過期的食品,進行統一的打折**,食品資訊包括:食品名稱,生產日期,保質期,單價,其中生產日期使用日期結構體定義。距離保質期20天到10天的打5折,距離保質期10天以內的打3折。請將輸入的食品單價進行修改,輸出新的食品資訊。對於已經過期食品,輸出:食品名稱,過去天數(負數),單價(0)
【輸入形式】食品名稱 生產日期 保質期(天數) 單價當前日期
當輸入食品名稱為"#"時表示輸入結束。
【輸出形式】食品名稱 還有幾天過期 修改後單價
【樣例輸入】
pm 2018.1.30 30 45
mb 2018.2. 6 25 30
gz 2018.2.15 25 20
0.0.0 0 02018.2.24
【樣例輸出】
pm 5 13.5
mb 7 9.0
gz 16 10.0
#include
#include
#include
struct date
;struct food_information
;int
main()
/*i = n = 0;
do while (strcmp(food[i].name, str) != 0);*/
scanf_s
("%d.%d.%d"
,&now.year,
&now.month,
&now.day)
;for
(i =
0; i < n; i++
)for
(i =
0; i < n; i++
)system
("pause");
return0;
}int
calculate
(struct date now,
struct food_information food)
//計算時間差(生產日期與當前日期)
intdays
(int y,
int m,
int d)
//計算該天在該年中的天數if(
((y %4==
0&& y %
100!=0)
|| y %
400==0)
&& n >2)
z = n +1;
else
z = n;
//printf("%d年%d月%d日是該年的%d天 \n", y, m, d, z);
return z;
}
執行結果:
說明:1.程式在計算間隔天數是需保證是同一年,否則會出錯;可自行新增相關語句以完善程式功能。
2.簡述思路:
判斷當前日期與生產日期間的間隔天數,與保質期對比,
若間隔《保質期,則未過期;
若間隔》保質期,則已過期。
使用物件導向技術解決商品打折問題 二
我們現在看在checkout方法中究竟要使用要使用codepromotion這個類提供的那些資訊,首先可以肯定,getpromotionamount這個方法是必需的,而且我們希望能夠得知某一定但為什麼要打折,所以getdescription這個方法也是一定要有的,而user 是對promotion ...
商品銷售打折自定義的資料建模
近期看了idilent的文章 使用物件導向技術解決商品打折問題 文後有讀者提出要求 如果不同商品的折扣不同怎麼辦?或者有買一百送五十這種方式,或不同會員等級的折扣不同。怎麼處理?idilent認為打折這個問題並不是能夠通過乙個的字段就可以解決的。有不同的會員,不同的產品,不同的銷售計畫,而這些也是在...
轉《商品銷售打折自定義的資料建模》
近期看了idilent的文章 使用物件導向技術解決商品打折問題 文後有讀者提出要求 如果不同商品的折扣不同怎麼辦?或者有買一百送五十這種方式,或不同會員等級的折扣不同。怎麼處理?idilent認為打折這個問題並不是能夠通過乙個資料庫的字段就可以解決的。有不同的會員,不同的產品,不同的銷售計畫,而這些...