printf() 與 scanf()

"电子计算机 -教育 -IT 電腦班" 為大家配對电子计算机老師, 電腦補習,電腦班, 電腦課程, it 教育, 資訊科技 教育, 補習, 香港IT教育,電腦編程課程,在線IT教學,電腦科學教育,IT技能培訓,程式設計教學,IT自學資源,電腦編程導師,IT職業培訓,香港電腦教學,香港IT教育,電腦編程課程,在線IT教學,電腦科學教育,IT技能培訓,程式設計教學,IT自學資源,電腦編程導師,IT職業培訓,香港電腦教學,程式語言教學,IT教育平台,電腦科技教育,IT課程香港,學習編程香港,IT技術教學,電腦編程學習,IT行業培訓,電腦技能提升,香港IT專業教育,香港信息技术教育,香港IT課程,香港電腦科學課程,香港編程課程,香港數據分析課程,香港網絡安全培訓,香港軟件開發教育,香港IT證書課程,香港信息技術在線學習,香港IT專業培訓,香港數碼技術教育,香港AI教育,香港區塊鏈教育,香港雲計算課程,香港IT職業培訓,自由職業, 自由工作,IT freelance, 私人老師, PHP補習, HTML補習, CSS補習, JavaScript補習, XML, Java補習,Server補習, MySQL補習, 中學電腦. #Computer, #mobile, #Android, #apple, #game, #movie, #anime, #animation, #电子计算机, #教育, #信息技术, #程序设计, #移动电话, #电子计算器, #信息, #IT, #電腦班, #C++, #Java, #Python, #JavaScript, #電腦, #IT, #freelance, #programming, #電腦補習, #電腦班, #家教, #私人老師, #information technology, #teacher, #電腦班, #電腦課程, #it 教育, #資訊科技, #補習, #自由職業, #自由工作, #IT freelance, #私人老師, #中學電腦, #PHP補習, #HTML補習, #CSS補習, #JavaScript補習, #XML, #Java補習,#Server補習, #MySQL補習
"电子计算机 -教育 -IT 電腦班" 為大家配對电子计算机老師, 電腦補習,電腦班, 電腦課程, it 教育, 資訊科技 教育, 補習, 香港IT教育,電腦編程課程,在線IT教學,電腦科學教育,IT技能培訓,程式設計教學,IT自學資源,電腦編程導師,IT職業培訓,香港電腦教學,香港IT教育,電腦編程課程,在線IT教學,電腦科學教育,IT技能培訓,程式設計教學,IT自學資源,電腦編程導師,IT職業培訓,香港電腦教學,程式語言教學,IT教育平台,電腦科技教育,IT課程香港,學習編程香港,IT技術教學,電腦編程學習,IT行業培訓,電腦技能提升,香港IT專業教育,香港信息技术教育,香港IT課程,香港電腦科學課程,香港編程課程,香港數據分析課程,香港網絡安全培訓,香港軟件開發教育,香港IT證書課程,香港信息技術在線學習,香港IT專業培訓,香港數碼技術教育,香港AI教育,香港區塊鏈教育,香港雲計算課程,香港IT職業培訓,自由職業, 自由工作,IT freelance, 私人老師, PHP補習, HTML補習, CSS補習, JavaScript補習, XML, Java補習,Server補習, MySQL補習, 中學電腦. #Computer, #mobile, #Android, #apple, #game, #movie, #anime, #animation, #电子计算机, #教育, #信息技术, #程序设计, #移动电话, #电子计算器, #信息, #IT, #電腦班, #C++, #Java, #Python, #JavaScript, #電腦, #IT, #freelance, #programming, #電腦補習, #電腦班, #家教, #私人老師, #information technology, #teacher, #電腦班, #電腦課程, #it 教育, #資訊科技, #補習, #自由職業, #自由工作, #IT freelance, #私人老師, #中學電腦, #PHP補習, #HTML補習, #CSS補習, #JavaScript補習, #XML, #Java補習,#Server補習, #MySQL補習

在C语言中是用printf函数进行输出,用scanf函数进行输入的。C++保留了C语言的这一用法,在此只作很简单的介绍。更多内容请查看:

C++ ,C语言, 電腦班, C程序设计语言, C/C++電腦班, 電腦課程, 電腦課程, C++補習教學, C++補習,C++程式編寫,C++課程補習,C++, 大學生C++課程 ,C++1 對 1 私人電腦課程, C++1 對 1 私人電腦補習,C++私人補習, C++電腦興趣班, C++電腦補習班
C/C++

scanf函数一般格式是:
    scanf(格式控制, 输出表列)

【例】用scanf和printf函数进行输入和输出。

#include <iostream>using namespace std;int main( ){  int a; float b; char c;  scanf("%d %c %f",&a,&c,&b);  //注意在变量名前要加地址运算符&  printf("a=%d,b=%f,c=%c\n",a,b,c);  return 0;}

运行情况如下:
12 A 67.98↙(本行为输入,输入的3个数据间以空格相间)
a=12,b=67.980003,c=A(本行为输出)

输入的整数12送给整型变量a,字符’A’送给字符变量c,67.98送给单精度变量b。

printf() 與 scanf() 
學習 C 的過程中,通常是從主控台,也就是文字模式下開始,為了與程式互動,在主控台下輸出程式執行結果,或是從主控台取得使用者的輸入資料是基本需求,在 C 中標準輸入輸出是由 stdio 提供,這也就是為何您要在程式的一開頭終是加上:

#include <stdio.h>

將訊息輸出至主控台,稱之為標準輸出(Stand output),C 藉由 printf() 將訊息輸出至主控台,至今已經看過幾個 printf() 函式的應用了,基本上,printf() 就是將指定的文字、數值等輸出至螢幕上,並且執行過後會傳回所輸出的字元數,例如:

#include <stdio.h>

int main(void) {
    int count = printf("This is a test!\n");
    printf("%d\n", count);

    return 0;
}

"This is a test!\n" 當中包括換行字元,共有 16 個字元,因此 count 的值會是 16,顯示結果如下:

This is a test!
16

標準輸出可以被重新導向至檔案,可以在執行程式時使用 >> 將輸出結果導向至指定檔案,例如(假設編譯後的可執行檔為 main):

main >> result.txt

如果程式的目的是顯示 "Hello! World!",則上面的執行會將結果導向至 result.txt,而不會在螢幕上顯示 "Hello! World!",result.txt中將會有輸出結果 Hello! World!。

要重新導向標準輸出是用 >,標準輸入則是 <,而 >> 除了重導標準輸出,還有附加的功能,也就是會把輸出附加到被導向的目標檔案後頭,如果目標檔案本來不存在,那麼效果就和 > 一樣。

整數、浮點數、字元

如果在使用 printf() 時要指定整數、浮點數、字元等進行顯示,則要配合格式指定字(format specifier),以下列出幾個可用的格式指定碼:

%c以字元方式輸出
%d10 進位整數輸出
%o以 8 進位整數方式輸出
%u無號整數輸出
%x, %X將整數以 16 進位方式輸出
%f浮點數輸出
%e, %E使用科學記號顯示浮點數
%g, %G浮點數輸出,取 %f 或 %e%f 或 %E),看哪個表示精簡
%%顯示 %
%s字串輸出
%lulong unsigned 型態的整數
%p指標型態

基本上,要顯示的是什麼資料型態,就必須搭配對應資料型態的格式指定字,但 %d 若用來輸出某個字元,將顯示其整數編碼值,若 %c 用來顯示某個整數,將顯示該整數對應編碼的字元,一個使用的範例如下所示:

例如

#include <stdio.h>

int main(void) {
    printf("顯示字元 %c\n", 'A');
    printf("顯示字元編碼 %d\n", 'A');
    printf("顯示字元編碼 %c\n", 65);    
    printf("顯示十進位整數 %d\n", 15);
    printf("顯示八進位整數 %o\n", 15);
    printf("顯示十六進位整數 %X\n", 15);
    printf("顯示十六進位整數 %x\n", 15);    
    printf("顯示科學記號 %E\n", 0.001234);    
    printf("顯示科學記號 %e\n", 0.001234);    

    return 0;
}

顯示結果如下所示:

顯示字元 A
顯示字元編碼 65
顯示字元編碼 A
顯示十進位整數 15
顯示八進位整數 17
顯示十六進位整數 F
顯示十六進位整數 f
顯示科學記號 1.234000E-03
顯示科學記號 1.234000e-03

您可以在輸出浮點數時指定精度,例如若為浮點數:

printf("example:%.2f\n", 19.234);

.2 指定小數點後取兩位,執行結果會輸出:

example:19.23

也可以指定輸出時,至少要預留的字元寬度,無論是數值或字串,例如:

printf("example:%6.2f\n", 19.234);

整數 6 表示預留 6 個字元寬度,由於預留了 6 個字元寬度,不足的部份要由空白字元補上,所以執行結果會輸出如下(19.23只佔五個字元,所以補上一個空白在前端):

example: 19.23

若在 % 之後指定負號,例如 %-6.2f,則表示靠左對齊,沒有指定則靠右對齊,例如:

#include <stdio.h>

int main(void) {
    printf("example:%6.2f\n", 19.234);
    printf("example:%-6.2f\n", 19.234);

    return 0;
}

顯示結果如下:

example: 19.23
example:19.23
IT電腦補習, IT Teacher IT Freelance

Be the first to comment

Leave a Reply

Your email address will not be published.


*