当前位置:首页 » 编程语言 » c语言程序工资

c语言程序工资

发布时间: 2023-07-10 00:45:39

A. 用c语言编程某单位进行工资调整,要求按技术等级分为A,B,C, D四个档次进行调整

从题意,程序需要先输入工资信息,再根据技术等级对应系数调整工资,以后打印工资信息。

单位工资信息一般包含员工编号,姓名,工资等,适合用结构类型存储

技术等级ABCD对应一个调整系数,这是一组有关联的常量,适合用枚举。

下面是代码,工资我用的是整型,计算系数是整除,需要浮点数,自行修改类型。员工人数修改常量PN,我测试用3个员工。

#include<stdio.h>

#define PN 3//员工数量

enum tLevel{ A = 110, B= 120, C = 130, D = 140};//技术级别ABCD对应调整系数%

typedef struct personnel

{

int id;//员工编号,唯一

char pName[20];//员工姓名

int basePay;//基础工资

enum tLevel tll;

}PERL;

void init(PERL *perl);

void show(PERL *perl);

int main()

{

PERL perl[PN];

init(perl);

show(perl);

return 0;

}

void show(PERL *perl)

{

int i;

printf(" 员工工资表: ");

for(i=0;i<PN;i++)

{

printf("员工编号%d: ",perl[i].id);

printf("员工姓名%s: ",perl[i].pName);

printf("基本工资%d: ",perl[i].basePay);

printf("等级系数%d: ",perl[i].tll);

printf("结算工资%d: ",perl[i].basePay*perl[i].tll/100);

}

}

void init(PERL *perl)

{

static int id=1;//自增,作为唯一的员id

int i;

char lv[2]={0};

printf("输入%d个员工信息! ",PN);

for(i=0;i<PN;i++,id++)

{

printf("请输入员工姓名:"),scanf("%s",perl[i].pName);

printf("请输入基础工资:"),scanf("%d",&perl[i].basePay);

while(lv[0]<'A' || lv[0]>'D')

printf("请输入员技术等级(A~D):"),scanf("%s",lv);

switch(lv[0])

{

case 'A':perl[i].tll=A;break;

case 'B':perl[i].tll=B;break;

case 'C':perl[i].tll=C;break;

case 'D':perl[i].tll=D;break;

}

lv[0]=0;

perl[i].id=id;

printf(" ");

}

}

B. C语言计算工资的代码

源代码中,你的if语句里面两个表达式是用逗号分开的,这样并不能满足两个条件都满足的要求
现修改代码如下,

#include<stdio.h>
intmain()
{
inty,t;
doublem;
scanf("%d%d",&y,&t);
if(y<5&&t<=40)//使用&&表示要求两个条件都满足
printf("%.2f",m=t*30);
elseif(y<5&&t>40)
printf("%.2f",m=40*30+(t-40)*30*1.5);
elseif(y>=5&&t<=40)
printf("%.2f",m=t*50);
else
printf("%.2f",m=40*50+(t-40)*50*1.5);
}

C. 用C语言编写一个计算薪水的程序

/*工资计算程序*/
#include <stdio.h>

main()
{
float originWage; /*应发工资*/
float realWage; /*实发工资*/
float tax; /*所缴税款*/
int i,hour,amount,money;

printf("请选择工资种类:\n1.计时工资\n2.计件工资\n3.固定月工资\n");
scanf("%d",&i);
switch(i)
{
case 1:{
printf("请输入工作时间(单位:小时)\n");
scanf("%d",&hour);
printf("请输入单位时间的薪水(单位:元)\n");
scanf("%f",&money);
originWage=money*hour;
}
break;
case 2:{
printf("请输入生产产品数量(单位:件)\n");
scanf("%d",&amount);
printf("请输入生产一件产品的薪水(单位:元)\n");
scanf("%f",&money);
originWage=money*amount;
}
break;
case 3: printf("请输入你的固定工资\n");
scanf("%f",&originWage);
break;
default:printf("输入错误!\n");
return 0;
}

if(originWage<0)
{
printf("数据错误!\n");
return 0;
}
if(originWage<2000)
tax=0;
else if(originWage>2000&&originWage<=2500)
tax=(originWage-2000)*0.05;
else if(originWage>2500&&originWage<=4000)
tax=(originWage-2500)*0.1+500*0.05;
else
tax=(originWage-4000)*0.15+1500*0.1+500*0.05;
printf("应发工资: %f\n",originWage);
printf("所缴税款: %f\n",tax);
printf("实发工资: %f\n",originWage-tax);
return 0;
}

D. c语言:编写程序,输入月薪数a,计算并输出税率、应缴税款和实得奖金数。

#include <stdio.h>
void main()
{
double a, rate;
int c,tax,profit;
printf("输入奖金数:");
scanf("%lf",&a);
if(a>=5000)c=10;
else c=a/500;
switch(c) {
case 0: rate=0; break;
case 1: rate=0.05; break;
case 2:
case 3:
case 4: rate=0.08; break;
case 5:
case 6:
case 7:
case 8:
case 9: rate=0.10; break;
case 10: rate=0.15; break;
}
printf("%d",c);
tax=(a*rate);
profit=(int)(a-tax);
printf("税率为%lf,应缴税款为%d,实得奖金数为%d\n",rate,tax,profit);
}

热点内容
笔记本电脑一般存储空间 发布:2025-02-08 23:51:15 浏览:835
php网站优化 发布:2025-02-08 23:49:41 浏览:455
php网页打印 发布:2025-02-08 23:40:02 浏览:820
windowssmb无法访问 发布:2025-02-08 23:33:28 浏览:467
python27编译器 发布:2025-02-08 23:29:20 浏览:339
如何运行python代码 发布:2025-02-08 23:28:15 浏览:692
新箱子密码锁怎么设置 发布:2025-02-08 23:26:50 浏览:148
安卓如何可以看见被撤回的消息 发布:2025-02-08 23:19:17 浏览:798
火影忍者竞技场脚本 发布:2025-02-08 23:10:18 浏览:935
英国访问学者签证费用 发布:2025-02-08 23:04:46 浏览:927