#include <stdio.h>
#include <string.h>
void Swap(int* pa,int* pb)
{
int k=0;
k=*pa;
*pa=*pb;
*pb=k;
//形参无法影响实参
}
int main()
{
//库函数使用
{
//strcpy函数
char arr1[]="bit";
char arr2[20]="######";
//strcpy(目的地,源头);
strcpy(arr2,arr1);//strcpy——string copy——字符串拷贝
printf("%s\n",arr2);
//memset——memory set内存设置
char arr[]="hello world";
memset(arr,'*',5);
printf("%s\n",arr);
}
int a,b=0;
scanf("%d%d",&a,&b);
int* pa=&a;
int* pb=&a;
Swap(&a,&b);
printf("%d %d\n",a,b);
return 0;
}
———————————————————————————————————————————
#include <stdio.h>
//二分查找
//在一个有序数组中查找具体的某个数
//找到了返回下标,找不到返回-1
// 传过来的是arr的首元素地址,本质上arr0为指针
int binary_search(int arr0[],int m,int sz)
{
//int sz=sizeof(arr0)/sizeof(arr0[0]);
int left= 0;
int right=sz-1;
//二分查找
while(left<=right)//一定是小于等于
{
int mid=(left+right)/2;//中间元素下标——不可放置循环外部
if(arr0[mid]<m)
{
left=mid+1;
}
else if(arr0[mid]>m)
{
right=mid-1;
}
else
{
return mid;//找到
}
}
return -1;//找不到
}
int main()
{
int arr[]={1,2,3,4,5,6,7,8,9,10};//定义数组
int k=7;//定义查找对象
int sz=sizeof(arr)/sizeof(arr[0]);//定义数组长度
int n=binary_search(arr,k,sz);//binary_search(查找数组,查找对象,数组长度)
if(n==-1)
{
printf("找不到指定数字");
}
else
{
printf("%d\n",n);//查找对象下标
}
return 0;
}