當前位置:首頁 » 編程語言 » 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);
}

熱點內容
安卓手機如何有蘋果的emoji 發布:2025-02-09 02:11:02 瀏覽:807
編譯原理已知語言求文法習題 發布:2025-02-09 02:05:15 瀏覽:131
中國首個具有世界影響力的編譯器 發布:2025-02-09 01:56:21 瀏覽:719
tomcat上傳超時 發布:2025-02-09 01:41:42 瀏覽:483
androidactivity豎屏 發布:2025-02-09 01:41:40 瀏覽:377
家庭配置怎麼合理 發布:2025-02-09 01:36:14 瀏覽:807
頭條軍事源碼 發布:2025-02-09 01:31:53 瀏覽:997
androidintent視頻 發布:2025-02-09 01:31:43 瀏覽:858
歐姆龍plc密碼如何設置 發布:2025-02-09 01:24:31 瀏覽:687
php支持jpeg 發布:2025-02-09 01:24:22 瀏覽:803