/*
    Name: C program assignment 2
    Copyright:
    Author: ShiroKa_X
    Date: 22/03/17 14:07
    Description:
*/

#include<stdio.h>
int swap(int *p, int *q)
{
    int t;
    t = *p;
    *p = *q;
    *q = t;
}
int main()
{
    int a, b;
    printf("please input two number of int :");
    scanf("%d %d",&a,&b);
    printf("%d %d\n", a, b);
    int *p, *q;
    p = &a;
    q = &b;
     swap(p, q);
    printf("%d %d\n", *p, *q);
}

Ⅱ、void swap(int *p,int *q){int *m;*m=*p;*p=*q;*q=*m;}为何无法实现交换?

答:*q是整型变量,而*m式指针变量m所指向的变量。但m中并无确定的值(它的值是不可预见的),因此m所指向的单元也是不可预见的。

  所以,对*m赋值有可能给一个存储着重要数据的存储单元赋值,这样就会破坏系统的正常工作状况。应该将*p的值赋给一个整型变量,用

  整型变量m作为临时辅助变量实现*p和*q的交换。

Ⅲ、void swap(int *p,int *q){int *m;m=p;p=q;q=m;}为何无法实现交换?

  函数swap内部只进行了p与q所指向的变量的地址进行了交换,并未对q、p指向的变量的值进行交换,所以输出的变量的值不变。

Ⅳ、构建comp函数,实现两个整数比较,比较大的值通过返回值返回给main。要求comp的参数和返回值都是指针类型数据。

 #include<stdio.h>

 int* comp(int *p, int *q)
 {
     return (*p > *q ? p : q);
 }
 int main()
 {
     int a, b,t;
     printf("please input two number:\n");
     scanf("%d %d", &a, &b);
     int *p, *q;
     p = &a;
     q = &b;
     t = *comp(p, q);
     printf("the max=%d\n", t);
 }

总结:

  1 对本章指针运用还不够熟练,许多知识点都是处于知道但不会运用的阶段。

  2 缺乏实践,打代码速度还不够快。

  3 对于,使用指针作为函数参数及返回指针型数据不够熟练,定义指针、运用指针的能力还有待提高。

C_program assignment 2的更多相关文章

  1. Atitit GRASP(General Responsibility Assignment Software Patterns),中文名称为“通用职责分配软件模式”

    Atitit GRASP(General Responsibility Assignment Software Patterns),中文名称为"通用职责分配软件模式" 1. GRA ...

  2. user initialization list vs constructor assignment

    [本文连接] http://www.cnblogs.com/hellogiser/p/user_initialization_list.html [分析] 初始化列表和构造函数内的赋值语句有何区别? ...

  3. Swift 提示:Initialization of variable was never used consider replacing with assignment to _ or removing it

    Swift 提示:Initialization of variable was never used consider replacing with assignment to _ or removi ...

  4. 代写assignment

    集英服务社,强于形,慧于心 集英服务社,是一家致力于优质学业设计的服务机构,为大家提供优质原创的学业解决方案.多年来,为海内外学子提供了多份原创优质的学业设计解决方案. 集英服务社,代写essay/a ...

  5. [Top-Down Approach] Assignment 1: WebServer [Python]

    Today I complete Socket Programming Assignment 1 Web Server Here is the code: #!/usr/bin/python2.7 # ...

  6. default constructor,copy constructor,copy assignment

     C++ Code  12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 ...

  7. Programming Assignment 5: Kd-Trees

    用2d-tree数据结构实现在2维矩形区域内的高效的range search 和 nearest neighbor search.2d-tree有许多的应用,在天体分类.计算机动画.神经网络加速.数据 ...

  8. Programming Assignment 4: 8 Puzzle

    The Problem. 求解8数码问题.用最少的移动次数能使8数码还原. Best-first search.使用A*算法来解决,我们定义一个Seach Node,它是当前搜索局面的一种状态,记录了 ...

  9. Programming Assignment 2: Randomized Queues and Deques

    实现一个泛型的双端队列和随机化队列,用数组和链表的方式实现基本数据结构,主要介绍了泛型和迭代器. Dequeue. 实现一个双端队列,它是栈和队列的升级版,支持首尾两端的插入和删除.Deque的API ...

随机推荐

  1. elasticsearch_.net_client_nest2.x_到_5.x常用方法属性差异

    目录: Elasticsearch .net client NEST 5.x 使用总结 elasticsearch_.net_client_nest2.x_到_5.x常用方法属性差异 Elastics ...

  2. windows cannot find powershell.exe windows 7

    This can happen when the environment variables are missing an entry for Powershell. $env:path must i ...

  3. mybatis逆向工程失败

    [ERROR] Failed to execute goal org.mybatis.generator:mybatis-generator-maven-plugin:1.3.6:generate ( ...

  4. CPU高的排查

    之前有朋友反馈说发的内容希望有个梯度,逐步加深,前面发了几篇关于jvm源码分析的文章,可能我觉得我已经把内容写得浅显易懂了,但是对于某些没怎么接触的同学来说还是比较难理解,这个我以后慢慢改进吧,今天发 ...

  5. java @FunctionalInterface

    public class Worker { private String doWork(String job) { return "Job " + job + " don ...

  6. Phpstorm数组对齐设置

    进入 Editor > Code Style > PHP > Wrapping and Braces , 勾选 Align consecutive assignments 和 Ali ...

  7. [Linux]安装pyenv

    python多版本管理pyenv 网址:https://blog.csdn.net/yingfeng_yang/article/details/82527321 Ubuntu16.04安装pyenv1 ...

  8. 下载 youtube 油管的视频

    以前也曾经用个工具下过,好像是浏览器插件. 但是到底是什么也记不起来了,删没删除,怎么删除的,全都没有记忆了. 唉,无论多么小的事,只有记到本子或者网络上,才能记得住啊. 所以,这回发现了 youtu ...

  9. photoKit使用笔记

    @主要用到的类 1PHAssetCollection:图片资源数组(代表着相簿数组) 作用:获取相簿资源数组 示例代码: //获取相簿资源 PHFetchResult<PHAssetCollec ...

  10. locust启动命令

    locust运行测试脚本 locust -f .\load_test.py --host=https://www.baidu.com -f 指定性能测试脚本文件. --host 指定被测试应用的URL ...