用swap函数交换两个整数
#include<stdio.h> //头文件
main() //主函数
{
void swap(int *p,int *q); //声明
int a,b; //定义两个整数
int *p1,*p2; // 定义两个地址
scanf("%d,%d",&a,&b); //输入两个整数
p1=&a; //p1指向a
p2=&b; // p2指向 b
swap(p1,p2); //交换p1和p2
printf("%d,%d\n",a,b); //输出a,b的值
}
void swap(int *p,int *q) //调用函数
{
int k; //定义一个整数
k=*p; // 将*p的值赋给k
*p=*q; //将*q的值赋给*p
*q=k; //将k的值赋给*q
}
1,2
2,1 --------------------------------
Process exited after 14.19 seconds with return value 0
请按任意键继续. . .
总结:swap函数用的不熟练,定义函数时总出错。
#include<stdio.h> void swap(int *p,int *q)
{
int *m;
*m=*p;
*p=*q;
*q=*m;
}
指针变量在使用的时候没有进行初始化,所以有可能指向是其他重要的数据。
#include<stdio.h> void swap(int *p,int *q)
{
int *m;
m=p;
p=q;
q=m;
}
在swap函数中只是对指针变量中的地址进行调换(&p和&q交换),而并没有影响到a,b的值。
#include<stdio.h>
int main()
{int p1,p2;//定义整型
int*p,*q,*c;//定义指针
p=&p1;//p指向i
q=&p2;//q指向j
int*swap(int*a,int*b);//定义函数指针 ,让函数返回指针类型数据
scanf("%d,%d",p,q);
c=swap(p,q);//将函数的返回值赋值给指针变量c
printf("%d",*c);
return ;
}
int*swap(int*a,int*b)
{if(*a<*b)
return b;//返回指针变量
else
return a;
}
1,2
2
--------------------------------
Process exited after 3.378 seconds with return value 0
请按任意键继续. . .
总结:指针运用是需要注意何时用&,注意将p指向i和q指向j。
用swap函数交换两个整数的更多相关文章
- PTA 面向对象程序设计 6-1 引用作函数形参交换两个整数
引用作函数形参交换两个整数 设计一个void类型的函数Swap,该函数有两个引用类型的参数,函数功能为实现两个整数交换的操作. 裁判测试程序样例: #include <iostream> ...
- 黑马程序员-- C语言交换两个整数变量值几种函数比较
总结了C语言中几种交换两个整数数值的函数,欢迎交流 #include <stdio.h> 使用多种交换变量值的函数比较 方法一:使用第三方临时变量 这种函数a,b只是值传递,实质上不能修交 ...
- c语言-交换两个整数
使用c来写一个函数来实现交换两个整数. 第一种 一般的方法,引用中间变量,方便快捷. void swap(int *a, int *b) { int tmp = *a; *a = *b; *b = t ...
- 面试题:如何在不使用临时变量temp的情况下交换两个整数的值?
利用一个小技巧,一个整数a在异或另一个整数b两次以后所得的值还是整数a. 具体的过程我们可以自己找两个整数以二进制的形式自己在纸上画一下他们的异或过程.(异或的运算符号为"^") ...
- python中如何调用函数交换两个变量的值
python中如何调用函数交换两个变量的值 所有代码来在python3.7.1版本实现 以下实例通过用户输入两个变量,并相互交换: 方法一: def swap(a,b): # 创建临时变量,并交换 ...
- 有两个指针pa,pb分别指向有两个数,a,b,请写一个函数交换两个指针的指向,也就是让pa指向b,让pb指向a
题目:有两个指针pa,pb分别指向有两个数,a,b,请写一个函数交换两个指针的指向,也就是让pa指向b,让pb指向a,具体实现如下: #include<stdlib.h> #include ...
- 用异或运算交换两个整数实现swap函数功能
对于异或运算有这如下说明: 1^1=0 0^0=0 1^0=1 0^1=1 简单理解就是当两个书相同时结果为0,而两个数不同时异或的结果为1 可用于两个整数的交换,而不用去引入一个中间变量 #incl ...
- 自己写一个swap函数交换任意两个相同类型元素的值 对空指针的使用 字节大小的判断(二)了解原理
验证的代码: #include <stdio.h> int main(){ char c = 'z'; ) + (c << ) + () + 'a'; printf(" ...
- C++入门经典-例5.7-调用自定义函数交换两变量值,传入指针
1:代码如下: // 5.7.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> using ...
随机推荐
- 【转】对于HttpClient和HtmlUnit的理解
原文地址:http://www.haohaoblog.com/?p=1327&utm_source=tuicool 做Java编程的人其实,很多不懂SEO,也不知道如何让百度收录等等,当然,对 ...
- Java源码ExtJS 5 SpringMVC 4Hibernate 4通用后台管理开发框架
需要源码,请加QQ:858-048-581 一.特色1.采用Spring MVC的静态加载缓存功能,在首页将Javascript文件.CSS文件和图片等静态资源文件加载进来放进内存,极大提高ExtJS ...
- angular 2 animate 笔记
好久没有在这里写点笔记了.时隔已久,angular1 去 angular2 咯 笔记来源:https://angular.cn/docs/ts/latest/guide/animations.html ...
- 每天一个Linux命令(13)--less命令
less 工具也是对文件或其它输出进行分页显示的工具,应该说是Linux正统馋看文件内容的工具,功能极其强大.less 的用法比起 more 更加有弹性. 在 more 的时候,我们没有办法向前面 ...
- Unity播放Gif动画
Unity目前对图形图像的支持还不是很完善,支持的图形文件格式有 PSD, TIFF, JPG, TGA, PNG, GIF, BMP, IFF, PICT等,但却不支持Gif动画.但是经过查阅资料发 ...
- &&运算符,三木运算符与React的条件渲染
在使用react框架的时候中往往会遇到需要条件渲染的情形,这时候,许多人会设想采用if语句来实现,比如下面,当满足条件condition时,conditonRender渲染组件ComponentA,当 ...
- wemall app商城源码Android 获取XML网络数据并绑定到ListView
wemall-mobile是基于WeMall的android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享Android 获取XML网络数据并绑定到Li ...
- html中submit和button的区别(总结) [ 转自欣步同学 ]
html中submit和button的区别(总结) submit是button的一个特例,也是button的一种,它把提交这个动作自动集成了. 如果表单在点击提交按钮后需要用JS进行处理(包括输入验证 ...
- mac上的kindle打开mobi文件的方式
刚刚在macpro上下载了一个kindle文件,但是双击我某个目录下的.mobi文件,提示: “Kindle”打不开格式为“Kindle Document”的文件,可是明明手机和pad上是可以打开的. ...
- GDAL C# 开发环境配置
http://blog.csdn.net/mygisforum/article/details/22478491