当前位置:首页 » 编程语言 » c语言交换位置代码
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言交换位置代码

发布时间: 2022-11-06 14:22:02

1. c语言两个整数交换位置输出

参考代码如下:
#include<stdio.h>
void Swap(int **a, int **b)
{
int t;
t=**a;
**a=**b;
**b=t;
}
int main()
{
int a, b, *pa=&a, *pb=&b;
scanf("%d %d", pa, pb);
Swap(&pa, &pb);
printf("%d %d\n", a, b);
return 0;
}

2. C语言 输入一个两位整数,将其个位和十位改换位置,然后输出

首先分别获得这个整数的十位和个位,再将个位乘10加上十位得到交换后的数字,输出即可。代码如下:

#include<stdio.h>

intmain()
{
intnum;

scanf("%d",&num);
num=(num%10)*10+num/10;
printf("%d",num);

return0;
}

3. 求一个C语言程序题:编写一个函数SWAP()实现交换两个数位置的功能

#include <stdio.h>
void swap(int *p, int *q);//用传地址的方法交换
void main()
{
int i, j;
scanf("%d%d", &i, &j);//从键盘输入两个交换的数
swap(&i, &j);//传入i,j的地址
printf("i = %d, j = %d\n", i, j);//输出交换后的两个值
}
void swap(int *p, int *q)
{
int temp;//定义临时变量 存放中间值
temp = *p;
*p = *q;
*q = temp;
}
注意:不能直接写void swap(int i, int j);
因为那只是临时变量,函数调用完后,便释放空间,两个值并没有交换。

4. c语言怎样将两位数的个位与十位交换

对于一个两位数ab,要实现各位和十位的交换,需要先提取出a和b。

a=ab/10;意思是ab里有a个10;

b=ab%10;意思是ab=a个10+b。

提取出a和b后在进行组合ba=b*10+a;

c语言源码如下:

#include<stdio.h>

intmain()
{
intab;
inta;
intb;
while(scanf("%d",&ab)!=EOF)
{
a=ab/10;
b=ab%10;
printf("%d ",b*10+a);
}
return0;
}

5. c语言 数组元素交换 交换数组第一个位置和最后一个位置的数,输出交换后数组,求大神帮忙看看该怎么改

首先,这是对数组使用的概念上理解错了。数组a[n]可用的数组元素一共有n个,从a[0]开始到a[n-1]结束,下面的图是修改以后的程序。

6. C语言如何将二维数组中两个元素交换位置

可以让数组进行转置来实现,参考如下:
public class TestTransposition {
int col;
int row;
/**转换方法 将一个数组进行转置
* 原理很简单
*
* @param input
* @return
*/
public int[][] trans(int[][] input) {
int[][] output = null;
row = input.length;
if (row $amp;>amp;$nbsp;0) {
col = input[0].length;
}
output = new int[col][row];
for (int i = 0; i $amp; for (int j = 0; j $amp; output[j][i] = input[i][j];
}
}
return output;
}
public static void main(String[] args){
//若是需要得到转置数组,应该调用上面的转置方法
// int[][] in={{1,2,3},{3,4,5}};
// int[][] out=new TestTransposition().trans(in);
// for (int i = 0; i $amp; // for (int j = 0; j $amp; // System.out.print(out[i][j]);
// }
// System.out.println("");
// }
//若只是想输出得到效果 这应该是可以的
int[][] in={{1,2,3},{3,4,5}};
for(int i=0;i<in[0].length;i++){
for(int j=0;j<in.length;j++){
System.out.print(in[j][i]);
}
System.out.println("");
}
}
/*a[2][3]---->a[3][2]
* a[0][0]---->a[0][0]
* a[0][1]---->a[1][0]
* a[0][2]----->a[2][0]
* a[1][0]---->a[0][1]
* a[1][1]---->a[1][1]
* a[1][2]----->a[2][1]
*/
//故此 初步想法应是通过反向循环,即先循环列,在循环行来实现。

}

7. C语言如何将二位字符串数组中的两个元素交换位置

#include<stdio.h>
#include<string.h>
voidmain(){chars[2][80]={"aaa","bbbb"},charbuf[80];
strcpy(buf,s[0]);strcpy(s[0],s[1]);strcpy(s[1],buf);//类似于整数变量交换值
printf("%s %s ",s[0],s[1]);
}

8. 如何用c语言求输入两个整数a和b,交换他们的位置,然后输出

# include <stdio.h>
int main(void)
{
int a,b,c;
printf("请输入整数a:\n");
scanf("%d",&a);
printf("请输入整数b:\n");
scanf("%d",&b);
printf("你输入的数是a:%d\tb:%d\n",a,b);
c=a;
a=b;
b=c;
printf("它们交换位置后是a:%d/tb:%d\n",a,b);
retrun 0;
}

9. c语言怎么把两个字符串交换位置

利用strcpy()函数。

chara[10]="abed",b[10]="efg",t[10];
strcpy(t,a);//a复制给t
strcpy(a,b);//b复制给a
strcpy(b,t);//t复制给b

函数功能是字符串复制,将第一个参数指定的字符串复制到第二个参数指定的位置
两个参数都是字符串首地址。
使用strcpy需要 #include<string.h>