1 /*
2 1. 键盘输入 年 月 日,计算这一天是这一年的第几天
3 2. 输入两个运算数(x 和 y)和 一个运算符(op),并计算 x op y 的值.(+ - * / % )
4 3. 将第二题替换成 if else 表达式。
5 4. 输入一个月份,输出该月对应的季节。
6 5. 输入一个成绩,计算该成绩属于哪个等级。(90 分到 100 分:A,80 分到 89 分:B,60 到 7
7 分:C,60 分以下:D。
8 6. 编程实现当 x < 0 的时候 y = -1; x == 0 的时候 y = 0; x > 0 的时候,y = 1;
9 7. 运输公司对所运货物实行分段计费。设运输里程为 s,计费情况如下:设每公里每吨基本
10 运费为 p,货物重量为 w,折扣为 d,总运费 f 的计算公式为:f=p*w*s*(1-d)。设计程序,
11 当输入 p、w 和 s 后,计算运费 f。
12 s<250 不打折扣
13 250<=s<500 2%折扣
14 500<=s<1000 5%折扣
15 1000<=s<2000 8%折扣
16 2000<=s<3000 10%折扣
17 3000<=s 15%折扣
18 9.定期存款利息计算器
19 输入存款金额并选择存款种类,计算出利息和本息合计。
20 提示:利息=金额×年利率×存期(单位:年,3 个月为 0.25 年,6 个月为 0.5 年)。
21 例如:1000 元存 6 个月,利息=1000×0.033×0.5=16.5 元
22 年利率:3 个月 3.10%,6 个月 3.30%,一年 3.50%,二年 4.40%,三年 5.00%,五年 5.50%。
23 */
24
25
26 #define _CRT_SECURE_NO_WARNINGS
27 #include <stdio.h>
28 //键盘输入 年 月 日,计算这一天是这一年的第几天
29 void days(int year,int mouth,int day) {
30 //int year, mouth, day,flag=0; //2020年1月7日
31 //先判断是否是闰年共366天 1-12月分别为31天,29天,31天,30天,31天,30天,31天,31天,30天,31天,30天,31天
32 //判断月份
33 if (year % 4 == 0 && year %100 != 0|| year % 400 == 0) {
34 switch (mouth) {
35 case 1:
36 printf("第%d天", day);
37 break;
38 case 2:
39 printf("第%d天", 31+day);
40 break;
41 case 3:
42 printf("第%d天", 31+29+day);
43 break;
44 case 4:
45 printf("第%d天", 31 + 29 +31+ day);
46 break;
47 case 5:
48 printf("第%d天", 31 + 29 + 31 +30+ day);
49 break;
50 case 6:
51 printf("第%d天", 31 + 29 + 31 + 30+31 + day);
52 break;
53 case 7:
54 printf("第%d天", 31 + 29 + 31 + 30 + 31+30 + day);
55 break;
56 case 8:
57 printf("第%d天", 31 + 29 + 31 + 30 + 31 + 30+31 + day);
58 break;
59 case 9:
60 printf("第%d天", 31 + 29 + 31 + 30 + 31 + 30 + 31+30 + day);
61 break;
62 case 10:
63 printf("第%d天", 31 + 29 + 31 + 30 + 31 + 30 + 31 + 30+31 + day);
64 break;
65 case 11:
66 printf("第%d天", 31 + 29 + 31 + 30 + 31 + 30 + 31 + 30 + 31+30 + day);
67 break;
68 case 12:
69 printf("第%d天", 31 + 29 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + 30 +31+ day);
70 break;
71 default:
72 printf("错误—输入错误\n");
73
74 }
75 }
76 else {
77 switch (mouth) {
78 case 1:
79 printf("第%d天", day);
80 break;
81 case 2:
82 printf("第%d天", 31 + day);
83 break;
84 case 3:
85 printf("第%d天", 31 + 28 + day);
86 break;
87 case 4:
88 printf("第%d天", 31 + 28 + 31 + day);
89 break;
90 case 5:
91 printf("第%d天", 31 + 28 + 31 + 30 + day);
92 break;
93 case 6:
94 printf("第%d天", 31 + 28 + 31 + 30 + 31 + day);
95 break;
96 case 7:
97 printf("第%d天", 31 + 28 + 31 + 30 + 31 + 30 + day);
98 break;
99 case 8:
100 printf("第%d天", 31 + 28 + 31 + 30 + 31 + 30 + 31 + day);
101 break;
102 case 9:
103 printf("第%d天", 31 + 28 + 31 + 30 + 31 + 30 + 31 + 30 + day);
104 break;
105 case 10:
106 printf("第%d天", 31 + 28 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + day);
107 break;
108 case 11:
109 printf("第%d天", 31 + 28 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + 30 + day);
110 break;
111 case 12:
112 printf("第%d天", 31 + 28 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + day);
113 break;
114 default:
115 printf("错误—输入错误\n");
116
117 }
118 }
119
120 }
121
122 //输入两个运算数(x 和 y)和 一个运算符(op),并计算 x op y 的值.(+ - * / % )
123 void jisuan(int x,int y,char op) {
124 switch (op) {
125 case '+':
126 printf("%d",x+y);
127 break;
128 case '-':
129 printf("%d", x - y);
130 break;
131 case '*':
132 printf("%d", x * y);
133 break;
134 case '/':
135 printf("%d", x / y);
136 break;
137 case '%':
138 printf("%d", x % y);
139 break;
140 default:
141 printf("输入错误。");
142 }
143 }
144 //将第二题替换成 if else 表达式。
145 void jisuan1(int x, int y, char op) {
146 if (op == '+') {
147 printf("%d", x + y);
148 }
149 else if (op == '-') {
150 printf("%d", x - y);
151 }
152 else if (op == '*') {
153 printf("%d", x * y);
154 }
155 else if (op == '/') {
156 printf("%d", x / y);
157 }
158 else if (op == '%') {
159 printf("%d", x % y);
160 }
161 else {
162 printf("输入错误。\n");
163 }
164
165 }
166 //输入一个月份,输出该月对应的季节。
167 void jijie(int month) {
168 switch (month) {
169 case 3:
170 case 4:
171 case 5:
172 printf("春季\n");
173 break;
174 case 6:
175 case 7:
176 case 8:
177 printf("夏季\n");
178 break;
179 case 9:
180 case 10:
181 case 11:
182 printf("秋季\n");
183 break;
184 case 1:
185 case 2:
186 case 12:
187 printf("冬季\n");
188 break;
189 default:
190 printf("错误输入");
191 }
192 }
193 //编程实现当 x < 0 的时候 y = -1; x == 0 的时候 y = 0; x > 0 的时候,y = 1;
194 void fuzhi(int x) {
195 int y;
196 if (x < 0)
197 y = -1;
198 if (x == 0)
199 y = 0;
200 if (x > 0)
201 y = 1;
202
203 switch(x){
204 case 0:
205 y = 0;
206 break;
207 default:
208 x > 0 ? 1 : -1;
209 break;
210 }
211 }
212
213 /*
214 运输公司对所运货物实行分段计费。设运输里程为 s,计费情况如下:设每公里每吨基本
215 运费为 p,货物重量为 w,折扣为 d,总运费 f 的计算公式为:f=p*w*s*(1-d)。设计程序,
216 当输入 p、w 和 s 后,计算运费 f。
217 s<250 不打折扣
218 250<=s<500 2%折扣
219 500<=s<1000 5%折扣
220 1000<=s<2000 8%折扣
221 2000<=s<3000 10%折扣
222 3000<=s 15%折扣
223 网上复制,没有测试 不懂。
224
225 void yunshu(int p,int w,int s) {
226 int c,d;
227 c = s / 500;
228 switch(c){
229 case 0:
230 d = 0;
231 f += p*w*s*(1 - d);
232 break;
233 case 1:
234 case 2:
235 case 3:
236 case 4:
237 case 5:
238 case 6:
239 d = 0.02;
240 f += p*w*(s - 250)*(1 - d);
241 s = 250;
242 break;
243 case 7:
244 case 8:
245 case 9:
246 case 10:
247 case 11:
248 d = 0.1;
249 f += p*w*(s - 1500)*(1 - d);
250 s = 1500;
251 break;
252 default:
253 d = 0.15;
254 f += p*w*(s - 3000)*(1 - d);
255 s = 3000;
256 }
257 }
258 */
259 /*
260 定期存款利息计算器
261 输入存款金额并选择存款种类,计算出利息和本息合计。
262 提示:利息=金额×年利率×存期(单位:年,3 个月为 0.25 年,6 个月为 0.5 年)。
263 例如:1000 元存 6 个月,利息=1000×0.033×0.5=16.5 元
264 年利率:3 个月 3.10%,6 个月 3.30%,一年 3.50%,二年 4.40%,三年 5.00%,五年 5.50%。
265 */
266 void lixi(float money,int cunqi) {
267 float lixi;
268 //lixi = jine*lilv*cunqi;
269 switch (cunqi)
270 {
271 case 3:
272 lixi = money*0.031*0.25;
273 printf("%.2f", lixi);
274 break;
275 case 6:
276 lixi = money*0.033*0.5;
277 printf("%.2f", lixi);
278 break;
279 case 12:
280 lixi = money*0.035*1;
281 printf("%.2f", lixi);
282 break;
283 case 24:
284 lixi = money*0.044*2;
285 printf("%.2f", lixi);
286 break;
287 case 36:
288 lixi = money*0.05*3;
289 printf("%.2f", lixi);
290 break;
291 case 50:
292 lixi = money*0.055*5;
293 printf("%.2f", lixi);
294 break;
295 default:
296 printf("当前没有对应套餐\n");
297 }
298 }
299 int main() {
300 lixi(1000,6);
301 jijie(6);
302 jisuan(2,2,'%');
303 days(2020, 12, 7);
304 system("pause");
305 return 0;
306 }