关于移除元素的分析:
//if 我们将一个数组的其中的一个ops移除;
for(int i=ops+1;i<count_size;i++){
vulus[i-1]=vulus[i];
}
count_size--;
对于移除其中的一个元素我们可用后者补上来将他替换掉;
那如何插入个函数呢; //无序
if(current_size<caryle){
current_size++;
vulus[current_size-1]=new_point;
}
对于插入函数//有序的位置;思路是大到小移动;
if(current_size<caryle){
current_size++;
for(int i=currrent_size-1; i<ops/*位置*/; i--){
vulus[i] =vulus[i-1];
}
vulus[ops] =new_opint;
}
关于交换数组的概念:
bouble temp =valua[i] ;
valua[i] =valua[j];
valua[j] =temp;
//交换valua[i]的值valua[j];
关于持续性的数值输入:
count int countsize=1000;
double value[countsize];
for(int i=0;i< countsize;i++){
cin>> value[i];
printf("\t");
cout<< value[i]<<endl;
}
利用while 进行写如函数:
void number_i(){
const int countsize =100;
double input;
int size =0;
double value[countsize];
while (cin>> input){
size++;
if(size< countsize){
value[size]=input;
}else
return ;
cout<< "value[" <<size<< "]<<value[size]<<endl;
cout<< input<<endl;
关于C++的数组进行排序;sort; #include<algorithm>
#include<algirithm>
sort (vlaie.begin(),vlaie.end())//掌握这玩意要超过c++的高级特性;
关于二分查找的数据:
bool found =false;
const int size=10;
double value[size];
int low =0;
int high =size-1;
int ops=0;
int number;
cout<< "please input a nemubre: ";
cin>>number;
int serct_value=number;
whilw(low<=high&& !found){
ops=(low+high)/2;//zhongjian ;
if(value[ops] ==secrt_value){
found =true;}
else if(value[ops] <secrt_value){
low=ops+1;}
else{
high=ops-1;
}
}
if(found) ;
cut << "found";
else
{
cout<<"meiyou found";
}
数组与函数:如何加其函数的sum;
double sum(double value[],int size){
int talt=0;
for(int i=0;i<size;i++){
talt=valua[i]+talt;
}
cout<< talt<<endl;
return talt;
}
关于写错误的算法的问题: cin.fail(),cin.clear(),cin.sync(),cin.ignore()的解释
关于cin.sync()的详细解释;
/*使用的cin.sync(); 清除掉缓冲区:
1 | 2 | 34 | 4 |
---|
cin.sync();
空的缓冲区可进行利用:
cout<< "cin.fail()" <<cin.fail()<< endl;
int coutsize = 0;
cout <<"please enter vaslue:" ;
bool more =true;
while(more){
double input;
cin>> input;
if(cin.fail()){
more =false;
}
coutsize++;
}
cin.fail()// 判断cin>> a 的数据是否cin 错误;
修改算法(找位置和最小值)
int smllest=0;
for(int i=0;i< (sizeof(value)/sizeof(int));i++){
if(value[i]>value[smllest]){
smllest = i;
}//ke找出位置并找出最小的数据;
关于二维数组:
访问二维数组:
for(int i=0;i<width ;i++){
for(int j =0;j< height;j++){
cout<< set(8)<<count[i][j];
cout<<endl;
}
}