//is_leap_year//如果判断是闰年返回1//不是闰年,返回0//一个函数如果不写返回类型,默认返回int类型intis_leap_year(int n){if((n %4==0&& n &100!=0)||(n %400==0))return1;return0;}intmain(){int y =0;for(y =1000; y <=2000; y++){if(is_leap_year(y)==1){printf("%d", y);}}return0;}
3.写一个函数,实现整型有序数组的二分查找
intbinary_search(int a[],int k,int s){int left =0;int right = s -1;while(left<=right){int mid =(left + right)/2;if(a[mid]> k){
right = mid -1;}elseif(a[mid]< k){
left = mid +1;}else{return mid;}}return-1;//找不到的情况}intmain(){int arr[]={1,2,3,4,5,6,7,8,9,10};int key =7;int sz =sizeof(arr)/sizeof(arr[0]);//找到了就返回找到的位置的下标//找不到就返回-1//数组Arr传参,实际传递的不是数组本身//仅仅传过去了数组首元素的地址int ret =binary_search(arr,key,sz);if(-1== ret){printf("找不到\n");}else{printf("找到了,下标是:%d\n", ret);}return0;}
4.写一个函数,每调用一次这个函数,就会将num增加1
voidAdd(int* p){(*p)++;}intmain(){int num =0;Add(&num);printf("%d\n", num);//1Add(&num);printf("%d\n", num);//2Add(&num);printf("%d\n", num);//3return0;}