作業7 輸入輸出與模板

2022-08-01 06:21:13 字數 4023 閱讀 9351

1.簡單的sumarray

1

//填寫模板 printarray,使得程式輸出結果是: tomjackmaryjohn 10 不得編寫sumarray函式

23 #include 4 #include

5using

namespace

std;

6 template

7 t sumarray(t * begin, t *end)

13return

sum;14}

15int

main() ;

17 cout << sumarray(array,array+4) <18int a[4] = ; //

19 cout << sumarray(a,a+4) <20return0;

21 }

其實這個可以不用i的……下面的題目就沒有用i

2.簡單的foreach

1

//編寫myforeach模板,使程式按要求輸出 不得編寫 myforeach函式

2 #include 3 #include

4using

namespace

std;5//

在此處補充你的**

6 template

7void myforeach(t s, t e, func out)11

void print(string

s)12

15void inc(int &n)

1619

string array[100

];20

int a[100

];21

intmain()

35return0;

36 }

這裡就沒有用i = =

3.簡單的filter

1

//編寫filter模板,使得程式產生指定輸出 不得編寫 filter函式

2 #include 3 #include

4using

namespace

std;5//

在此處補充你的**

6 template

7t filter(t begin, t end, t temp, func op)

12return temp; //

應當返回的是末尾 13}

1415

bool largerthan2(int

n)16

19bool longerthan3(string

s) 20

2324

string as1[5] = ;

25string as2[5

];26

int a1[5] = ;

27int a2[5

];28

intmain()

注意審題,i4.你真的搞清楚為啥 while(cin >> n) 能成立了嗎?

我沒搞清楚……

1

//讀入兩個整數,輸出兩個整數 ,直到碰到-1

2 #include 3

using

namespace

std;

4class

mycin

511 mycin & operator>>(int & n)

17operator

bool()

20};

21int

main()

22

首先就是過載》的引數一定要是引用,然後就是status這個狀態變數,然後就是過載型別轉換運算子。反正就是挺巧妙的我覺得……好好看看吧。

5.山寨版istream_iterator

1

//模仿c++標準模板庫istream_iterator用法,實現cmyistream_iterator使得程式按要求輸出

2 #include 3 #include 45

using

namespace

std;

6 template

7class

cmyistream_iterator8

16 t & operator *()

22void

operator++(int)27}

28 ~cmyistream_iterator()

31};

3233

3435

intmain()

3657

return

0;

58 }

提示c++標準模板庫 istream_iterator模版使用說明:

其建構函式執行過程中就會要求輸入,然後每次執行++,則讀取輸入流中的下乙個專案,執行 * 則返回上次從輸入流中讀取的專案。例如,下面程式執行時,就會等待使用者輸入資料,輸入資料後程式才會結束:

#include

#include

using namespace std;

int main()

下面程式執行時,如果輸入 12 34 程式輸出結果是: 12,12

#include

#include

using namespace std;

int main()

5.這個模板並不難

1

//程式填空,輸出指定結果

2 #include 3 #include

4 #include 5

using

namespace

std;

6 template

7class

myclass

18 ~myclass( )

21void

show()

2226 cout <28};

29int a[100

];30

intmain()

42return0;

43 }

6.排序,又見排序

1

//自己編寫乙個能對任何型別的陣列進行排序的mysort函式模版。只能寫乙個mysort模板,不能寫mysort函式!

2 #include 3

using

namespace

std;

4bool greater2(int n1,int

n2) 58

bool greater1(int n1,int

n2) 912

bool greater3(double d1,double

d2)13

1617

//在此處補充你的**

18 template

19void

mysort(t1 begin, t1 end, t2 op)25}

26}

2728

#define num 5

29int

main()30;

32 mysort(an,an+num,greater1); //

從小到大排序

33for( int i = 0;i < num; i ++)

34 cout << an[i] << ","

;35 mysort(an,an+num,greater2); //

從大到小排序

36 cout <37for( int i = 0;i < num; i ++)

38 cout << an[i] << ","

; 39 cout <40double d[6] = ;

41 mysort(d+1,d+5,greater3); //

將陣列從下標1到下標4從小到大排序

42for( int i = 0;i < 6; i ++)

43 cout << d[i] << ","

; 44

return0;

45 }//

7 輸入輸出

str.format print format 1,2 212 print format name ji age 22 ji,22 print format 0,1,2 2,0 print format 陳某某 居中 print format 陳某某 右對齊 print format 陳某某 左對齊...

輸入輸出和模板

輸入輸出流相關的類 istream 是用於輸入的流類,cin是該類的物件。ostream 是用於輸出的流類,cout就是該類的物件 ifstream 是用於從檔案讀取資料的類。ofstream 是用於向檔案寫入資料的類。iostream 是既能用於輸入,又能用於輸出的類。fstream 是既能從檔案...

記 輸入輸出測試 7

描述 輸入 n 個數字,輸出數字 1 的數量 數字 0 的數量。輸入第一行是乙個正整數 n 代表數字的數量。第二行是 n 個非負整數,這些數字兩兩之間以空格分開。輸出數字 1 的數量 數字 0 的數量,然後換行。樣例輸入 50 1 2 3 4 樣例輸出 2初始自己瞎寫版 include using ...