黑马程序员技术交流社区

标题: C语言指针代码实际例子 [打印本页]

作者: brenthe    时间: 2016-5-12 22:44
标题: C语言指针代码实际例子
1.输入3个整数,按由小到大的顺序输出。要求用指针完成。
#include <stdio.h>
void main()
    {
          int *p1,*p2,*p,a,b;
      scanf("%d,%d",&a,&b);
      p1=&a;   
          p2=&b;
       if(a<b)
          {p=p1;p1=p2;p2=p;}
          //{p1=&b;p2=&a;}      
      printf("a=%d,b=%d\n",a,b);
      printf("max=%d,min=%d\n",*p1,*p2);             
}
2.有一个整型数组a,有10个元素,输出数组中的全部元素。要求用指针法完成。
#include <stdio.h>
void  main()
{
        int *p,i,a[10];
     p=a;

  for(i=0;i<10;i++)
scanf("%d",p++);
  for(i=0;i<10;i++,p++)
         printf("%d ",*p);
  printf("\n");
}
3.用指针方法统计10个数中正数、负数和零的个数,并分别求正数的总和,负数的总和。
#include <stdio.h>
void main()
{
int a[10];
int i,*p,sum1,sum2,c1,c2,c3;
printf("输入10个整数:");
for(i=0;i<10;i++)   
scanf("%d",&a[i]);
c1=c2=c3=0;
sum1=sum2=0;
for(p=a;p<(a+10);p++)
{  
    if(*p<0)
      { sum1+=*p;
         c1++;}  
    if(*p==0)
      { c2++;}   
    if(*p>0)
      {sum2+=*p;
       c3++;}  
}  
printf("正数,负数的和:%d %d\n",sum2,sum1);
printf("正数、零、负数的个数:%d %d %d \n",c3,c2,c1);
}





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2