printf,需要#include <stdio.h>
cout<<,需要#include <iostream.h>
二者的功能都是將資料輸出
printf:
語法→printf(const char*,... )
使用printf()時要指定整數、浮點數、字元等進行顯示,則要配合格式指定字(format specifier)
%c 以字元方式輸出
%d 10 進位整數輸出
%f 浮點數輸出
%s 字串輸出
其它格式請參閱:
printfcout:
語法→cout << 變數、數值或字串1 << 變數2、數值2或字串2 << ... << 變數n、數值n或字串 n;
可利用 '\n' 或 endl 函數控制跳行
cout 因為多載 << 運算符,所以不管你傳入什麼型別都會自動轉型成 string
cout 可以將字串先寫入緩沖區,待輸入 cout.flush() 或 <<"\n";才將字串輸出。在顯示器上較難看出效果,但是在寫入文件時可以輸出一定的大小之後再執行寫入的動作,以減少碟碟的讀寫次數,以維持執行效能。
因為三樓的 teldeanmac85 己經寫的很完整了,我直接 copy 他的來改成 cout 給你參考
複製程式
/*九九乘法表 */
#include <iostream>
using namespace std;
void testFunc(int i, int j);//定義函數原型
int main()
{
testFunc(1,1);//乎叫 testFunc
system("pause");
}
void testFunc(int i,int j)
{
cout.width(2); //設定輸出字寬,輸出前都要重新設定
cout<<i<<"*";
cout.width(2);
cout<<j<<"=";
cout.width(2);
cout<<i*j;
if (j==9) cout<<"\n"; //換行,也可以是 cout<<endl;
i+=j/9; //i+ (j除9的商數)
j%=9; //j= (j除9的餘數)
j++; //j=j+1
if (i<=9) testFunc(i, j); //i小於或等於9時再呼叫一次目前的 testFunc
return; //當i大於9時退出 testfunc
}
當程式執行至
if (i<=9) testFunc(i, j);
就是呼叫自己遞迴了。
另外以下三行寫法是故意這樣寫的
i+=j/9; //i+ (j除9的商數)
j%=9; //j= (j除9的餘數)
j++; //j=j+1
目前這個遞迴是傳入二個值 i 、j 印出 九九乘法表
使用上面三行的類似作法可以改寫成傳入 0~80 印出九九乘法表喔!
有興趣的可以試寫看看。