C语言编程题~3道,高分求解~~先到先得

(1)编写一个程序实现如下功能:有4名学生,每个学生信息包含学号、姓名、数学成绩、英语成绩、C语言成绩和三门课程的总分,并对数据进行输入和输出

(2) 编写一个程序实现如下功能:定义一个点的结构数据类型,实现下列功能:
①为点输入坐标值。
②求两个点中点坐标。
③求两点间距离。

(3)编写一个程序实现如下功能:建立一个单链表,每个结点数据要有职工号、工资。用一个creat函数来建立链表,用list函数输出数据(数据自定)

#include "iostream.h"

struct student
{
private:
int num;
char *name;
int math,english,Cworlds,all;
public:
void set_info(int Num,char *Name);
void set_chengji(int Math,int English,int C);
int allscore();
void display();
};

void student::set_info(int Num,char *Name)
{
num=Num;
name=Name;
}

void student::set_chengji(int Math,int English,int C)
{
this->math=Math;
this->english=English;
this->Cworlds=C;
}

void student::display()
{
cout<<"学号:"<<num<<'\t';
cout<<"姓名:"<<name<<'\t';
cout<<"总成绩:"<<all;
cout<<endl;
}

int student::allscore()
{
all=english+math+Cworlds;
return all;
}

void main()
{
student stu[4];
int NUM=10000;
for(int i=0;i<4;i++)
{
stu[i].set_info(NUM++,"张三");
stu[i].set_chengji(80,90,100);
stu[i].allscore();
stu[i].display();
}

}
-----------------------------------------
#include "iostream.h"
#include "math.h"

struct zuobiao
{
int x,y;
void set_x_y();
zuobiao & set_mid(zuobiao &a);
double set_long();
friend ostream & operator <<(ostream &out,zuobiao &a);
};

void zuobiao::set_x_y()
{
cout<<"请输入横坐标x的值:";
cin>>x;
cout<<"请输入纵坐标y的值:";
cin>>y;
}

zuobiao & zuobiao::set_mid(zuobiao &a)
{
x=(x+a.x)/2;
y=(y+a.y)/2;
return *this;
}

double zuobiao::set_long()
{
double how_long=sqrt(x*x+y*y);
return how_long;
}

ostream & operator <<(ostream &out,zuobiao &a)
{
out<<a.x<<','<<a.y<<endl;
return out;
}

void main()
{
zuobiao zb1,zb2;
zb1.set_x_y();
zb2.set_x_y();
cout<<zb1.set_mid(zb2);
cout<<zb1.set_long();
}
-----------------------------
#include "iostream.h"

struct node
{
int work_num;
int gongz;
node *next;
};

void list(node *l)
{
while(l->next!=NULL)
{
cout<<"工号:";
cout<<l->next->work_num<<endl;
cout<<"工资:";
cout<<l->next->gongz;
cout<<endl;
l=l->next;
}
}

void creat(int n)
{
node *L;
L=new node;
L->next=NULL;
for(int i=0;i<n;i++)
{
node *s;
s=new node;
cout<<"工号:";
cin>>s->work_num;
cout<<"工资:";
cin>>s->gongz;
cout<<endl;
s->next=L->next;
L->next=s;
}
list(L);
}

void main()
{
int n;
cout<<"输入您要创建的职工个数:";
cin>>n;
creat(n);
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-06-26
#include<stdio.h>
struct student
{ int No;
char name[20];
int mscore;
int escore;
int cscore;
int sum;
}stu[4];
main()
{int i;
printf("输入4名学号、姓名、数学成绩、英语成绩、C语言成绩和三门课程的总分:");
for(i=0;i<4;i++)
scanf("%d%s%d%d%d%d",&stu[i].No,stu[i].name,&stu[i].mscore,&stu[i].escore,&stu[i].cscore,&stu[i].sum);
for(i=0;i<4;i++)
printf("输出:学号:%d,姓名:%s,数学成绩:%d、英语成绩:%d、C语言成绩:%d、三门课程的总分:%d。\n",stu[i].No,stu[i].name,stu[i].mscore,stu[i].escore,stu[i].cscore,stu[i].sum);
}
第2个回答  2009-06-25
垃圾大学生!!!!!!!!!!!!!!!!!!!
第3个回答  2009-06-25
我也在夏yun的课。。。。