C语言结构体章节入门题目如下

1. 编写一个程序,由主函数和如下函数构成。
⑴设计函数:input(),输入n个无序的整数存储在一个数组中;
⑵设计函数:sort(),用起泡法对数组中的n各数据从大到小排序;
⑶设计函数:search(),用折半查找法在已排序的n个数种查找指定的数据,若存在,返回其所处的位置,否则,将其插入适当位置使数据仍有序

你们可以复制...但是请先验证一下....我只是个大一的刚学的..表用那些太高端我们没学过的..

void input(char a[]){
char *s;int k=0;
scanf("%s",s);
while(s){a[k++]=*s;s++;}
} //input
void sort(int a[],int n){ //n为数组元素个数
int i,j=n-1;
int flag=1,tp;
while(flag){
flag=0;i=0;
while(i<j){
if(a[i]>a[i+1]){tp=a[i]; a[i]=a[i+1];a[i+1]=tp; flag=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-1;i>=low;--i) a[i+1]=a[i];
a[low]=key;
return -1; //所查关键字不在数组中
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-12-29
多撒风大成v疯颠颠大
相似回答