王道OJ课时10作业
#include <iostream>
//定义顺序表
typedef struct SequenceList{
int data[20];
int length;
}SequentList;
void insertSecondPosition(SequentList &s,int insertNumber){
for(int i=s.length-1;i>=1;i--){
s.data[i+1]=s.data[i];
}
s.data[1]=insertNumber;
s.length++;
}
bool deleteOneNumber(SequentList &s,int deletePosition){
if(deletePosition<1||deletePosition>s.length){
return false;
}
for(int i=deletePosition;i<s.length;i++){
s.data[i-1]=s.data[i];
}
s.length--;
return true;
}
//打印顺序表
void printList(SequentList &s){
for(int i=0;i<s.length;i++){
printf("%3d",s.data[i]);
}
printf("\n");
}
int main() {
SequentList s;
s.data[0]=1;
s.data[1]=2;
s.data[2]=3;
s.length=3;
int insertNumber;
scanf("%d",&insertNumber);
insertSecondPosition(s,insertNumber);
printList(s);
int deletePositon;
scanf("%d",&deletePositon);
bool deleteResult=deleteOneNumber(s,deletePositon);
if(deleteResult==false){
printf("false");
}else{
printList(s);
}
return 0;
}