C语言入门001
数组运算
1.冒泡排序
int main(){
int a[]={12,45,2,45,66,73,24,34,24,55,67,77};
int len=sizeof(a)/sizeof(a[0]);
int i,j,temp;
for (j=len-1;j>0;j--){
for (i=0;i<len-1;i++){
if (a[i]>a[i+1]){
temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;
}
}
}
for (i=0;i<len;i++) {
printf("%5d",a[i]);
}
return 0;
}
2.数组转置
int main(){
int a[2][3]={{1,2,3},{4,5,6}};
int b[3][2]={0};
int i,j;
for(i=0;i<2;i++){
for (j=0;j<3;j++){
b[j][i]=a[i][j];
}
}
// printf("%d%d",b[0][0],b[0][1]);
return 0;
}
3.二分法查找数组内某一值是否存在
int main(){
int a[10]={0,1,5,6,7,12,35,44,58,63};
int b,low=0,mid,high=sizeof(a)/sizeof(a[0])-1,found=0;
scanf("%d",&b);
while(high>=low){
mid=(high+low)/2;
if(b<a[mid]){
high=low-1;
}
else if(b>a[mid]){
low=mid+1;
}
else{
found=1;
break;
}
}
if(found==1){
printf("在数组内");
}
else{
printf("不在数组内");
}
}