close
1.
寫一個程式不斷要求你輸入一對數字,直到至少有一數為0
對於每一對數字,程式要用函數計算出其調和中項,這函數應回傳此值給main()
由main()輸出答案,調和中項的意思是倒數平均值的倒數,公式如下:
調和中項=2.0*X*Y/(x+y)

2.
以下是一個結構宣告:
struct box
{
char maker[40];
float height;
float width;
float length;
float volume;
};
a. 寫一函數,傳遞box結構之值並顯示每個成員之值。
b. 寫一函數,傳遞box結構的位址,並將成員volume設為其他三個成員的乘積。
c. 寫一個簡單的程式使用這兩個函數

3.
寫一個程式,由使用者輸入一些數字,在每次輸入後,輸出所有已輸入的數字和,當輸入0,程式結束。


第一題 調和中項
#include <cstdlib>
#include <iostream>

using namespace std;
float mid(int x,int y){
  float m;
    m= 2.0*x*y/(x+y);
    return m;
}
int main(int argc, char *argv[]){
    int a,b;
  
    while(1){
    cout << "輸入一對數字 a,b: " ;
    cin >> a >> b;

    if(a*b==0) break// a,b至少一個 0 則離開
    cout << mid(a,b) << endl; //傳回調和中項並印出
    } 
    system("PAUSE");
    return EXIT_SUCCESS;
}
第二題 Struct
#include <cstdlib>
#include <iostream>

using namespace std;
struct box
{
char maker[40];
float height;
float width;
float length;
float volume;
};

box set_box(char* i,float j,float k,float l,float m){
    box a;
   strcpy(a.maker,i);
   a.width=j;
   a.height=k;
   a.length=l;
   a.volume = m;
   printf( "%s %.0f %.0f %.0f %.0f\n" ,a.maker,a.width,a.height,a.length,a.volume);
   return a;
}
void set_box2(box &b){
   b.volume = b.height*b.width*b.length;
   printf( "%s %.0f %.0f %.0f %.0f\n" ,b.maker,b.width,b.height,b.length,b.volume);
}

int main(int argc, char *argv[]){
    box nube;
   
    nube = set_box( "nube3315" ,5,5,5,0);
    set_box2(nube);   
   
    system( "PAUSE" );
    return EXIT_SUCCESS;
}

第三題 求和
#include <cstdlib>
#include <iostream>

using namespace std;


int main(int argc, char *argv[]){
    int i;
    int sum = 0;
    while(1){
    cout << "請輸入一些數字 (輸入0為結束):" ;
    cin >> i;
    if(i==0) break;
    sum+=i;
    printf("和為: %d\n",sum);
    }  
   
    system("PAUSE");
    return EXIT_SUCCESS;
}

arrow
arrow
    全站熱搜

    Rick Lu 發表在 痞客邦 留言(0) 人氣()