c语言-函数执行顺序,函数返回类型那些事
来源:互联网 发布:如意时时彩源码 编辑:程序博客网 时间:2024/05/16 12:50
关于二分查找问题我们可以向自己提三个问题?
①这两个程序执行效果相同?
②两个程序执行的代码编写顺序为什么不同,结果一样?
③自定义函数为什么可以没有函数返回值怎么可以没有?
程序一:
#include <stdio.h>
int main(){int binarySearch(int a[], int n, int key);
int i, val, ret;
int a[8]={-32, 12, 16, 24, 36, 45, 59, 98};
for(i=0; i<8; i++)
printf("%d\t", a[i]);
printf("\n请输人所要查找的元素:");
scanf("%d",&val);
ret = binarySearch(a,8,val);
if(-1 == ret)
printf("查找失败 \n");
else
printf ("查找成功 \n");
return 0;
}
int binarySearch(int a[], int n, int key)//自定义函数
{
int low = 0;int high = n - 1;
while(low<= high){
int mid = (low + high)/2;
int midVal = a[mid];
if(midVal<key)
low = mid + 1;
else if(midVal>key)
high = mid - 1;
else
return mid;
}
return -1;
}
程序二:
#include <stdio.h>
binarySearch(int a[], int n, int key)//自定义函数
{
int low = 0;
int high = n - 1;
while(low<= high){
int mid = (low + high)/2;
int midVal = a[mid];
if(midVal<key)
low = mid + 1;
else if(midVal>key)
high = mid - 1;
else
return mid;
}
return -1;
}
int main(){
int i, val, ret;
int a[8]={-32, 12, 16, 24, 36, 45, 59, 98};
for(i=0; i<8; i++)
printf("%d\t", a[i]);
printf("\n请输人所要查找的元素:");
scanf("%d",&val);
ret = binarySearch(a,8,val);
if(-1 == ret)
printf("查找失败 \n");
else
printf ("查找成功 \n");
return 0;
}
- c语言-函数执行顺序,函数返回类型那些事
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部…
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部变量
- C语言的那些秘密之---函数返回局部变量
- 学习spark系列---scala 编程基础
- Android保存图片到系统不能及时生成缩略图的解决办法
- QT布局管理
- JAVA的学习开篇
- ubuntu 安装 tool
- c语言-函数执行顺序,函数返回类型那些事
- ios MD5加密32位(区分大小写)
- 【JavaScript】随笔
- Mysql+Heartbeat+Drbd搭建mysql的高可用
- 一个Spark推荐系统引擎的实现
- PHP 实现二分查找
- SIP基本概念
- window切图快捷键
- 基于nginx的静态网页部署