C++實(shí)現(xiàn)企業(yè)職工工資管理系統(tǒng)
課程設(shè)計(jì)目的和要求
工資管理要和人事管理相聯(lián)系,生成企業(yè)每個(gè)職工的實(shí)際發(fā)放工資。
企業(yè)職工人事基本信息包括:職工編號(hào)、姓名、性別、出生日期、職稱(chēng)(助工、工程師、高級(jí)工程師)和任職年限。
企業(yè)職工工資信息包括:職工編號(hào)、姓名、職務(wù)工資、職務(wù)補(bǔ)貼、住房補(bǔ)貼、應(yīng)發(fā)工資、個(gè)人所得稅、養(yǎng)老保險(xiǎn)、住房公積金和實(shí)發(fā)工資。
系統(tǒng)主要功能包括:
(1)創(chuàng)建職工人事基本信息文件,根據(jù)提示輸入職工的各項(xiàng)信息,按職工編號(hào)對(duì)職工信息進(jìn)行排序,并將排序后的職工信息存儲(chǔ)到一個(gè)文件中。
(2)創(chuàng)建職工的工資信息文件(每個(gè)月創(chuàng)建一個(gè)文件),其中職工編號(hào)和姓名從人事信息文件中復(fù)制,其他工資組成項(xiàng)目按下面方法計(jì)算。
職務(wù)工資:助工=1270*(1+任職年限*2%)
工程師=2360*(1+任職年限*3%)
高級(jí)工程師=3450*(1+任職年限*5%)
職務(wù)補(bǔ)貼:=職務(wù)工資*25%
住房補(bǔ)貼=(職務(wù)工資+職務(wù)補(bǔ)貼)*15%
應(yīng)發(fā)工資=職務(wù)工資+職務(wù)補(bǔ)貼+住房補(bǔ)貼
個(gè)人所得稅=(應(yīng)發(fā)工資-3000)*5%
養(yǎng)老保險(xiǎn)=(職務(wù)工資+職務(wù)補(bǔ)貼)*10%
住房公積金=應(yīng)發(fā)工資*5%
實(shí)發(fā)工資=應(yīng)發(fā)工資-個(gè)人所得稅-養(yǎng)老保險(xiǎn)-住房公積金
(3)增加職工人事基本信息,在原有職工人事基本信息文件的基礎(chǔ)上增加新有的職工信息。
(4)刪除職工人事基本信息,提示用戶(hù)輸入要?jiǎng)h除的職工編號(hào),如果在文件有該信息存在,則將其信息輸出到屏幕上,用戶(hù)確認(rèn)后將該信息刪除,并將刪除后的結(jié)果保存至原文件。最后提示用戶(hù)是否繼續(xù)進(jìn)行刪除操作。
(5)修改職工人事基本信息,提示用戶(hù)輸入要?jiǎng)h除的職工編號(hào),如果在文件有該信息存在,則將其信息輸出到屏幕上,然后提示用戶(hù)要修改的選項(xiàng)(職稱(chēng)、任職年限),并將修改后的結(jié)果保存至原文件。最后提示用戶(hù)是否繼續(xù)進(jìn)行修改操作。
(6)按不同條件進(jìn)行查詢(xún)操作,輸出滿(mǎn)足條件的職工工資信息。
① 按職工編號(hào)查詢(xún),輸入一個(gè)編號(hào),輸出對(duì)應(yīng)職工工資信息。
② 按姓名查詢(xún),包括精確查詢(xún),模糊查詢(xún)。
③ 按職稱(chēng)查詢(xún),輸入職稱(chēng)名稱(chēng),輸出相應(yīng)職稱(chēng)工資信息。
(7)按不同條件對(duì)職工工資信息進(jìn)行統(tǒng)計(jì)工作。
① 統(tǒng)計(jì)個(gè)職稱(chēng)崗位的職工人數(shù)是多少,計(jì)算高級(jí)工程師比例。
② 計(jì)算企業(yè)職工的平均實(shí)發(fā)工資,并輸出。
③ 統(tǒng)計(jì)職工工資低于平均工資人數(shù),并輸出他們的姓名和實(shí)發(fā)工資。
代碼:
#include<stdafx.h>
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<conio.h>
#include<time.h>
typedef struct date
{
short year;
short month;
short day;
}st3;
typedef struct gerenxinxi
{
char num[30];
char name[30];
char sex[30];
st3 chushengriqi;
char zhicheng[20];
int nianxian;
}st;
typedef struct gerengongzi
{
char num[20];
char name[12];
double zhiwugongzi;
double zhiwubutie;
double zhufangbutie;
double yingfagongzi;
double gerensuodeshui;
double yanglaobaoxian;
double zhufanggongjijin;
double shifagongzi;
}st1;
#define st3_len sizeof(st3)
#define st_len sizeof(st)
#define st1_len sizeof(st1)
#define gerenxinxinum 1000
#define gerengongzinum 1000
st gerenxinxi[gerenxinxinum]={0};
st1 gerengongzi[gerengongzinum]={0};
int loadgerenxinxi(void);//將文件中的信息讀取
int originalgerenxinxi(void);//個(gè)人信息初始化
void getonegerenxinxi(int i);//輸ru一個(gè)職工的個(gè)人信息
void allgerenxinxi(int bn);//保存所有信息
void xggerenxinxi(int bn);//修改個(gè)人信息
void saveonegerenxinxi(int i);//保存?zhèn)€人信息
int addgerenxinxi(int bn);//增加個(gè)人信息
int delgerenxinxi(int bn); //刪除個(gè)人信息
void putonegerenxinxi(int i);//輸出一個(gè)個(gè)人信息
void sort(int bn);//排序
void shengchenggongzi(int bn);//生成工資
void putonegerengongzi(int i);//輸出一個(gè)人的工資信息
void cxgerenxinxi(int bn);//查詢(xún)
void cxzhicheng(int bn);//職稱(chēng)查詢(xún)
void cxname(int bn);//姓名查詢(xún)
void cxnum(int bn);//編號(hào)查詢(xún)
void tongjigongzixinxi(int bn);//統(tǒng)計(jì)工資信息
float avegongzi(int bn);//平均工資
void lowgongzi(int bn);//低于平均工資
void gangweirenshu(int bn);//職工人數(shù)
void main()
{ int select,bn;
bn=loadgerenxinxi();
if(bn==0)
printf("職工信息為零:");
while(1)
{
printf("\n 企業(yè)職工工資管理系統(tǒng) \n");
printf("\n-----------------------------\n");
printf("\n 請(qǐng)輸入要進(jìn)行操作前的序號(hào) \n");
printf("\n 1.輸入職工信息 \n");
printf("\n 2.修改職工信息 \n");
printf("\n 3.增加職工信息 \n");
printf("\n 4.刪除職工信息 \n");
printf("\n 5.職工工資 \n");
printf("\n 6.統(tǒng)計(jì)工資信息 \n");
printf("\n 7.查詢(xún)工資信息 \n");
printf("\n 0.退出 \n");
printf("\n----------------------------\n");
scanf("%d",&select);
getchar();
switch(select)
{ case 1: originalgerenxinxi(); break;
case 2: xggerenxinxi(bn); break;
case 3: addgerenxinxi(bn); break;
case 4: delgerenxinxi(bn); break;
case 5: shengchenggongzi(bn); break;
case 6: tongjigongzixinxi(bn); break;
case 7: cxgerenxinxi(bn); break;
case 0: return;
default:printf("\n按鍵錯(cuò)誤,請(qǐng)重新選擇\n");
}
}
}
//=====================================================
int loadgerenxinxi(void)//將文件中的信息讀取
{
FILE *fb;
int bn=0;
if((fb=fopen("gerenxinxi.txt","r+"))==NULL)
{printf("不能打開(kāi)\n");
return(bn);
}
while(!feof(fb))
if(fread(&gerenxinxi[bn],st_len,1,fb))
bn++;
fclose(fb);
return(bn);
}
//======================================================
int originalgerenxinxi(void)//個(gè)人信息初始化
{
int n;
char c='y';
for(n=0;c=='y';n++)
{ printf("\n輸入職工%d的信息:\n",n+1);
getonegerenxinxi(n);
printf("\n繼續(xù)輸入請(qǐng)按'y',停止請(qǐng)按'n':");
c=getchar(); getchar();
}
sort(n);
allgerenxinxi(n);
return(n);
}
//======================================================
void getonegerenxinxi(int i)//輸ru一個(gè)職工的個(gè)人信息
{
printf("職工編號(hào):");
gets(gerenxinxi[i].num);
printf("姓名:");
gets(gerenxinxi[i].name);
printf("性別:");
gets(gerenxinxi[i].sex);
printf("出生日期:");
scanf("%d.%d.%d",&gerenxinxi[i].chushengriqi.year,&gerenxinxi[i].chushengriqi.month,&gerenxinxi[i].chushengriqi.day);
getchar();
printf("職稱(chēng)(助工,工程師 ,高級(jí)工程師):");
gets(gerenxinxi[i].zhicheng);
printf("任職年限:");
scanf("%d",&gerenxinxi[i].nianxian);
getchar();
}
//======================================================
void allgerenxinxi(int bn)//保存所有信息
{ FILE *fb;
if((fb=fopen("gerenxinxi.txt","w"))==NULL)
{ printf("不能打開(kāi)\n");
exit(1);
}
fwrite(gerenxinxi,st_len,bn,fb);
fclose(fb);
}
//=======================================================
void xggerenxinxi(int bn)//修改個(gè)人信息
{
int select,k=-1;
char number[20],c1='y',c2;
if(bn==0)
{ printf("\n職工信息為空\(chéng)n:");
return;
}
while(c1=='y')
{c2='y';
printf("\n請(qǐng)輸入要修改的職工編號(hào)\n");
gets(number);
for(int i=0;i<bn;i++)
if(strcmp(gerenxinxi[i].num,number)==0)
{ k=i;
break;}
if(k<0)
printf("\n編號(hào)有誤,請(qǐng)重新輸入\n");
else
{ printf("\n職工信息:\n");
putonegerenxinxi(k);
while(c2=='y')
{
printf("\n請(qǐng)輸入要修改項(xiàng)前的序號(hào):\n");
printf("1.職稱(chēng)\n");
printf("2.任職年限\n");
printf("0.退出程序\n");
scanf("%d",&select);
getchar();
switch(select)
{
case 1:printf("職稱(chēng):");
gets(gerenxinxi[k].zhicheng);
break;
case 2:printf("入職年限:");
scanf("%d",&gerenxinxi[k].nianxian);
getchar();
break;
case 0:
exit(1);
default:
printf("\n按鍵錯(cuò)誤,請(qǐng)重新輸入\n");
}
printf("\n還要修改該職工其它信息嗎(y/n)?\n");
c2=getchar();
getchar();
}
}
saveonegerenxinxi(k);
printf("\n還要修改其他職工信息嗎?(y/n)\n");
c1=getchar();
getchar();
}
printf("\n按任意鍵繼續(xù)\n");
getchar();
}
//======================================================
void saveonegerenxinxi(int i)//保存?zhèn)€人信息
{
FILE *fb;
if((fb=fopen("gerenxinxi.txt","r+"))==NULL)
{printf("不能打開(kāi) \n");
exit(1);
}
fseek(fb,st_len*i,0);
fwrite(&gerenxinxi[i],st_len,1,fb);
fclose(fb);
}
//======================================================
int addgerenxinxi(int bn)//增加個(gè)人信息
{ char c='y';
FILE *fb;
if((fb=fopen("gerenxinxi.txt","a"))==NULL)
{printf("不能打開(kāi)\n");
exit(1);
}
while(c=='y')
{printf("\n請(qǐng)輸入新增職工信息:\n");
getonegerenxinxi(bn);
fwrite(&gerenxinxi[bn],st_len,1,fb);
bn++;
printf("\n繼續(xù)輸入其他職工信息嗎?(y/n):");
c=getchar();
getchar();
}
printf("\n按任意鍵繼續(xù)\n:");
getch();
fclose(fb);
return(bn);
}
//======================================================
int delgerenxinxi(int bn) //刪除個(gè)人信息
{
int k=-1;
char number[20],c1='y',c2;
if(bn==0)
{ printf("\n信息為空\(chéng)n");
return(bn);
}
while(c1=='y')
{ c2='y';
printf("\n輸入要?jiǎng)h除的職工編號(hào)\n");
gets(number);
for(int i=0;i<bn;i++)
if(strcmp(gerenxinxi[i].num,number)==0)
{ k=i;
break;}
if(k<0)
printf("\n編號(hào)有誤,重新輸入\n");
else
{
printf("\n職工信息:\n");
putonegerenxinxi(k);
printf("\n確定要?jiǎng)h除該職工的全部信息嗎?(y/n):");
c2=getchar();
getchar();
if(c2=='y')
{ for(i=k;i<bn;i++)
gerenxinxi[i]=gerenxinxi[i+1];
bn--;
printf("\n成功刪除!\n");
}
else
printf("\n取消刪除!\n");
printf("\n繼續(xù)刪除其它職工信息嗎?(y/n):");
c1=getchar(); getchar();
}
}
allgerenxinxi(bn);
printf("\n按任意鍵繼續(xù)!\n");
getch();
return(bn);
}
//====================================================
void putonegerenxinxi(int i)//輸出一個(gè)個(gè)人信息
{
printf("\n");
printf("職工編號(hào):");
puts(gerenxinxi[i].num);
printf("姓名:");
puts(gerenxinxi[i].name);
printf("性別:");
puts(gerenxinxi[i].sex);
printf("出生日期:");
printf("%d.%d.%d\n",gerenxinxi[i].chushengriqi.year,gerenxinxi[i].chushengriqi.month,gerenxinxi[i].chushengriqi.day);
printf("職稱(chēng):");
puts(gerenxinxi[i].zhicheng);
printf("任職年限:");
printf("%d",gerenxinxi[i].nianxian);
}
//==================================================
void sort(int bn)//排序
{
st temp;
int i,j;
for(i=0;i<bn-1;i++);
{
for(j=i+1;j<bn;j++)
if(gerenxinxi[i].num >gerenxinxi[i+1].num )
{ temp=gerenxinxi[i];
gerenxinxi[i]=gerenxinxi[i+1];
gerenxinxi[i+1]=temp;
}
}
}
//=================================================
void shengchenggongzi(int bn)//生成工資
{
FILE *fp,*fp2;
int i,j;
if ((fp = fopen("gerenxinxi.txt", "r")) == NULL)
{
printf("不能打開(kāi)\n");
exit(0);
}
fread(gerenxinxi,st_len,bn, fp);
if ((fp2 = fopen("gerengongzi.txt", "w")) == NULL)
{
printf("不能打開(kāi)\n");
exit(0);
}
for(i=0;i<bn;i++)
{ strcpy(gerengongzi[i].name, gerenxinxi[i].name);
strcpy(gerengongzi[i].num, gerenxinxi[i].num);
if (strcmp(gerenxinxi[i].zhicheng,"助工") == 0)
{gerengongzi[i].zhiwugongzi=1270*(1+gerenxinxi[i].nianxian*0.02);}
if (strcmp(gerenxinxi[i].zhicheng,"工程師") == 0)
{gerengongzi[i].zhiwugongzi=2360*(1+gerenxinxi[i].nianxian*0.03);}
if (strcmp(gerenxinxi[i].zhicheng,"高級(jí)工程師") == 0)
{gerengongzi[i].zhiwugongzi=3450*(1+gerenxinxi[i].nianxian*0.05);}
gerengongzi[i].zhiwubutie=gerengongzi[i].zhiwugongzi*0.25;
gerengongzi[i].zhufangbutie=(gerengongzi[i].zhiwubutie+gerengongzi[i].zhiwugongzi)*0.15;
gerengongzi[i].yingfagongzi=gerengongzi[i].zhiwugongzi+gerengongzi[i].zhiwubutie+gerengongzi[i].zhufangbutie;
if(gerengongzi[i].yingfagongzi>3000)
gerengongzi[i].gerensuodeshui=(gerengongzi[i].yingfagongzi-3000)*0.05;
else
gerengongzi[i].gerensuodeshui=0;
gerengongzi[i].yanglaobaoxian=(gerengongzi[i].zhiwubutie+gerengongzi[i].zhiwugongzi)*0.1;
gerengongzi[i].zhufanggongjijin=gerengongzi[i].yingfagongzi*0.05;
gerengongzi[i].shifagongzi=gerengongzi[i].yingfagongzi-gerengongzi[i].gerensuodeshui-gerengongzi[i].yanglaobaoxian-gerengongzi[i].zhufanggongjijin;
}
printf("\n");
fwrite(gerengongzi,st1_len,bn,fp2);
fclose(fp);
fclose(fp2);
if ((fp = fopen("gerengongzi.txt", "r+")) == NULL)
{
printf("不能打開(kāi)\n");
exit(1);
}
fread(gerengongzi,st1_len,bn,fp2);
for(j=0;j<bn;j++)
putonegerengongzi(j);
fclose(fp);
}
//==========================================================
void putonegerengongzi(int i)//輸出一個(gè)人的工資信息
{
printf("\n");
printf("職工編號(hào):");
puts(gerengongzi[i].num);
printf("職工姓名:");
puts(gerengongzi[i].name);
printf("勞務(wù)工資:");
printf("%f\n",gerengongzi[i].zhiwugongzi);
printf("勞務(wù)補(bǔ)助:");
printf("%f\n",gerengongzi[i].zhiwubutie);
printf("住房補(bǔ)貼:");
printf("%f\n",gerengongzi[i].zhufangbutie);
printf("應(yīng)發(fā)工資:");
printf("%f\n",gerengongzi[i].yingfagongzi);
printf("個(gè)人所得稅:");
printf("%f\n",gerengongzi[i].gerensuodeshui);
printf("養(yǎng)老保險(xiǎn):");
printf("%f\n",gerengongzi[i].yanglaobaoxian);
printf("住房公積金:");
printf("%f\n",gerengongzi[i].zhufanggongjijin);
printf("實(shí)發(fā)工資:");
printf("%f\n",gerengongzi[i].shifagongzi);
}
//===============================================
void cxgerenxinxi(int bn)//查詢(xún)
{
int select;
while(1)
{ printf("\n請(qǐng)輸入要進(jìn)行操作前的編號(hào)\n");
printf("1.編號(hào)查詢(xún)\n");
printf("2.按姓名查詢(xún)\n");
printf("3.按職稱(chēng)查詢(xún)\n");
printf("0.退出查詢(xún)\n");
scanf("%d",&select);
getchar();
switch(select)
{
case 1:
cxnum(bn);
break;
case 2:
cxname(bn);
break;
case 3:
cxzhicheng(bn);
break;
case 0:
return;
default:printf("\n按鍵錯(cuò)誤,請(qǐng)重新選擇\n");
}
}
}
//==============================================
void cxnum(int bn)
{
int i;
char number[20],c='y';
while(c=='y')
{
printf("\n請(qǐng)輸入職工編號(hào):");
gets(number);
for(i=0;i<bn;i++)
if(strcmp(gerenxinxi[i].num,number)==0)
{
printf("\n職工%d的信息:\n");
putonegerenxinxi(i);
printf("\n按任意鍵繼續(xù)!\n");
getch();
}
if(i==bn)
printf("\n沒(méi)有找到職工信息\n");
return;
}
printf("\n按任意鍵繼續(xù)查詢(xún)!\n");
getchar();
}
//================================================
void cxzhicheng(int bn)
{
int i;
char zhicheng[20],c='y';
while(c=='y')
{
printf("\n請(qǐng)輸入職工職稱(chēng):");
gets(zhicheng);
for(i=0;i<bn;i++)
if(strcmp(gerenxinxi[i].zhicheng,zhicheng)==0)
{
printf("\n職工的信息:\n");
putonegerenxinxi(i);
printf("\n按任意鍵繼續(xù)!\n");
getch();
}
if(i==bn)
{ printf("\n沒(méi)有找到職工信息\n");
return ;
}
}
printf("\n按任意鍵繼續(xù)查詢(xún)!\n");
getchar();
}
//==============================================
void cxname(int bn)//姓名查詢(xún)
{
int i,j,k;
char name[12],c='y';
while(c=='y')
{
k=-1;
printf("\n請(qǐng)輸入職工姓名:");
gets(name);
for(i=0,j=1;i<bn;i++)
if(strcmp(gerenxinxi[i].name,name)==0)
{ printf("\n當(dāng)前為準(zhǔn)確查詢(xún)\n");
k=i;
printf("\n職工%d的信息:\n",j++);
putonegerenxinxi(k);
printf("\n按任意鍵繼續(xù)!\n");
getch();
}
if(k==-1)
{
printf("\n當(dāng)前為模糊查詢(xún)\n");
for(i=0,j=1;i<bn;i++)
if(strstr(gerenxinxi[i].name,name)!=NULL)
{
k=i;
printf("\n職工%d的信息:\n",j++);
putonegerenxinxi(k);
printf("\n按任意鍵繼續(xù)!\n");
getch();
}
if(j==1)
printf("\n沒(méi)有找到職工信息!\n");
return;
}
}
printf("\n按任意鍵繼續(xù)!\n");
getchar();
}
//=================================================
void tongjigongzixinxi(int bn)//統(tǒng)計(jì)工資信息
{
int select;
while(1)
{
printf("請(qǐng)輸入要進(jìn)行操作前的編號(hào)\n");
printf(" 1.各職稱(chēng)崗位的職工人數(shù)\n");
printf(" 2.職工的平均實(shí)發(fā)工資\n");
printf(" 3.低于平均工資的人數(shù)\n");
printf(" 0.退出統(tǒng)計(jì)功能\n");
scanf("%d",&select); getchar();
switch(select)
{ case 1:gangweirenshu(bn); break;
case 2:avegongzi(bn); break;
case 3:lowgongzi(bn); break;
case 0:return;
default: printf("\n按鍵錯(cuò)誤,請(qǐng)重新選擇!\n");
}
return;
}
}
//=================================================
void gangweirenshu(int bn)//職工人數(shù)
{ int i,j=0, k=0, m=0;
float ave;
for(i=0;i<bn;i++)
{ if(strcmp(gerenxinxi[i].zhicheng ,"助工")==0)
j++;
if(strcmp(gerenxinxi[i].zhicheng ,"工程師")==0)
k++;
if(strcmp(gerenxinxi[i].zhicheng ,"高級(jí)工程師")==0)
m++;
}
ave=(m*1.0/bn);
printf("助工人數(shù)為%d人\n",j);
printf("工程師人數(shù)為%d人\n",k);
printf("高級(jí)工程師人數(shù)為%d人\n",m);
printf("高級(jí)工程師比例為%f\n",ave);
}
//==================================================
float avegongzi(int bn)//平均工資
{
int i;
float sum=0;
float ave;
for(i=0;i<bn;i++)
sum=sum+gerengongzi[i].shifagongzi;
ave=(sum/bn);
printf("職工的平均實(shí)發(fā)工資為:%f\n",ave);
return(ave);
return(0);
}
//================================
void lowgongzi(int bn)//低于平均工資
{ int i,k=0;
float b;
b=avegongzi(bn);
for(i=0;i<bn;i++)
{
if(gerengongzi[i].shifagongzi<b)
{
k++;
printf("姓名:%s\n",gerengongzi[i].name);
printf("工資:%f\n",gerengongzi[i].shifagongzi);
}
}
printf("低于平均工資的人數(shù)為:%d\n",k);
}
努力了一個(gè)多星期,自己頭一次做這么大的程序,鼓勵(lì)一下
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持我們。
上一篇:OpenCV圖像分割中的分水嶺算法原理與應(yīng)用詳解
欄 目:C語(yǔ)言
下一篇:Opencv實(shí)現(xiàn)用于圖像分割分水嶺算法
本文標(biāo)題:C++實(shí)現(xiàn)企業(yè)職工工資管理系統(tǒng)
本文地址:http://www.jygsgssxh.com/a1/Cyuyan/940.html
您可能感興趣的文章
- 04-02c語(yǔ)言沒(méi)有round函數(shù) round c語(yǔ)言
- 01-10數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)-用棧實(shí)現(xiàn)表達(dá)式求值的方法詳解
- 01-10使用OpenGL實(shí)現(xiàn)3D立體顯示的程序代碼
- 01-10深入理解C++中常見(jiàn)的關(guān)鍵字含義
- 01-10求斐波那契(Fibonacci)數(shù)列通項(xiàng)的七種實(shí)現(xiàn)方法
- 01-10C語(yǔ)言 解決不用+、-、&#215;、&#247;數(shù)字運(yùn)算符做加法
- 01-10使用C++實(shí)現(xiàn)全排列算法的方法詳解
- 01-10c++中inline的用法分析
- 01-10用C++實(shí)現(xiàn)DBSCAN聚類(lèi)算法
- 01-10深入全排列算法及其實(shí)現(xiàn)方法


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹(shù)的示例代碼(圣誕
- 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問(wèn)題方法
- 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語(yǔ)言計(jì)算三角形面積代碼
- 6什么是 WSH(腳本宿主)的詳細(xì)解釋
- 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 8正則表達(dá)式匹配各種特殊字符
- 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
- 04-02c語(yǔ)言函數(shù)調(diào)用后清空內(nèi)存 c語(yǔ)言調(diào)用
- 04-02func函數(shù)+在C語(yǔ)言 func函數(shù)在c語(yǔ)言中
- 04-02c語(yǔ)言的正則匹配函數(shù) c語(yǔ)言正則表達(dá)
- 04-02c語(yǔ)言用函數(shù)寫(xiě)分段 用c語(yǔ)言表示分段
- 04-02c語(yǔ)言中對(duì)數(shù)函數(shù)的表達(dá)式 c語(yǔ)言中對(duì)
- 04-02c語(yǔ)言編寫(xiě)函數(shù)冒泡排序 c語(yǔ)言冒泡排
- 04-02c語(yǔ)言沒(méi)有round函數(shù) round c語(yǔ)言
- 04-02c語(yǔ)言分段函數(shù)怎么求 用c語(yǔ)言求分段
- 04-02C語(yǔ)言中怎么打出三角函數(shù) c語(yǔ)言中怎
- 04-02c語(yǔ)言調(diào)用函數(shù)求fibo C語(yǔ)言調(diào)用函數(shù)求
隨機(jī)閱讀
- 04-02jquery與jsp,用jquery
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 01-10SublimeText編譯C開(kāi)發(fā)環(huán)境設(shè)置
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
- 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子
- 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
- 01-11Mac OSX 打開(kāi)原生自帶讀寫(xiě)NTFS功能(圖文
- 01-10delphi制作wav文件的方法
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 01-10C#中split用法實(shí)例總結(jié)


