昭通信息网
健康
当前位置:首页 > 健康

C语言程序开发经典实例之八

发布时间:2019-09-13 20:34:20 编辑:笔名

【程序71】

题目:编写input()和output()函数输入,输出5个学生的数据记录。

1.程序分析:

2.程序源代码:

#define N 5

struct student

{

char num[6];

char name[8];

int score[4];

} stu[N];

input(stu)

struct student stu[];

{

int i,j;

for(i=0;i<N;i++)

{

printf("\n please input %d of %d\n",i+1,N);

printf("num: ");

scanf("%s",stu[i].num);

printf("name: ");

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

for(j=0;j<3;j++)

{

printf("score %d.",j+1);

scanf("%d",&stu[i].score[j]);

}

printf("\n");

}

}

print(stu)

struct student stu[];

{

int i,j;

printf("\nNo. Name Sco1 Sco2 Sco3\n");

for(i=0;i<N;i++)

{

printf("%-6s%-10s",stu[i].num,stu[i].name);

for(j=0;j<3;j++)

printf("%-8d",stu[i].score[j]);

printf("\n");

}

}

main()

{

input();

print();

}

【程序72】

题目:创建一个链表。

1.程序分析:

2.程序源代码:

/*creat a list*/

#include "stdlib.h"

#include "stdio.h"

struct list

{

int data;

struct list *next;

};

typedef struct list node;

typedef node *link;

void main()

{

link ptr,head;

int num,i;

ptr=(link)malloc(sizeof(node));

ptr=head;

printf("please input 5 numbers==>\n");

for(i=0;i<=4;i++)

{

scanf("%d",&num);

ptr->data=num;

ptr->next=(link)malloc(sizeof(node));

if(i==4) ptr->next=NULL;

else ptr=ptr->next;

}

ptr=head;

while(ptr!=NULL)

{

printf("The value is ==>%d\n",ptr->data);

tr=ptr->next;

}

}

【程序73】

题目:反向输出一个链表。

1.程序分析:

2.程序源代码:

/*reverse output a list*/

#include "stdlib.h"

#include "stdio.h"

struct list

{

int data;

struct list *next;

};

typedef struct list node;

typedef node *link;

void main()

{

link ptr,head,tail;

int num,i;

tail=(link)malloc(sizeof(node));

tail->next=NULL;

ptr=tail;

printf("\nplease input 5 data==>\n");

for(i=0;i<=4;i++)

{

scanf("%d",&num);

ptr->data=num;

head=(link)malloc(sizeof(node));

head->next=ptr;

ptr=head;

}

ptr=ptr->next;

while(ptr!=NULL)

{ printf("The value is ==>%d\n",ptr->data);

ptr=ptr->next;

}

}

小孩流鼻血是怎么回事
宝宝发烧39度小妙招
糖尿病胃轻瘫消化不好的治疗方法
一岁多的宝宝不爱吃饭怎么办