❶ c語言函數的使用,定義一個交換函數 實現2個數字的交換。
void Swap(int&x,int&y)
{
int temp=0;
temp=x;
x=y;
y=temp;
}
int main()
{
int a=1;
int b=2;
Swap(a,b);
cout<<"a="<<a<<endl;
cout<<"b="<<b<<endl;
system("pause");
return 0;
}
運行結果:
(1)實現兩個數的對調操作c語言擴展閱讀:
用指針交換:
void Swap(int*x,int*y)
{
int temp=0;
temp=*x;
*x=*y;
*y=temp;
}
int main()
{
int x=1;
int y=2;
Swap(&x,&y);
printf("x=%d,y=%d ",x,y);
system("pause");
return 0;
}
運行結果:
X=2;Y=1
❷ c語言怎麼實現兩個數據交換
將兩個數進行互換的方法有兩種形式:
1、藉助中間變數完成,此方法直觀,易理解,使用最多
2、不需要中間變數,通過變數身的運算完成交換。
❸ c語言數字對調
#include<stdio.h>
#include<conio.h>
main()
{
int a[10],b,i;
for(i=0;i<10;i++)
{
scanf("%d",a+i);
}
for(i=0;i<10;i++)
{
printf("%d ",a[i]);
}
printf("\n");
for(i=0;i<5;i++)
{
b=a[i];
a[i]=a[9-i];
a[9-i]=b;
}
for(i=0;i<10;i++)
{
printf("%d ",a[i]);
}
printf("\n");
getch();
}
❹ C語言問題(實現講兩個數進行對調的操作)
填:a=a-b;
原理是這個樣子的:
假設a裡面的值是M,b裡面的值是N
先執行a=a+b;此時a裡面放的是兩者的和即M+N,
再執行b=a-b; a裡面的值(M+N)再減去b的值(N)得M,把M給b
所以執行完該語句後,b的值由N變成了M。此時a的值還是M+N
該句相當於b=(M+N)-N
最後執行a=a-b;即a=(M+N)-M得a的值為N
完成了交換
❺ (C語言)以下程序不用第三個變數,實現將兩個數對調的操作…A.a+b B.a_b C.b*a D.a/b
a=a+b;b=a-b;也就是b=a+b-b;此時
b=a;a=a-b;也就是a=a+b-b此時b已經等於原來的a所以此處實際為a=a+b-aa=b;
所以
選B
❻ C語言怎麼用自定義函數將兩個數交換
要用函數實現兩個數的交換,則函數參數必須定義為指針形式,否則函數中對數值的修改將不會影響主調函數,這是C語言的規則。
所以,以整型為例,自定義函數書寫如下:
void
swap_int(int*a,int*b)
{
int
t;
t
=
*a;
*a=*b;
*b=t;
}
❼ c語言 用指針實現兩個數的交換
int swap(int *a,int *b)//a與b分別復制主函數x與y的值,即a與x的指向相同,b與y的指向相同
{
int *t;
{t=a;a=b;b=t;}//通過交換,a和y的指向相同,b與x的指向相同,但是,x與y沒有改變原來指向,這樣函數swap結束,a與b消失,輸出結果不變
}
換成
int t;
{t=*a;*a=*b;*b=t;}//將改變x和y指向的地址的值,達到交換目的
❽ 在C語言中如何將兩個數進行互換
將兩個數進行互換的方法有兩種形式:
1、藉助中間變數完成,此方法直觀,易理解,使用最多
2、不需要中間變數,通過變數身的運算完成交換。
參考代碼:
方法1:
int a=2,b=3,t;
t=a; //先將a存儲到臨時變數t中
a=b; //將b存儲到a中
b=t; //將臨時變數中的原a值存儲到b中
printf("a=%d b=%d\n", a,b );
方法2:
int a=2,b=3,t;
a += b ; //把兩數之和存到a中
b= a-b ; //用兩數和減去b可得原a,存儲到b中
a= a-b ; //因為b現在是原a值,所以,用兩數和減去b(原a)可得 原b,存儲到a中
此方法,還可以用異或運算來實現,原理相同。
❾ C語言輸入兩個數,將他們順序調換
形參發生了改變
就是FUN的兩個參數調換了但是實參
x和y並不會調換
可以用指針變數來實現參數x和y的調換fun(char
*a,char
*b){char
ch;</p><p>ch=*a;</p><p>*a=*b;</p><p>*b=ch;</p><p>}從main函數中傳遞兩個參數x和y的指針變數,這樣得到的結果的變了