101 關務四等計算機概要 - 考試

Table of Contents


這樣改就可以交換嚕! 給原po做參考^ ^


c version:
swap.c

: #include <stdio.h>
void swap (int *a, int *b) { //位址所指的內含值
int t = *a;
*a = *b;
*b = t;
: }
: main() {
: int x =1, y=2;
swap(&x, &y); //把位址丟給函數
: printf("%d, %d\n", x, y);
: }

c++
swap.cpp
#include <iostream>
using namespace std;


void swap(int &x , int &y)
{
int t;
t = x ;
x = y;
y = t;

}
int main(void)
{

int a = 1;
int b = 2;
swap (a, b);

cout << "a="<< a << endl;
cout << "b="<< b << endl;

return 0;

}






※ 引述《pinky94 (pinky)》之銘言:
: [考題] 國考歷屆考題與考題觀念討論(書裡看到的選這個)請附上想法、出處
: 出處:如題
: 下列C語言程式,產生的輸出為何?
: #include <stdio.h>
: void swap (int a, int b) {
: int t = a;
: a = b;
: b = t;
: }
: main() {
: int x =1, y=2;
: swap(x, y);
: printf("%d, %d\n", x, y);
: }
: 猨
: (A)1, 2
: 獏
: (B)2, 1
: 獱
: (C)1, 1
: 斅
: (D)2, 2
: 答案:#
: 請問執行後應該不會變xy的值,所以不是應是A嗎?

--

All Comments

Bethany avatarBethany2013-06-16
那個main()前面沒加型態還是一樣err, 答案一樣是#歐