主题:我才开始学数据结构~遇到个问题希望大家帮帮忙~
是线形表的一个问题
设计一个算法将x插入到一个有序(从小到大)的线性表(顺序存储结构)的适当位置上,以保证线性表的有序性.
#include <stdio.h>
#define maxlen 20
void insertsqlist(int x,int s[],int *np)
{
int n;
n=*np;
if(n==0)
s[n]=x;
else
{
while(s[n-1]>x)
{
s[n]=s[n-1];
n=n-1;
}
s[n]=x;
}
++(*np);
}
void print(int s[],int *np)
{
int i,n;
n=*np;
for(i=0;i<n;i++)
{
printf("%d",s[i]);
}
printf("\n");
}
main()
{
int a[maxlen]={11,33,55,66,77,88,99};
int c,*e;
c=22;
*e=7;
print(a,e);
insertsqlist(c,a,e);
print(a,e);
}
这个程序有错误么?为什么TC总是执行不了?
谢谢~[em18]
设计一个算法将x插入到一个有序(从小到大)的线性表(顺序存储结构)的适当位置上,以保证线性表的有序性.
#include <stdio.h>
#define maxlen 20
void insertsqlist(int x,int s[],int *np)
{
int n;
n=*np;
if(n==0)
s[n]=x;
else
{
while(s[n-1]>x)
{
s[n]=s[n-1];
n=n-1;
}
s[n]=x;
}
++(*np);
}
void print(int s[],int *np)
{
int i,n;
n=*np;
for(i=0;i<n;i++)
{
printf("%d",s[i]);
}
printf("\n");
}
main()
{
int a[maxlen]={11,33,55,66,77,88,99};
int c,*e;
c=22;
*e=7;
print(a,e);
insertsqlist(c,a,e);
print(a,e);
}
这个程序有错误么?为什么TC总是执行不了?
谢谢~[em18]