首先说明一下,这道题目的答案却是是 3。
我在编译器运行了一下你的代码:
接下来分析一下这个题目的流程:
1、在if(x <y)这个判断条件中,x==1, y==-1,条件是不成立的,所以走else分支。
2、在else分支中,z==2,现在 z+=1之后, z==3。
3、在最后一步printf中打印最终结果z == 3。
如果以上回答对你有帮助,请采纳下,谢谢。
void input(char a[]){char *sint k=0
scanf("%s",s)
while(s){a[k++]=*ss++}
} //input
void sort(int a[],int n){ //n为数组元素个数
int i,j=n-1
int flag=1,tp
while(flag){
flag=0i=0
while(i<j){
if(a[i]>a[i+1]){tp=a[i]a[i]=a[i+1]a[i+1]=tpflag=1}
}
--j
}
}//Bubble_Sort
int search(int a[],int n,int key){//n是实际元素个数,应小于数组大小
int low=0,high=n-1
int mid
while(low<=high){
mid=(low+high)/2
if(a[mid]==key) return mid
else if(a[mid]>key) high=mid-1
else low=mid+1
}
for(int i=n-1i>=low--i) a[i+1]=a[i]
a[low]=key
return -1 //所查关键字不在数组中
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)