首页技术c语言把a和b的值互换,c语言必背100代码

c语言把a和b的值互换,c语言必背100代码

编程之家2026-05-23893次浏览

本篇文章给大家谈谈c语言把a和b的值互换,以及c语言必背100代码对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

c语言把a和b的值互换,c语言必背100代码

c语言 将变量A和B的值进行互换 的程序

代码如下:#include<stdio.h>

#include<stdlib.h>

void swap1(int& a,int& b)//使用中间变量交换两个值

{

int temp= a;

a= b;

c语言把a和b的值互换,c语言必背100代码

b= temp;

}

void swap2(int& a, int& b)//只用加法、减法、乘法也可以交换两个值

{

a= a+ b;

b= a- b;

a= a- b;

}

void swap3(int& a, int& b)//使用位运算也可以交换两个值

{

a= a^b;

b= a^b;

a= a^b;

}

void main1mianshiti7()

{

int a1= 1, b1= 2;

int a2= 10, b2= 15;

int a3= 78, b3= 90;

int a= 2147483647, b= 1;

printf("a1=%p,b1=%p",&a1,&b1);

swap1(a1, b1);

swap2(a2, b2);

swap3(a3, b3);

printf("swap after~~~~~~~~~~~~~

");

printf("a1=%d,b1=%d

", a1, b1);

printf("a2=%d,b2=%d

", a2, b2);

printf("a3=%d,b3=%d

", a3, b3);

swap2(a, b);

printf("a=%d,b=%d

", a, b);

system("pause");

}

源代码截图:

参考资料:百度百科-网页链接

扩展资料:

C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。

二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。[1]目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。

C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。

其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

c语言交换变量a和b的值是什么

c语言交换变量a和b的值是:p、q,但没有给它们分配地址。

后面的程序,p、q分别指向了a、b的地址,所以可用。这个与媒介无关,计算机原理中很清楚地讲到,内存地址和内容,这个是C语言的基础。

c语言交换变量a和b的值是互相交换的。交换在常规办法中引入第三个变量是为了防止在赋值过程中丢失信息。如果有办法在赋值过程中保持信息,就不需要另外的变量了。就比如这里的a先等于b-a,再让b=a。

有两个变量a和b,想要交换它们的值,能不能这样操作呢?

不能,这样操作的意思是把a的值放到b中,然后b中的值已经被覆盖掉了,已经不是b原来的那个值了,所以是没有意义的。

既然不能这样操作,可以先把b的值备份一下,这样就可以覆盖了。然后设置一个变量t,先把b中的变量备份到t中,t=b。再把a中的变量放到b中,b=a。最后把备份的b放到a中,a=t。

c语言 输入a和b两个整数,按先小后大的顺序输出a和b(交换指针)

#include<iostream>

using namespace std;

int main()

{

int*p1,*p2,*p;//p也是指针变量。

int a,b;

cout<<"请输入两个整数:"<<endl;

cin>>a>>b;

p1=&a;

p2=&b;

if(a<b)

{

p=p1;//将p1和p2的指向互换。

p1=p2;

p2=p;

}

cout<<"a="<<a<<""

<<"b="<<b

<<endl;

cout<<"max="<<*p1<<""

<<"min="<<*p2

<<endl;

return 0;

}

运行效果:

扩展资料:1、定义指针变量的一般形式如下:

类型名*指针变量名1,*指针变量名2,...*指针变量名n;

2、空指针

空指针是一个特殊的指针,它的值是0,C语言中用符号常量NULL(在stdio.h中定义)表示这个空值,并保证这个值不会是任何变量的地址。空指针对任何指针类型赋值都是合法的。一个指针变量具有空指针值表示当前它没有指向任何有意义的东西。

3、void指针

(void*)类型的指针叫通用指针,可以指向任何的变量,C语言允许直接把任何变量的地址作为指针赋给通用指针。但是需要注意void*不能指向由const修饰的变量。

例如:const int test;void*ptv;ptv=&test;第三句是非法的,只有将ptv声明为const void*ptv;,上述第三句ptv=&test才是合法的。

当需要使用通用指针所指的数据参加运算时,需要写出类型强制转换。如通用指针ptv所指空间的数据是整型数据,p是整型指针,用此式转换:p=(int*)ptv;

关于c语言把a和b的值互换和c语言必背100代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

java文档?java官方api中文文档java函数式接口 java入门基础知识