A. c語言交換兩個數字
#include<stdio.h>
void
swap(int
&x,
int
&y)
{
int
t;
t=x;
x=y;
y=t;
}
void
main()
{
int
a=3,
b=4;
swap(a,b);
printf("a=%d
b=%d",a,b);
}
為什麼
&x,&y是整形?為什麼有時候*a
*b也能是整形???
//==================================================================
上邊這個程序能正常編解碼,應該報錯的
void
swap(int
&x,
int
&y)
的定義不正確
改成void
swap(int
*x,
int
*y),參數是整型指針,
而你的swap(a,b);傳遞的是整型變數而不是指針
改成swap(&a,&b);,
這是C語言的指針的知識,也是C語言最詭異的東西
//==================================================================
這是我自己寫的
為什麼return有錯誤呢?
#include<stdio.h>
int
swap(int,int);
main()
{
int
a,b;
scanf("%d%d",&a,&b);
swap(a,b);
printf("%d
%d",a,b);
}
int
swap(int
x,int
y)
{
int
t;
t=x,x=y,y=t;
return;
}
//=================================================
int
swap(int
x,int
y)的參數是整型變數,
傳遞的是形式參數
swap(a,b);
雖然傳遞了參數,但是傳遞的是形式參數,
在swap函數的處理是不會改變a,b,的值的
//================================================
建議參考C語言參數傳遞和C語言指針的知識
B. 在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. C語言怎麼用自定義函數將兩個數交換
要用函數實現兩個數的交換,則函數參數必須定義為指針形式,否則函數中對數值的修改將不會影響主調函數,這是C語言的規則。
所以,以整型為例,自定義函數書寫如下:
void
swap_int(int*a,int*b)
{
int
t;
t
=
*a;
*a=*b;
*b=t;
}
D. C語言用函數如何實現兩個數交換
#include"stdio.h"int swap(int *a,int *b){int temp;temp=*a;*a=*b;*b=temp;}
main(){int x,y;printf("請輸入x與y的值,用空格隔開 ");scanf("%d%d",&x,&y);printf("x=%d,y=%d ",x,y);swap(&x,&y);printf("交換後 x=%d,y=%d ",x,y);}
(4)交換數字函數c語言擴展閱讀:
C語言是一門通用計算機編程語言,廣泛應用於底層開發。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
盡管C語言提供了許多低級處理的功能,但仍陪漏純然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處搜冊理器(單片機或稱MCU)以及超級電腦等作業平台。
二十世紀八十年代,為了避免各開發廠商蘆咐用的C語言語法產生差異,由美國國家標准局為C語言制定了一套完整的美國國家標准語法,稱為ANSI C,作為C語言最初的標准。目前2011年12月8日,國際標准化組織(ISO)和國際電工委員會(IEC)發布的C11標準是C語言的第三個官方標准,也是C語言的最新標准,該標准更好的支持了漢字函數名和漢字標識符,一定程度上實現了漢字編程。
C語言是一門面向過程的計算機編程語言,與C++,Java等面向對象的編程語言有所不同。其編譯器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。
E. 在C語言中如何將兩個數進行互換
定義 A ,B, C,
把A保存到C
把B保存到A
把C保存到B
這要就OK了!
int a, b , c;
c = a;
a = b;
b = c;
F. c語言交換兩個數的函數
好像沒有return(x,y)這種寫法吧,這樣寫應該可以
void swap(int *x,int *y)
{
int c;
c=*x;
*x=*y;
*y=c;
}
G. C語言編程環境下使用函數交換兩個整數
交換兩個數字有很塵卜多種方法,這里我使用其中最氏慧簡單一種完成函數:
void
swap(int
*a,
int
*b)
//參殲兄答數傳入指針,為了交換改變傳入變數的值
{
int
c;
//變數c作用域僅僅在該函數內,無法再函數外使用,函數調用完,c的生存期也
c
=
a;
就結束了
a
=
b;
b
=
c;
}
哪裡不清楚請提問
H. c語言如何編寫兩個數字數值交換
我們用C語言的時候,經常需要將兩個數字交換,那麼如何實現呢?下面我給大家分享一下。
工具/材料
Dev C++
- 01
首先我們在Dev C++軟體中新建一個C語言項目,如下圖所示
- 02
接下來我們在C語言文件中聲明兩個數字並輸出,如下圖所示
- 03
然後用一個中間變數對他們進行交換,如下圖所示
- 04
最後運行編寫好的C語言文件,我們就可以看到如下圖所示的交換結果了
I. C語言數值的交換
1
a
b中oxa23錯誤;c
4c1.5錯誤;d
10,000錯誤
2
c
for是關鍵字不能他用。
3
b
(1/2)*(a+b)*h中(1/2)直接為0,要想一樣應該為:(1.0/2)或(1/2.0)
4
d
k+1沒有改變k的值。
5
d
kk>=48
&&
kk<91,這個范圍的符號不僅有大寫字母還有別的。
6.正確,這是因為putchar()包含在改頭文件中。
n=n/10;
J. 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;
}
運行結果:
(10)交換數字函數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