void SMInsertValue(StrSM S,int lineIdx,int colIdx,double value)
{
int SnumLine=S.numLine,SnumCol=S.numCol;
int seekStart,seekStop;
int idx_i;
if(lineIdx<=0||lineIdx>SnumLine||colIdx<=0||colIdx>SnumCol)
return;
seekStart=S.idxLineStart[lineIdx-1];
seekStop=S.idxLineStart[lineIdx+1-1]-1;
//~~~need modify~~~
for(idx_i=seekStart;idx_i<=seekStop;idx_i++)
{
if(S.idxCol[idx_i-1]!=colIdx && S.idxCol[idx_i-1]!=0)
continue;
else if(S.idxCol[idx_i-1]==colIdx)
{
S.value[idx_i-1]=value;
break;
}
else if(S.idxCol[idx_i-1]==0)
{
S.idxCol[idx_i-1]=colIdx;
S.value[idx_i-1]=value;
break;
}
}
//seek and insert value
return;
}