| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 888 人关注过本帖
标题:用指针求出最大最小值,请问为啥说p没有定义啊,错哪了
只看楼主 加入收藏
唐兵
Rank: 2
来 自:四川泸州合江
等 级:论坛游民
帖 子:150
专家分:12
注 册:2012-12-1
收藏
得分:0 
回复 7楼 wp231957
地址在移动啊

一个人如果不比自己一把,你永远不知道自己究竟有多厉害
2012-12-18 23:24
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:1 
程序代码:
#include<stdio.h>

//使用int*型指针 求一个数组的最大值  最小值
int main( void )
{
    int a[10]={0};
    int *p=&a[0];
    int *max=&a[0];
    int *min=&a[9];
    int i=0,tmp=0;
    puts("input a[10]:\n");
    for (i=0;i<10;i++) scanf("%d",&a[i]);
    for(i=0;i<10;i++)
    {
        if (*p>*max)  {tmp=*max;*max=*p;*p=tmp;}
        p++;
    }
    p=&a[0];
       for(i=0;i<10;i++)
    {
        if (*p<*min)  {tmp=*min;*min=*p;*p=tmp;}
        p++;
    }
    printf("min=%d  max=%d\n",*min,*max);
    return 0;
}
还没弄好吗

DO IT YOURSELF !
2012-12-19 08:59
唐兵
Rank: 2
来 自:四川泸州合江
等 级:论坛游民
帖 子:150
专家分:12
注 册:2012-12-1
收藏
得分:0 
回复 12楼 wp231957
good boy!for循环里面用指针地址,错哪了啊?

一个人如果不比自己一把,你永远不知道自己究竟有多厉害
2012-12-19 12:48
h1023417614
Rank: 4
等 级:禁止访问
帖 子:211
专家分:237
注 册:2012-11-30
收藏
得分:0 
回复 11楼 唐兵
你没明白我的意思耶
2012-12-19 12:51
a646698961
Rank: 2
等 级:论坛游民
威 望:1
帖 子:49
专家分:94
注 册:2012-12-19
收藏
得分:1 
main()
{
    int i,*min,*max,*p,a[10];
    p = a;
    for(i = 0;i < 10;i++)
        scanf("%d,",&a[i]);
    *min = *p;
    *max = *p;
    for(i = 0;i < 10;i++)
    {
        if (*p < *min)
            *min = *p;
        else if (*p > *max)
            *max = *p;
        p++;
    }
    printf("%d,%d",*min,*max);
    getch();
}

欢迎来讨论和分享经验,QQ:646698961
2012-12-19 12:56
a646698961
Rank: 2
等 级:论坛游民
威 望:1
帖 子:49
专家分:94
注 册:2012-12-19
收藏
得分:0 
怎么把地址当for循环的参数用?   p在前面不是已经是地址了?

欢迎来讨论和分享经验,QQ:646698961
2012-12-19 13:03
麦麸
Rank: 2
等 级:论坛游民
帖 子:22
专家分:24
注 册:2012-11-14
收藏
得分:2 
#include<stdio.h>
 void main ()
 {
     
     int *max,*min;
      int a[10],i;
      int *p;
      p=a;
      min=p,max=p+9;
      printf("input a[10]:\n");
      for (;p<(a+10);p++)
          scanf("%d",p);
      //*min=*p,*max=*(p+2);
      for(p=a+1;p<(a+10);p++)
      {
      if (*min>*p)
          min=p;
      if (*max<*p)
          max=p;
      }
    printf("%d,%d\n",*min,*max);
    return 0;
 }
2012-12-19 23:47
唐兵
Rank: 2
来 自:四川泸州合江
等 级:论坛游民
帖 子:150
专家分:12
注 册:2012-12-1
收藏
得分:0 
回复 17楼 麦麸
谢了哈,完全符合我的意思

一个人如果不比自己一把,你永远不知道自己究竟有多厉害
2012-12-20 13:18
唐兵
Rank: 2
来 自:四川泸州合江
等 级:论坛游民
帖 子:150
专家分:12
注 册:2012-12-1
收藏
得分:0 
回复 15楼 a646698961
getch();是什么意思,运行说它没有定义

一个人如果不比自己一把,你永远不知道自己究竟有多厉害
2012-12-20 17:03
唐兵
Rank: 2
来 自:四川泸州合江
等 级:论坛游民
帖 子:150
专家分:12
注 册:2012-12-1
收藏
得分:0 
回复 17楼 麦麸
#include<stdio.h>
 void main ()
 {
      
      int *max,*min;
       int a[10],i;
       int *p;
       p=a;
       min=p,max=p+9;
       printf("input a[10]:\n");
       for (;p<(a+10);p++)
           scanf("%d",p);
       //*min=*p,*max=*(p+2);
       for(p=a+1;p<(a+10);p++)
       {
       if (*min>*p)
           min=p;/*为啥这改为*min=*p输入0123456789最小值是1而不是0呢/
       if (*max<*p)
           max=p;
       }
     printf("%d,%d\n",*min,*max);
     return 0;
 }

一个人如果不比自己一把,你永远不知道自己究竟有多厉害
2012-12-20 17:10
快速回复:用指针求出最大最小值,请问为啥说p没有定义啊,错哪了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.035769 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved