我的CSDN第一天,之前保研的事情终于忙结束了,最终去了HUST,想来学了三年的通信,专业课内学过C和Java以及数据结构,但是编程都没有怎么好好练习,仅仅停留在了入门的阶段。趁着保研后这段空闲的时光,学习一下面向对象语言的C++,学习过程建立在已经学会C语言的基础上。
引用
引用相当于给变量起另一个名字,引用和原变量之间是等价的。
引用可以用于交换,在C语言中,两个变量的交换需要通过指针来使用,但C++中,引用和变量本身是等价的,所以可以通过引用来实现交换。
void swap(int &a,int &b)
{
int temp;
temp=a;a=b;b=temp;
}
int main()
{
int n1=4;
int n2=8;
cout<<n1<<" "<<n2<<endl;
swap(n1,n2);
cout<<n1<<" "<<n2<<endl;
return 0;
}
数组部分复习
顺序查找
#include <iostream>
using namespace std;
#define MAX 100
int main()
{
int k,x;
int array[]={2,3,1,7,5,8,9,0,4,6};
cout<<"请输入要查找的数据:";
cin>>x;
for(k=0;k<10;++k)
if(x==array[k])break;
if(k==10)cout<<"没有找到";
else cout<<x<<"的存储位置是:"<<k;
return 0;
}
二分法查找
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int low,high,mid,x;
int array[]={0,1,2,3,4,5,6,7,8,9};
cout<<"请输入要查找的数据:";
cin>>x;
low=0;
high=9;
while(low<high){
mid=(low+high)/2;
if(x==array[mid])
break;
if(x<array[mid])
high=mid-1;
else low=mid+1;
}
if(low>=high)cout<<"没有找到"<<endl;
else cout<<x<<"的位置是:"<<mid<<endl;
return 0;
}