交换函数作业

#include<stdio.h>//定义头文件
int main()// 定义主函数
{int i,j;// 定义变量i,j
int*p,*q; // 定义指针变量p,q
void swap(int*a,int*b);// 声明交换函数
p=&i;// 将指针指向变量i
q=&j;// 将指针指向变量j
printf("请输入两个需要交换的数:\n");//打印“请输入两个需要交换的数”字样
scanf("%d,%d",p,q);// 输入两个变量的值
printf("交换后的效果为:\n");// 打印“交换后的效果”字样
swap(p,q);// 调用交换函数
printf("%d,%d",*p,*q);// 将交换后的效果打印出来
return 0; // 返回整型数值
}
void swap(int*a,int *b)// 交换函数的定义
{int m;// 定义局部变量m
m=*a;//将指针指向的变量传给m
*a=*b;// 将指针 b指向的变量传给指针a所指向的变量
*b=m;// 将m传给指针b所指的变量
}

时间: 2024-11-04 12:07:41

交换函数作业的相关文章

自定义交换函数

#include<stdio.h> #define N 20 void Swap(int *temp,int *cont) /*定义一个交换函数*/ { int var; var=*temp,*temp=*cont,*cont=var; return; } int main() { int a[N],i,j; for(i=0;i<N;i++) scanf("%d",&a[i]); for(i=1;i<N;i++){ for(j=0;j<N-i;j+

一个数据交换函数引发的思考

近日,在书中看到一个关于数据交换函数的源代码,发现挺有意思,具体代码如下: 1 void swap(int* a, int* b) 2 { 3 *a ^= *b ^= *a ^= *b; 4 } 根据 C 语言异或赋值操作符(^=)的计算规则和异或运算符(^)的运算法则,应按照从右到左的顺序进行计算,具体计算过程演示如下: 1 *a = *a ^ *b; 2 *b = *b ^ *a = *b ^ ( *a ^ *b ) = *a; //将式1代入 3 *a = *a ^ *b = ( *a ^

C++中交换函数的几种写法与辨析

#include <iostream> using namespace std; //错误方法, //这里是把主函数的a, b进行复制然后交换 //函数执行完毕后释放复制的a, b, //而没有保存a,b交换后的值 void fun_one(int x, int y) { int temp; temp = y; y = x; x = temp; } //正确的方法之一 //使用指针的交换 void fun_two(int *x, int *y) { int c = 0; c = *x; *x

《ASCE1885的信息安全》のCryptoAPI---密钥的产生和交换函数

在公开密码算法的前提下,数据的安全取决于密钥.因此,密钥的产生.销毁.交换(分发)是数据保密工作中的重要部分. CryptoAPI密钥产生和交换函数主要有生成密钥函数CryptGenKey.派生密钥函数CryptDeriveKey.销毁密钥函数CryptDestroyKey.复制密钥函数CryptDuplicateKey.导出密钥函数CryptExportKey.导入密钥函数CryptImportKey.获得密钥参数函数CryptGetKeyParam.设置密钥参数函数CryptSetKeyPa

用异或操作实现的交换函数用以实现数组逆置中须要注意的问题

用元素交换函数实现数组逆置非常easy,如以下代码:(数组左右元素交换) #include<iostream> #include<stdlib.h> using namespace std; void swap(int &a, int &b) { int tmp = a; a = b; b = tmp; } int main() { int a[5] = { 1, 2, 3, 4, 5 }; int lenth = sizeof(a) / sizeof(a[0]);

用异或操作实现的交换函数用以实现数组逆置中需要注意的问题

用元素交换函数实现数组逆置很简单,如下面代码:(数组左右元素交换) #include<iostream> #include<stdlib.h> using namespace std; void swap(int &a, int &b) { int tmp = a; a = b; b = tmp; } int main() { int a[5] = { 1, 2, 3, 4, 5 }; int lenth = sizeof(a) / sizeof(a[0]); in

6. 交换函数

题目: 解释为什么下面程序的交换函数没有把形参 x 和 y 所对应的实参的值交换.如何修改代码,使实参的值得到交换? 原交换程序: 1 void swap(int x, int y) { 2 int temp = x; 3 x = y; 4 y = temp; 5 } 思路: 在C++中,参数传递方式有三种,分别为传值,传地址,传引用.在以上程序中,是按照传值的方式进行的.在实参传入时,将副本给形参.(如果是内置数据类型,则进行复制:如果是用户自定义数据类型,则调用复制构造函数).传值不会改变实

day25 map,filter,reduce 内置函数,作业

=====================作业一#用map来处理字符串列表啊,把列表中所有人都变成sb,比方alex_sbname=['alex','wupeiqi','yuanhao']#######################################################def name_sb(x): return x+'_sb'#加 _sb 的函数res=map(name_sb,name)print(list(res))########################

c语言函数作业

一.PTA实验作业 6-3 使用函数判断完全平方数 1. 本题PTA提交列表 2. 设计思路 1.利用由题目给定的int IsSquare( int n )进行操作 2.首先判断n是否大于0. 3.若n>0,则根据函数n*1.0/sqrt(n)是否等于sqrt(n)来判断是否为完整数,符合则return 1,不符合则return 0. 4.若n=0,return 1. 5.若n<0,return 0. ###3.本题调试过程碰到问题及PTA提交列表情况说明 没有考虑n=0也是完整数而答案错误.