交换数c语言,交换数字c语言

kodinid 20 0

大家好,今天小编关注到一个比较意思的话题,就是关于交换数c语言问题,于是小编就整理了4个相关交换数c语言的解答,让我们一起看看吧。

  1. c语言中交换a、b两个数的一种算法?
  2. C语言中如何将一个数组中的最大值和最小值互换?
  3. c语言!题目:输入三个整数A、B和C,将它们交换(即A的值给B,B的值给C,C的值给A)后输出A?
  4. C语言二维数组如何交换两行或者两列?

c语言中交换a、b两个数的一种算法

a=a^b^(a^b) 定义两个int x,y; 如果x=0,y=0,x^y==0; 如果x=0,y=1,x^y==1; 如果x=1,y=0,x^y==1; 如果x=1,y=1,x^y==0;

C语言中如何将一个数组中的最大值最小值互换?

找到最大和最小值的下标然后交换,例如:

交换数c语言,交换数字c语言-第1张图片-安济编程网
图片来源网络,侵删)

#include <stdio.h>main(){int a[10]={10,2,3,4,5,6,7,8,9,10},n=10;int i1,i2,i;i1=0;for (i=0;i<n;i++)if (a[i]<a[i1]) i1=i;i2=0;for (i=0;i<n;i++)if (a[i]>a[i2]) i2=i;i=a[i1]; a[i1]=a[i2];a[i2]=i;for (i=0;i<n;i++) printf(&#34;%d ",a[i]); return 0;}

c语言!题目输入三个整数A、B和C,将它们交换(即A的值给B,B的值给C,C的值给A)后输出A?

#include <stdio.h>int main(){ int a, b, c, t; scanf ("%d%d%d", &a, &b, &c); t = a; a = c; c = b; b = t; printf ("%d %d %d\n", a, b, c); return 0;}

C语言二维数组如何交换两行或者两列?

方法很多

交换数c语言,交换数字c语言-第2张图片-安济编程网
(图片来源网络,侵删)

1、可以直接找到数组对应行的元素进行交换数据,改变原数组内容

2、可以定义指针数组指向每行的首地址,交换指针地址,按顺序打印每个指针为首的行数据,得到数据交换效果,原数组内容不变。我这里用第2种方法给你写了一个,你参考吧。#include <stdio.h>int main (){ int nArry[4][4]={{1,2,3,4},{2,3,4,5},{3,4,5,6},{4,5,6,7}}; int *p[4],i,j,*ps***e,index[2];//p[]分别指向每行首地址 printf("打印原数组:"); i=16; p[0]=&nArry[0][0]; while(i-->0) { if((i+1)%4==0) printf("\n"); printf("%d ",*(p[0])); p[0]++; } while(1) { printf("\n\n输入2个你要交换的行号:"); scanf("%d%d",&index[0],&index[1]); for(i=0;i<4;i++) { p[i]=&nArry[i][0]; } ps***e=p[index[0]-1]; p[index[0]-1]=p[index[1]-1]; p[index[1]-1]=ps***e; printf("第%d行和第%d行调换后的数组为:\n",index[0],index[1]); for(i=0;i<4;i++) //按顺序打印 首地址指针开头的行数字 { for(j=0;j<4;j++) { printf("%d ",*(p[i]+j)); } printf("\n"); } } return 0;}

到此,以上就是小编对于交换数c语言的问题就介绍到这了,希望介绍关于交换数c语言的4点解答对大家有用。

交换数c语言,交换数字c语言-第3张图片-安济编程网
(图片来源网络,侵删)

标签: 交换 数组 printf