C语言求纠错

一个临时照顾孩子的人的收费标准是:18:00到21.30间每小时2元,21:30到午夜间每小时4元,18:00以前和午夜以后不照顾孩子。
编写一段程序,读入开始时间和结束时间,并计算某一个雇工可以赚取多少钱。程序应检查无效的开始时间和结束时间。
switch语句错了,你判断的是n是char型数据,里面的case应该是 case ‘0’ 得加上单引号,不加的话就等于是判断整数0。我没细看别的地方,别的地方没有语法错误,但我不知道你计算的逻辑对不对,还有题外话,下次最后能把代码粘贴上来,这样别人比较容易调试。
再加一句,这个计野蠢算逻辑肯定是错的。你输入的时间是点分,但是分是60制,你直接去加减,得出的数字去乘以单亏岩位小时的工钱销脊御,肯定是不对的。举个例子,18.0到21.30,相减等于3.30.可是实际上,这不是3.3小时,是3.5小时
是不是一运行就直接输出“无效的开始时间或结束时间”,,你把char n改成 int n;scanf("%c".&n);改成scanf("裂慧%d",&n);你的分类都是0 1 2 的数字干旅源衫嘛要用char类型呢。还有case 0: #include"stdio.h"也没错,拆腔但是和#include<stdio.h>还是有些区别。计算逻辑参考楼上,楼上说的很对,按照他的修改也可以。
看不清,贴上源码吧
(int)(over-begin)这块你就不怕转完变成0?