首先,指针默认只有一个地址的长度的空间,存不了那么多的字符。
成都创新互联一直通过网站建设和网站营销帮助企业获得更多客户资源。 以"深度挖掘,量身打造,注重实效"的一站式服务,以成都网站建设、网站制作、移动互联产品、营销型网站建设服务为核心业务。十年网站制作的经验,使用新网站建设技术,全新开发出的标准网站,不但价格便宜而且实用、灵活,特别适合中小公司网站制作。网站管理系统简单易用,维护方便,您可以完全操作网站资料,是中小公司快速网站建设的选择。
其次,传值和传地址一塌糊涂,完全就是乱写么。
scanf的第二个参数是地址,如果本身不是指针则需要取址符。
我给你重写了算了
#includestdio.h
int Retrieve(int array[],int length,int x);/*形参x直接传值就可以了*/
int main()
{
int *a,x;
int length,i;
scanf("%d",length);
a = (int)malloc(sizeof(int)*length); /*申请一个内存空间用来存放数据,或者直接用一个大数组也可以*/
#includestdio.h
int main()
{
int a[5];
int i,max,min;
printf("input number:\n");
for(i=0;i5;i++)
scanf("%d",a[i]);
max=a[0];
min=a[0];
for(i=0;i5;i++){
if(a[i]max)
max=a[i];
}
for(i=0;i5;i++){
if(a[i]min)
min=a[i];
}
for(i=0;i5;i++){
printf("%d",a[i]);
printf(" ");
}
printf("\n");
printf("最大值为%d\n",max);
printf("最小值为%d\n",min);
return 0;
}
#include stdio.h
#include stdlib.h
#include time.h
#define N 20
void Sort(int a[],int n) {
int i,j,k,t;
for(i = 0; i n - 1; ++i) {
k = i;
for(j = i + 1; j n; ++j) {
if(a[k] a[j]) k = j;
}
if(i != k) {
t = a[k];
a[k] = a[i];
a[i] = t;
}
}
}
int Find(int a[],int n,int x) {
int low = 0,high = n - 1,mid;
while(low = high) {
mid = (low + high)/2;
if(x == a[mid]) return mid;
else if(x a[mid]) low = mid + 1;
else high = mid - 1;
}
return -1;
}
void Show(int a[],int n) {
int i;
for(i = 0; i n; ++i) {
printf("%d ",a[i]);
}
printf("\n");
}
int main() {
int a[20],i,x,res;
srand((unsigned)time(NULL));
for(i = 0; i N; ++i)
a[i] = rand()%N; // 每个数都在1 -- 100之间
Show(a,N);
Sort(a,N);
Show(a,N);
x = rand()%100 + 1;
res = Find(a,N,x);
if(res = 0) printf("数值%d的下标为%d。\n",a[res],res);
else printf("数列中没有找到数值%d。\n",x);
return 0;
}
C代码和运行结果如下:
输入5,成功输出了其在给定数组中的下标为4,结果正确,望采纳~
附源码:
#include stdio.h
int search(int a[], int n, int x) { // 返回数组a[]中x的下标
int i;
for (i = 0; i n; i++) {
if (a[i] == x)
return i;
}
return -1; // 数组中没有x则返回-1
}
int main() {
int x, a[10] = {7,9,3,4,5,2,1,6,10,8};
scanf("%d", x); // 用户输入数x
printf("%d ", search(a, 10, x)); // 输出x在数组中的下标
return 0;
}
当前标题:C语言怎么查找函数 c语言查找函数的设计原理及方案
转载来源:https://www.cdcxhl.com/article16/doeppgg.html
成都网站建设公司_创新互联,为您提供搜索引擎优化、App设计、网站营销、营销型网站建设、自适应网站、网站改版
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联