zoukankan      html  css  js  c++  java
  • 指针是否实现值的转换

     1 #include <stdio.h>
     2 #include <stdlib.h>
     3 
     4 int main()
     5 {
     6     void swap(int *p1,int *p2);
     7     int a,b;
     8     int *pointer_1,*pointer_2;
     9     printf("please enter a and b:");
    10     scanf("%d,%d",&a,&b);
    11     pointer_1 = &a;
    12     pointer_2 = &b;
    13     if(a<b) swap(pointer_1,pointer_2);
    14     printf("max=%d,min=%d
    ",a,b);
    15     return 0;
    16 }
    17 void swap(int *p1,int *p2)
    18 {
    19     int p;
    20     p = *p1;//交换的是指针的变量,也就是a变量的值,结果输出会是max=大数,min=小数
    21     *p1 = *p2;//*p《==》a,即*p是变量a的值,所以交换的时候是值的改变
    22     *p2 = p;
    23 }
     
     1 #include <stdio.h>
     2 #include <stdlib.h>
     3 
     4 int main()
     5 {
     6     void swap(int *p1,int *p2);
     7     int a,b;
     8     int *pointer_1,*pointer_2;
     9     printf("please enter a and b:");
    10     scanf("%d,%d",&a,&b);
    11     pointer_1 = &a;
    12     pointer_2 = &b;
    13     if(a<b) swap(pointer_1,pointer_2);
    14     printf("max=%d,min=%d
    ",a,b);
    15     return 0;
    16 }
    17 void swap(int *p1,int *p2)
    18 {
    19     int p;
    20     p = p1;//交换的是指针的地址,也就是p1和p2的地址互换,但是变量ab中的值仍没有变,所以输出时max=a=5;min=b=9;
    21     p1 = p2;//此方法并没有实现值的转换,只是改变了地址
    22     p2 = p;//p1,p2是地址所以互换的只是地址,变量啊a和b的值并没有变化
    23 }
    
    
     1 #include <stdio.h>
     2 #include <stdlib.h>
     3 
     4 int main()
     5 {
     6     void exchange(int *q1,int *q2,int *q3);
     7     int a,b,c,*p1,*p2,*p3;
     8     printf("please enter three numbers:");
     9     scanf("%d,%d,%d",&a,&b,&c);
    10     p1 = &a;
    11     p2 = &b;
    12     p3 = &c;
    13     exchange(p1,p2,p3);
    14     printf("The order is:%d,%d,%d
    ",a,b,c);
    15     return 0;
    16 }
    17 void exchange(int *q1,int *q2,int *q3)
    18 {
    19     void swap(int *pt1,int *pt2);
    20     if(*q1 < *q2)swap(q1,q2);
    21     if(*q1 < *q3)swap(q1,q3);
    22     if(*q2 < *q3)swap(q2,q3);
    23 }
    24  void swap(int *pt1,int *pt2)
    25  {
    26     int t;
    27     t = *pt1;
    28    *pt1 = *pt2;
    29    *pt2 = t;
    30  }
  • 相关阅读:
    理解爬虫原理
    中文词频统计与词云生成
    复合数据类型,英文词频统计
    字符串操作、文件操作,英文词频统计预处理
    了解大数据的特点、来源与数据呈现方式
    作业四-结对项目
    大数据应用期末总评
    分布式文件系统HDFS 练习
    安装Hadoop
    《恶魔人crybaby》豆瓣短评爬取
  • 原文地址:https://www.cnblogs.com/spore/p/8001348.html
Copyright © 2011-2022 走看看