查看完整版本: 不会做的练习题,大家来指点一下

困C之斗 2008-9-20 23:20

不会做的练习题,大家来指点一下

1. 编写一个程序。该程序读取输入直遇到#字符。然后报告读取的空格数目、读取的换行符数目以及读取的所有其他字符数目。

2.编写程序,要求输入一周中的工作小时数,然后打印工资总额、税金以及净工资。作如下假设:
a.基本工资等级=10.00美元/小时

b加班(超过40个小时)=1.5倍的时间

c.税率      前300美元为15%
                下一个150美元为20%
                余下的为25%

jason 2008-9-21 08:59

1.使用cin.get()可以读入回车符,一个一个读的,读一个判断一个就行了
  或者 char array[n]   然后 cin.getline(array,n,'#')    n为要读入的字符个数,可以设为一个大值,因为第三个参数
   '#'为结束标识
   //注:cin.getline()一般使用时只用了两个参数,系统默认结束标识为换行符'\n'
2.就是个简单的if--else判断结构

沸腾 2008-10-9 14:59

程序二

#include<stdio.h>
#include<math.h>
void main()
{
        float hour,wage,tax,s;//hour表示工作小时数,wage表示工资总额,tax表示税金,s表示净收入
        printf("请输入一周的工作小时数:");
        scanf("%f",&hour);
        if(hour>=0&&hour<=40)
                {wage=hour*10.00;
                if(hour<=30)
                tax=wage*0.15;
                else tax=300*0.15+(wage-300)*0.20;
                }
        else if (hour>40)
                {    wage=40*10.00+(hour-40)*1.5*10.00;
             if((40+1.5*(hour-40)*10.00)-300<=150)
               tax=300*0.15+(wage-300)*0.20;
             else tax=300*0.15+150*0.20+(wage-300-150)*0.25;
                }
     s=wage-tax;
         printf("工资总额为:%f  税金为:%f  净收入为:%f \n",wage,tax,s);
}
页: [1]
查看完整版本: 不会做的练习题,大家来指点一下