2008秋季-计算机软件基础-0903课堂用例(2)
#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);
}
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);
}