|
Post by huangno1 on Mar 2, 2017 20:21:03 GMT -8
程式說明
練習以指標型態作為引數/參數型態。
題目敘述
reset() 的作用是將某個整數變數的值設為 0。
swap() 的作用是交換兩個整數變數的值。
user_input() 會讓使用者輸入一個整數值,並放入指定的變數中。
divide() 會傳入被除數、除數、商數(的位址)和餘數(的位址),將除法計算的兩個結果存入商數和餘數。
#include <stdio.h>
void reset(
int *x
)
{
*x
= 0;
}
// ------------------------------------------
void swap(
int *x , int *y
)
{
int tmp = *x ;
*x = *y ;
*y = tmp ;
}
// ------------------------------------------
void user_input(
int *a
)
{
scanf("%d",
a
);
}
// ------------------------------------------
bool divide(
int x , int y , int *a , int *b
)
{
if (
y == 0
) return false;
else
{
*a = x / y ;
*b = x % y ;
return true;
}
}
// ------------------------------------------
int main()
{
int a = 33;
reset(
&a
);
printf("%d\n", a); // 0
int b = 1;
swap(
&a , &b
);
printf("%d %d\n", a, b); // 1 0
user_input(
&a
); // assume that the user inputs 106
printf("%d\n", a); // 106
if (divide(100, 40, &a, &b))
{
printf("%d %d\n", a, b); // 2 20
}
return 0;
}
|
|