- 43
- 0
- 约3.37千字
- 约 13页
- 2017-09-13 发布于湖北
- 举报
第二题:建立一个线性链表,其元素值为:包括学号、姓名、性别、年龄等信息。并依次从键盘输入(输入时要有相应的提示)以输入0结束,然后依次输出线性链表中的各元素值。
#include stdlib.h
#include stdio.h
#define null 0
#define size 40
struct node
{
char num[6];
char name[8];
char sex[2];
int age;
struct node * next;
};
void main ()
{
int x;
struct node * head;
struct node * p,* q;
head=(struct node *)malloc(size);
p=head;
printf(if exit:pleas into 0 );
scanf(%d,x);
while (x!=0)
{
q=(struct node *)malloc(size);
printf(num\n);
scanf(%s,q-num);
printf(name\n);
scanf(%s,q-name);
printf(sex\n);
scanf(%s,q-sex);
printf(age\n);
scanf(%d,q-age);
p-next=q;
p=q;
printf(if exit:pleas into 0 );
scanf(%d,x);
}
p-next=null;
p=head;
printf(\n num name sex age \n);
while (p!=null)
{
printf(%8s%8s%6s%6d\n,p-num,p-name,p-sex,p-age);
p=p-next;
}
}
void main ()
{
int x,iage,find=0;
struct node * head;
struct node * p,* q,*pt;
head=(struct node *)malloc(size);
p=head;
printf(if exit:pleas into 0 );
scanf(%d,x);
while (x!=0)
{
q=(struct node *)malloc(size);
printf(num\n);
scanf(%s,q-num);
printf(name\n);
scanf(%s,q-name);
printf(sex\n);
scanf(%s,q-sex);
printf(age\n);
scanf(%d,q-age);
p-next=q;
p=q;
printf(if exit:pleas into 0 );
scanf(%d,x);
}
p-next=null;
p=head;
printf(\n num name sex age \n);
while (p!=null)
{
printf(%8s%8s%6s%6d\n,p-num,p-name,p-sex,p-age);
p=p-next;
}
printf(pleas into age :\n);
scanf(%d,iage);
pt=head;
p=pt;
pt=pt-next;
while (pt!=null)
{
if(pt-age==iage)
{
p-next=pt-next;
find=1;
}
else
p=pt;
pt=pt-next;
}
if(find==0)
printf(no find %d ,iage);
else
p=head;
printf(\n num name sex age \n);
while (p!=null)
{
printf(%8s%8s,p-num,p-name);
printf(%8s%5d\n,p-sex,p-age);
p=p-next;
}
}
第四题:现在假设有两个多项式a(x)=7x^8+6x^5+12x^2-9;b(x)=3x^11+10x^8+8x^2编写一个程序将这两个多项式相加,输出两个多项式及相加的结果
#includestdio.h
#includestdlib.h
typedef struct polynode
{
int coef;
int exp;
struct polynode *next;
}PNode;
PNode *Creat_Linkst(int n);
void PolyAdd(PNo
原创力文档

文档评论(0)