C语言第二阶段考核答案.docVIP

  • 22
  • 0
  • 约7.3千字
  • 约 12页
  • 2018-01-18 发布于河南
  • 举报
1、编写函数,实现对按从小到大排列的n个元素的有序数组a进行二分查找x的算法,若查找成功返回该元素下标,否则返回-1。 例:有序数组 a[10]={0,1,2,3,4,5,6,7,8,9} 输入:2 输出:2 输入:10 输出:-1 #include stdio.h void main() {int fn(int a[],int n,int x); int a[10]={0,1,2,3,4,5,6,7,8,9},x; scanf(%d,x); printf(%d\n,fn(a,10,x)); } int fn(int a[],int n,int x) { int l,r,mid,flag=-1; l=0;r=n-1; while(l=r) {mid=(l+r)/2; if(a[mid]==x){flag=mid;break;} if(a[mid]x) l=mid+1; else r=mid-1; } return flag; } 2、编写一个程序完成字符串拷贝的功能函数str_copy(a,b),可将字符数组a中的对应内容ascii码加1后拷贝到b中。 输入:abc 输出:bcd #include stdio.h void str_copy(char a[],char b[]) { int i; while(*a) { *b++

文档评论(0)

1亿VIP精品文档

相关文档