C语言及程序设计.第七课.项目3.发工资

来源:互联网 发布:java数组末尾添加元素 编辑:程序博客网 时间:2024/04/29 10:59

单支线

任务和代码

/**Copyright (c)2015,CSDN学院*All rights reserved.*文件名称:three(first).c*作    者:刘亦鑫*完成日期:2015年3月23日*版本号:v1.0**问题描述:某公司工资按周发放,标准是每小时制20元,若员工周工作时间超过40小时,超出部分每小时30元。编程序输入一名员工一周的工作小时数,输出他的周工资。*          样例输入之一:32*          样例输出之一:640*          样例输入之二:48*          样例输出之二:1040*程序输出:输入一名员工一周的工作小时数,输出他的周工资。*/#include <stdio.h>#include <stdlib.h>int main(){    int a,b,c,t;    printf("请输入员工的工作小时数:");    scanf("%d",&a);    b=0;    if(a>40)                  //判断工作时间是否大于40    {        b=20*40+30*(a-40);     //如工作时间大于则计算出工资并赋值给b    }    c=20*a;    if(b>c)                   //如果工作时间大于40,则b被进行了赋值,b大于t,b与t进行值交换    {        t=c;        c=b;        b=t;    }    printf("该员工的工资为:%d\n",c);    return 0;}

运行结果

知识点总结

先把0赋值给b,然后判断工作时间a是否大于40,如大于则计算工资并赋值给b,如小于则不做处理。c为普通时间工资乘以工作时间。最后用b与c比较,如b大于c则交换值,如小于c则不做处理,最后输出c

心得

在这种只输入一个值的情况下,用单支线判断看似简单,实则要花费很多脑力,吃力不讨好。

双支线

任务和代码

/**Copyright (c)2015,CSDN学院*All rights reserved.*文件名称:three(second).c*作    者:刘亦鑫*完成日期:2015年3月23日*版本号:v1.0**问题描述:某公司工资按周发放,标准是每小时制20元,若员工周工作时间超过40小时,超出部分每小时30元。编程序输入一名员工一周的工作小时数,输出他的周工资。*          样例输入之一:32*          样例输出之一:640*          样例输入之二:48*          样例输出之二:1040*程序输出:输入一名员工一周的工作小时数,输出他的周工资。*/#include <stdio.h>#include <stdlib.h>int main(){    int a,b;    printf("请输入员工的工作小时数:");    scanf("%d",&a);    if(a>40)    {        b=20*40+30*(a-40);    }    else    {        b=20*a;    }    printf("该员工的工资为:%d\n",b);    return 0;}

运行结果

知识点总结

判断员工的工作时间是否大于40,如大于则计算超出时间的工资,如小于40,则直接计算工资

心得

在这种只需输入1个值的问题下,使用if else 双支线语句一目了然,事半功倍。


1 0
原创粉丝点击