#include
<
stdio.h
>
typedef
float
datatype;
void
update(
int
xiabiao,datatype b[],
int
xinshu);
void
charu(
int
weizhi,datatype b[],
datatype charushu,
int
shuzuchang);
void
shanchu(
int
weizhi,datatype b[],
int
*
changdu);
void
shuchu(datatype aa[],
int
biaochang);
void
chazhao(datatype aa[],
int
biaochang,datatype beizhaoshu);
void
shuchuFloat(datatype aa[],
int
biaochang);
void
main()
{
/*
顺序存储的线性表 - 顺序表
*/
datatype a[
100
]
=
{
1.1
,
2.2
,
4.4
,
5.5
};
int
biaochang
=
4
,i;
int
charuweizhi
=
2
;
int
shanchuweizhi
=
1
;
printf(
"
原始线性表\n
"
);
shuchuFloat(a,biaochang);
printf(
"
线性表插入3以后\n
"
);
charu(charuweizhi,a,
3.3
,
&
biaochang);
//
changdu=&biaochang
shuchuFloat(a,biaochang);
printf(
"
线性表删除下标位置%d以后\n
"
,shanchuweizhi);
shanchu(shanchuweizhi,a,
&
biaochang);
shuchuFloat(a,biaochang);
chazhao(a,biaochang,
4
);
chazhao(a,biaochang,
10
);
}
void
charu(
int
weizhi,datatype b[],
int
charushu,
int
*
changdu)
{
int
i;
for
(i
=*
changdu;i
>
weizhi;i
--
)
b[i]
=
b[i
-
1
];
b[weizhi]
=
charushu;
(
*
changdu)
++
;
}
void
shanchu(
int
weizhi,datatype b[],
int
*
changdu)
{
int
i;
for
(i
=
weizhi;i
<*
changdu;i
++
)
b[i]
=
b[i
+
1
];
(
*
changdu)
--
;
}
void
shuchu(datatype aa[],
int
biaochang)
{
int
i;
for
(i
=
0
;i
<
biaochang;i
++
)
printf(
"
aa[%d]=%d
"
,i,aa[i]);
printf(
"
\n biaochang:%d \n
"
,biaochang);
printf(
"
\n
"
);
}
void
shuchuFloat(datatype aa[],
int
biaochang)
{
int
i;
for
(i
=
0
;i
<
biaochang;i
++
)
printf(
"
aa[%d]=%f
"
,i,aa[i]);
printf(
"
\n biaochang:%d \n
"
,biaochang);
printf(
"
\n
"
);
}
void
chazhao(datatype aa[],
int
biaochang,datatype beizhaoshu)
{
int
i;
for
(i
=
0
;i
<
biaochang;i
++
)
if
(aa[i]
==
beizhaoshu)
{
printf(
"
找到了%d,位置%d\n
"
,beizhaoshu,i);
break
;
}
if
(i
==
biaochang)
printf(
"
%d没有找到\n
"
,beizhaoshu);
}