當前位置:編程學習大全網 - 編程語言 - 本文介紹了C語言的點編程方法。

本文介紹了C語言的點編程方法。

這是使用的結構。

# include & ltstdio.h & gt

# include & ltstdlib.h & gt

# include & ltstring.h & gt

#define mycpy(x,y) {strcpy(x.id,y . id);strcpy(x.name,y . name);}

typedef結構學生

{

char name[8];//名稱

char id[10];//學生編號

}學生;

學生的;//定義全局變量

int n;

Void sort(student * s,int n)//從小到大冒泡排序。

{

int i,j,flag = 1;

學生臨時工;

for(I = 0;我& ltn & amp& amp旗幟;i++)

{

flag = 0;

for(j = 0;j & ltn-1;j++)

{

if(strcmp(s[j].id,s[j+1]。id)>;0)

{

flag = 1;

mycpy(temp,s[j]);

mycpy(s[j],s[j+1]);

mycpy(s[j+1],temp);

}

}

}

}

無效輸入(學生,整數)

{

int I;

Printf("請輸入學生人數:");

scanf("%d ",& ampn);

s =(student *)malloc(sizeof(student)* n);//動態打開空間

for(I = 0;我& ltn;i++)

{

Printf("請輸入%d學生的姓名:",I+1);

獲取(s[i]。姓名);

Printf("請輸入%d學生的學號:",I+1);

獲取(s[i]。id);

}

}

void輸出(student *s,int n)

{

int I;

for(I = 0;我& ltn;i++)

{

Printf("請輸入%d學生的姓名:%s\n ",i+1,s[i]。姓名);

Printf("請輸入%d學生的學號:%s\n ",i+1,s[i]。id);

}

}

Intdel _ id (student * s,char * id,int n)//根據學號刪除。

{

int i,j;

for(I = 0;我& ltn;i++)

{

if(strcmp(id,s[i])。id) == 0)

{

for(j = I;j & ltn;j++)

{

mycpy(s[j],s[j+1]);

}

n-;//總人數減壹。

打破;

}

}

}

Voiddel _ name (student * s,char * name,int n)//按名稱刪除。

{

int i,j;

for(I = 0;我& ltn;i++)

{

if(strcmp(name,s[i].id) == 0)

{

for(j = I;j & ltn;j++)

{

mycpy(s[j],s[j+1]);

}

n-;//總人數減壹。

打破;

}

}

}

int main()

{

輸入(s,n);//輸入

sort(s,n);//排序

輸出(s,n);//輸出

del_id(s,"",n);//根據學號刪除

del_name(s,"",n);//按名稱刪除

系統(“暫停”);

返回0;

}

  • 上一篇:web前端開發技術
  • 下一篇:形容煙花璀璨的文案句子
  • copyright 2024編程學習大全網