大意:
采用檔案輸入輸出方式,輸入兩個字元串并根據規則分别産生一個數字。比較兩個數字,得出不同輸出
知識儲備:
a.檔案輸入/輸出
檔案操作三步驟:
1.打開檔案
2.讀/寫檔案
3.關閉檔案
打開檔案包括建立檔案流對象,與外部檔案關聯,指定檔案的打開方式。
<1>首先建立流對象,然後調用open函數連接配接外部檔案
流類 對象名; //“流類”:C++流類庫定義的檔案流類,為ifstream, ofstream, fstream
對象名.open(檔案名,方式); //“對象名”:使用者定義的辨別符,流對象名 “方式”:ios類定義的辨別符常量,表示檔案的打開方式
<2>調用流類帶參數的構造函數,建立流對象的同時連接配接外部檔案
流類 對象名(檔案名,方式); //“檔案名”:用字元串表示外部檔案的名字,不寫出路徑表示在目前目錄中(cpp所在目錄)
關閉檔案操作包括把緩沖區資料完整地寫入檔案,添加檔案結束辨別(EOF,值為0x1A的字元,Ctrl-z),切斷流對象和外部檔案的連接配接。
b.字元串的通路
用cin或cout輸入/輸出字元串時,字元數組名和字元指針可以像一個“串變量名”那樣使用。用cin輸入時,以空格或回車結束,而cout輸出一個串時,要求以'/0'識别結束。
代碼
#include<fstream>
using namespace std;
int sum(char a[]) //按規則把字元串對應于一個整數
{
int s=1;
for(int i=0; a[i]; i++)
{
s*=a[i]-'A'+1;
}
return s;
}
int main()
{
fstream fin("ride.in", ios::in); //打開檔案
fstream fout("ride.out", ios::out);
char cometName[7];
char groupName[7];
fin>>cometName>>groupName; //字元串通路
fin.close(); //關閉檔案
if(sum(cometName)%47!=sum(groupName)%47) //選取條件
{
fout<<"STAY"<<endl;
}
else
{
fout<<"GO"<<endl;
}
fout.close();
return 0;
}