C语言数据结构题目

来源:百度知道 编辑:UC知道 时间:2024/07/02 10:46:59
建立两个顺序表,通过随机生成并排序。输出合并前的结果,对这两个顺序表排序,输出合并后的结束。我做到
#include<stdio.h>
#include<stdlib.h>
#define N 20
void main ()
{int a[20],b[20],c[40],i,j,k,t;
randomize();
for(i=0;i<20;i++)
{a[i]=rand()%1000;
b[i]=rand()%1000;
}
for(j=0;j<N-1;j++)
{for(k=0;k<N-1-j;k++)
{if(a[k]>a[k+1]
{t=a[k];a[k]=a[k+1];a[k+1]=t;}
if(b[k]>b[k+1]
{t=b[k];b[k]=b[k+1];b[k+1]=t;}
}
}
for(i=0;i<N;i++)
{printf("%d ",a[i]);
printf("%d ",b[i]);
}
}
运行了下有error.
error C2065: 'randomize' : undeclared identifier
error C2143: syntax error : missing ')' before '{'
error C2143: syntax error : missing ')' before '{'
请问怎么修改,
然后后面的怎么编写

randomize(); 用于利用时间初始化随机数的
你还需要#include <time.h>
randomize();属于time.h库的
而rand()才用于获取随机数。

例:
函数名: randomize
功 能: 初始化随机数发生器
用 法: void randomize(void);
程序例:

#include <stdlib.h>
#include <stdio.h>
#include <time.h>

int main(void)
{
int i;

randomize();
printf("Ten random numbers from 0 to 99\n\n");
for(i=0; i<10; i++)
printf("%d\n", rand() % 100);
return 0;
}

randomize(); 要加个头文件吧..名字具体我忘了,网上搜一下就知道了.