C语言编程 好追加分3

来源:百度知道 编辑:UC知道 时间:2024/05/03 07:43:21
用随机数发生器产生10个数(1--50)的序列.没产生一个数按照升序插入到序列中,输出没次产生的随机数与插入的数列.

#include "stdio.h"
#include "time.h"
#include "stdlib.h"

struct list{
int data;
struct list * next;
};

typedef struct list * List;
void print_list(List ml);

List insert_list(List l,List node);
int main()
{
int i=0;
List ml=NULL;
List node;
int d=0;
time_t t;

t=time(NULL);
srand(t);

for(i=0;i<10;i++){
d=rand()%50+1;
node=(List)malloc(sizeof(struct list));
node->data=d;
node->next=NULL;
ml=insert_list(ml,node);
printf("insert data : %d\n",d);
print_list(ml);
}
return 0;
}

List insert_list(List ml,List node)
{
List ptr=ml;
List pre_ptr=ml;
if(ptr==NULL)
{
ml=node;
return ml;
}else if(ptr->data>node->data){
node->next=ptr;
ml=nod