四种方法实现两个等大数组之间内容交换
来源:互联网 发布:淘宝开店咨询电话 编辑:程序博客网 时间:2024/05/22 16:49
方法一://该方法主要用逻辑运算将数组对应的每个元素进行交换,然后用for循环将整个数组元素进行交换#include<stdio.h>int main(){ int i,j,k; int A[10]; int B[10]; int C[10];printf("请输入A数组的内容:\n"); for(i=0;i<10;i++){scanf("%d",&A[i]);}printf("请输入B数组的内容:\n"); for(j=0;j<10;j++) { scanf("%d",&B[j]);} for(k=0;k<10;k++) { A[k]=A[k]^B[k]; //逻辑运算交换各元素的值 ,"^"也可改成"+,_"同样可以实现交换 B[k]=A[k]^B[k]; //例如: A[k]=A[k]+B[k]; A[k]=A[k]^B[k]; B[k]=A[k]-B[k]; } A[k]=A[k]-B[k];printf("互换后的A数组为:\n"); for(i=0;i<10;i++) {printf("%d ",A[i]);} printf("\n"); printf("互换后的B数组为:\n"); for(j=0;j<10;j++) { printf("%d ",B[j]);} printf("\n"); return 0;}方法二: //这种方法是利用指针函数进行交换各元素的值,#include<stdio.h>int main(){ int i,j,k; int A[10]; int B[10]; int C[10];printf("请输入A数组的内容:\n"); for(i=0;i<10;i++){scanf("%d",&A[i]);}printf("请输入B数组的内容:\n"); for(j=0;j<10;j++) { scanf("%d",&B[j]);} for(k=0;k<10;k++) { swap(&A[k],&B[k]); // 调用指针函数进行元素的交换 } printf("互换后的A数组为:\n"); for(i=0;i<10;i++) {printf("%d ",A[i]);} printf("\n"); printf("互换后的B数组为:\n"); for(j=0;j<10;j++) { printf("%d ",B[j]);} printf("\n"); return 0;}int swap(int *a,int* b){ int t; t=*a; *a=*b; *b=t;}方法三 // 引入第三个数组进行数组各元素的交换#include<stdio.h>int main(){ int i,j,k; int A[10]; int B[10]; int C[10];printf("请输入A数组的内容:\n"); for(i=0;i<10;i++){scanf("%d",&A[i]);}printf("请输入B数组的内容:\n"); for(j=0;j<10;j++) { scanf("%d",&B[j]);} for(k=0;k<10;k++) // 引入变量,进行交换 { C[k]=A[k]; } for(i=0;i<10;i++) { A[i]=B[i]; } for(j=0;j<10;j++) { B[j]=C[j]; } printf("互换后的A数组为:\n"); for(i=0;i<10;i++) {printf("%d ",A[i]);} printf("\n"); printf("互换后的B数组为:\n"); for(j=0;j<10;j++) { printf("%d ",B[j]);} printf("\n"); return 0;}方法四 //引入第三变量,在利用strcpy函数进行交换各数组元素#include<stdio.h>int main(){ char str1[20]; char str2[20]; char str3[20]; puts("请输入str1的字符:\n"); gets(str1); puts("请输入str2的字符:\n"); gets(str2); strcpy(str3,str1); strcpy(str1,str2); strcpy(str2,str3); puts("互换后的str1数组为:\n"); puts(str1); printf("\n"); puts("互换后的str2数组为:\n"); puts(str2); printf("\n"); return 0;}
本文出自 “零点时光” 博客,请务必保留此出处http://10741764.blog.51cto.com/10731764/1698474
1 0
- 四种方法实现两个等大数组之间内容交换
- 【C语言】交换两个数组内容(数组等大)
- C语言 实现两个数组内容交换
- 【C语言】交换两个数组内容(数组一样大)
- 交换两个数组的内容
- 交换两个数组的内容
- 交换两个数组的内容
- 交换两个数组的内容
- 交换两个数的四种方法
- 交换两个数的四种方法
- 将两个数组中的内容进行交换(数组一样大)
- 交换两个数组中的内容(数组的大小一样大)
- 将数组A中的内容与数组B中的内容进行交换(两个数组一样大)
- 交换两个相同大小的数组内容
- 将两个数组的内容进行交换
- 两个变量交换内容的几种方法
- c语言交换两个数值的四种方法.
- JavaScript交换两个变量值的四种方法
- 输入1000--2000年的所有闰年
- 用c输出100--200之间的素数
- 输入十个数,输出其中最大的一个数
- 交换两个变量的值
- 三种方法实现不引入变量交换两个变量值
- 四种方法实现两个等大数组之间内容交换
- 将三个数由大到小输出
- 求两个数的最大公约数
- 键盘接收字符,如果是大写,则输出小写;是小写,则输出大写;是数字则不输出
- 计算1-1/2+1/3-1/4+.....+1/99-1/100的值
- Android Email 总结
- 计算1到100之间整数中9出现的次数
- MT6627上FM RT信息很难显示出来
- JAVA学习(10) 继承(6) 使用父类类型调用子类