欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

修改學(xué)生信息c語言函數(shù)頭,C語言數(shù)學(xué)函數(shù)頭文件

用C語言編寫學(xué)生信息管理程序(給出五個主要函數(shù)就OK啦!)

/*接上一樓*/

成都創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括龍鳳網(wǎng)站建設(shè)、龍鳳網(wǎng)站制作、龍鳳網(wǎng)頁制作以及龍鳳網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,龍鳳網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到龍鳳省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

struct

Student

*create()

/*create函數(shù)定義,此函數(shù)實(shí)現(xiàn)創(chuàng)建單向動態(tài)鏈表*/

{

struct

Student

*head=NULL,*p1,*p2;

/*head,鏈表的頭指針;*p1,*p2,中間指針變量*/

puts("\n現(xiàn)在請輸入學(xué)院名:");

scanf("%s",college);

puts("\n年級:");

scanf("%s",grade);

puts("\n專業(yè)和班級:");

scanf("%s",classname);

puts("\n下面請按提示依次輸入數(shù)據(jù):\n(如果要結(jié)束輸入,請輸入學(xué)號0)");

p1=p2=(struct

Student

*)malloc(LEN);

puts("輸入第一個學(xué)生的學(xué)號:");

scanf("%ld",p1-num);

puts("輸入此學(xué)生成績:\n英語:");

scanf("%f",p1-score.english);

puts("數(shù)學(xué):");

scanf("%f",p1-score.math);

puts("計(jì)算機(jī):");

scanf("%f",p1-score.computer);

total_and_aver(p1);/*計(jì)算總分和平均分*/

p1-grade=mark_grade(p1);

for(;p1-num!=0;)

{

len++;

if(len==1)

head=p1;

else

p2-next=p1;

p2=p1;

p1=(struct

Student

*)malloc(LEN);

puts("輸入下一個學(xué)生的學(xué)號:");

scanf("%ld",p1-num);

puts("輸入此學(xué)生成績:\n英語:");

scanf("%f",p1-score.english);

puts("數(shù)學(xué):");

scanf("%f",p1-score.math);

puts("計(jì)算機(jī):");

scanf("%f",p1-score.computer);

total_and_aver(p1);/*計(jì)算總分和平均分*/

p1-grade=mark_grade(p1);

}

p2-next=NULL;

return

(head);

}

struct

Student

*del(struct

Student

*head,long

del_num)

/*del函數(shù)定義,此函數(shù)實(shí)現(xiàn)從現(xiàn)有鏈表中刪除一個結(jié)點(diǎn)*/

{

struct

Student

*p1,*p2;

if(head==NULL)

puts("空表,沒有任何數(shù)據(jù)記錄。\n");

else

{

for(p1=head;!(del_num==p1-num||p1-next==NULL);p2=p1,p1=p1-next);

if(del_num==p1-num)

{

if(p1==head)head=p1-next;

else

p2-next=p1-next;

printf("學(xué)號為%ld學(xué)生的數(shù)據(jù)刪除成功。\n",del_num);

--len;

}

else

printf("未找到學(xué)號為%ld學(xué)生的記錄。\n",del_num);

}

return

(head);

}

struct

Student

*insert(struct

Student

*head,struct

Student

*new_student)

/*insert函數(shù)定義,此函數(shù)實(shí)現(xiàn)向現(xiàn)有鏈表中插入一個結(jié)點(diǎn)或覆蓋相同學(xué)號的數(shù)據(jù)*/

{

struct

Student

*p0=new_student,*p1=head,*p2;

char

control;

if(head==NULL)

{

head=p0;

p0-next=NULL;

puts("數(shù)據(jù)插入成功。\n");

}

else

{

for(;((*p0).num(*p1).num)(p1-next!=NULL);p2=p1,p1=p1-next);

if((*p0).num==(*p1).num)

{

printf("已經(jīng)存在一個學(xué)號為%ld的學(xué)生的數(shù)據(jù),要覆蓋原有數(shù)據(jù)嗎?\n輸入

Y

=覆蓋原有數(shù)據(jù)\n輸入其它=保留原有數(shù)據(jù)\n",p0-num);

FFLUSH;

scanf("%c",control);

FFLUSH;

switch

(control)

{

case

'Y':

case

'y':if(p1==head){head=p0;p0-next=p1-next;}

else

{p2-next=p0;p0-next=p1-next;}

puts("數(shù)據(jù)已經(jīng)更新\n");break;

default:break;

}

len--;

}

else

if((*p0).num(*p1).num)

{

if(p1==head)head=p0;

else

p2-next=p0;

p0-next=p1;

puts("數(shù)據(jù)插入成功。\n");

}

else

{

p1-next=p0;

p0-next=NULL;

puts("數(shù)據(jù)插入成功。\n");

}

}

++len;

return

(head);

}

struct

Student

*sort(struct

Student

*head)

/*sort函數(shù)定義,此函數(shù)實(shí)現(xiàn)對鏈表中的數(shù)據(jù)按照平均分高低排序*/

{

struct

Student

*p1,*p2;

for(p1=head;p1-next!=NULL;p1=p1-next)

for(p2=p1-next;p2!=NULL;p2=p2-next)

{

if(p1-score.averagep2-score.average)

{

SWAP(p1-num,p2-num);

SWAP(p1-grade,p2-grade);

SWAP(p1-score.english,p2-score.english);

SWAP(p1-score.math,p2-score.math);

SWAP(p1-score.computer,p2-score.computer);

SWAP(p1-score.total,p2-score.total);

SWAP(p1-score.average,p2-score.average);

}

}

return

head;

}

/*接下一樓*/

用C語言編寫學(xué)生信息管理程序(給出五個主要函數(shù)就OK啦!)

#includestdio.h

#define M 2/*容量*/

struct _674

{

long num;

char name[20];

char add[20];

long tel;

}A[M],B[1];

void input()

{

int i=1;

char a='y';

while(a=='y')

{

if(i=M)

{

printf("請輸入你要輸入的學(xué)生學(xué)號\n");

scanf("%d",A[i].num);

for(int j=1;ji;j++)

if(A[j].num==A[i].num)

{

printf("你輸入的學(xué)號已存在\n");continue;

}

printf("請輸入你要輸入的學(xué)生姓名\n");

scanf("%s",A[i].name);

printf("請輸入你要輸入的學(xué)生地址\n");

scanf("%s",A[i].add);

printf("請輸入你要輸入的學(xué)生電話\n");

scanf("%d",A[i].tel);

i++;

printf("退出請任意輸入,繼續(xù)請輸入y\n");

getchar();

scanf("%c",a);

}

else

{

printf("你的空間已滿\n");break;

}

}

}

void output()

{

for(int i=1;i=M;i++)

printf("學(xué)號:%d姓名:%s地址:%s電話:%d\n",A[i].num,A[i].name,A[i].add,A[i].tel);

}

void seek()

{

int a,f=0;

printf("請輸入你要查找學(xué)生的學(xué)號\n");

scanf("%d",a);

for(int i=1;i=M;i++)

if(a==A[i].num)

{

printf("學(xué)號:%d姓名:%s地址:%s電話:%d\n",A[i].num,A[i].name,A[i].add,A[i].tel),f=0;break;

}

else

f=1;

if(f==1)

printf("查無此人\n");

}

void del()

{

int a;

printf("請輸入你要刪除的學(xué)生學(xué)號\n");

scanf("%d",a);

for(int i=1;i=M;i++)

if(a==A[i].num)

{

for(;iM;i++)

A[i]=A[i+1];

}

}

void insert()

{

printf("請輸入你要輸入你要插入的學(xué)生學(xué)號\n");

scanf("%d",B[1].num);

for(int j=1;j=M;j++)

if(B[1].num==A[j].num)

{

printf("你要插入的學(xué)號已存在\n");break;

}

printf("請輸入你要插入的學(xué)生姓名\n");

scanf("%s",B[1].name);

printf("請輸入你要插入的學(xué)生地址\n");

scanf("%s",B[1].add);

printf("請輸入你要插入的學(xué)生電話\n");

scanf("%d",B[1].tel);

}

void main()

{

input();

output();

seek();

del();

insert();

}

不好意思

自己也是剛學(xué)的

有不足之處還請諒解

很多地方還需要根據(jù)你的需要適當(dāng)修改

最后希望我們能相互討論學(xué)習(xí)共同進(jìn)步

用c語言實(shí)現(xiàn)對學(xué)生信息增刪改,怎么做啊

要更詳細(xì)答案,聯(lián)系我,這個很難做的,起碼要給點(diǎn)懸賞分作為酬勞啊!!!

#include "stdio.h"

#include "string.h"

#include "stdlib.h"

//數(shù)據(jù)結(jié)構(gòu)的定義

typedef struct node{

int id; //學(xué)號

char name[10]; // 姓名

int grade; //成績

struct node * next; //指向下一節(jié)點(diǎn)的指針

}node,*list;

//函數(shù)的聲明,必須按照聲明來定義函數(shù)

void showMenu(); //顯示菜單

void start(); // 主控程序

void init(list h);// 初始化鏈表h

void printAnRecord(node * p);//輸出p所指節(jié)點(diǎn)的值(id,name,grade)

void printList(list h);// 輸出鏈表h的各節(jié)點(diǎn)的值

int del(list h,int n);//刪除鏈表h中id為n的節(jié)點(diǎn),成功刪除返回1,若不存在則返回0

int insert(list h,int id,char * name,int grade);//在鏈表h中,插入節(jié)點(diǎn)(n,name,grade),若id重復(fù)返回0,否則返回1

node * searchByID(list h, int n);// 在鏈表h中查找id為n的節(jié)點(diǎn),查找成功返回其指針,否則返回NULL

int update(list h,int n,int grade);// 將鏈表h中id為n的節(jié)點(diǎn)的成績改為grade,若不存在該節(jié)點(diǎn)返回0,否則返回1

float average(list h); //返回鏈表h中各個節(jié)點(diǎn)成績的平均值

int bulkInsert(list h);//在鏈表h中批量插入節(jié)點(diǎn),以id=0結(jié)束,返回成功插入的節(jié)點(diǎn)數(shù)

void clearList(list h);//清空鏈表h(使其成為空鏈表)

void showMenu()

{ //顯示菜單

puts(" 0----Bulk Insert ");

puts(" 1----Insert an Record");

puts(" 2----Delete an Record");

puts(" 3----Update an Record's grade");

puts(" 4--- Search an Record by stu_id");

puts(" 5----Print all Record");

puts(" 6----Average of grade");

puts(" 7----Clear list");

puts(" 9----Exit");

}

//主控程序

void start()

{

list h; //鏈表

int choice; //功能選擇

int id,grade,flag=1,m;

char name[10];

showMenu();

init(h); //初始化鏈表h,即建立空鏈表

while(flag){//若未退出程序

puts(" ******** Please input 1...9 ********* ");

scanf("%d",choice);

switch(choice){ //根據(jù)選擇的功能號,執(zhí)行不同的操作

case 0 :

puts("input Stu_ID, Name , Grade (end by 0)");

m=bulkInsert(h);

printf(" %d Record insert successfully\n",m);

break;

case 1:

puts("input Stu_ID, Name , Grade: ");

scanf("%d",id);

scanf("%s",name);

scanf("%d",grade);

if( insert(h,id,name,grade) )

puts("Insert an Record successfully!");

else

puts("Sorry, dublicate ID ");

break;

case 2:

puts("input Stu_ID to delet");

scanf("%d",id);

if( del(h,id) )

puts("Delete an Record successfully");

else

puts("Sorry, ID no exit ");

break;

case 3:

puts("input Stu_ID and grade to update");

scanf("%d",id);

scanf("%d",grade);

if ( update(h,id,grade) )

puts("Update an Record successfully ");

else

puts("Sorry, ID no exit ");

break;

case 4:

puts("input Stu_ID to search");

scanf("%d",id);

node *p;

if( p=searchByID(h,id) )

printAnRecord(p);

else

puts("Sorry, ID no exit ");

break;

case 5:

printList(h);

break;

case 6:

printf("The average grade is %6.2f \n ", average(h) );

break;

case 7:

clearList(h);

break;

case 9:

flag=0; //退出循環(huán)

break;

default:

puts(" Error ! Must Input (1...9) ");

}

}

}

void main()

{

//編程時要一個一個函數(shù)的調(diào)試完成后,最后再調(diào)用主控程序

start();

}

文章名稱:修改學(xué)生信息c語言函數(shù)頭,C語言數(shù)學(xué)函數(shù)頭文件
URL鏈接:http://chinadenli.net/article12/dsijggc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站用戶體驗(yàn)網(wǎng)站內(nèi)鏈App設(shè)計(jì)網(wǎng)站導(dǎo)航域名注冊

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)