C 語言的輸入與輸出
輸入就是將程序外部的數據輸入到程序內部,輸出就是將程序內部運行的結果等內容從程序內部輸出到顯示器,打印機或者存放到文件中。
編程語言中的輸入輸出擔負著程序與用戶的交互工作。
1. 標準輸入輸出
C 語言中的標準輸入輸出包含 3 部分。標準輸入,標準輸出,標準錯誤輸出。
表中列舉了標準輸入輸出和與之關聯的物理設備。
輸入輸出 | 設備 |
---|---|
標準輸入 | 鍵盤 |
標準輸出 | 顯示器屏幕 |
標準錯誤輸出 | 顯示器屏幕 |
標準錯誤輸出就是當你程序出錯的時候在屏幕上看到的信息。
2. 標準輸入
2.1 scanf 函數
這個函數輸入是變量的地址,有關地址和指針的概念我們會在后面有詳細的介紹,這里大家只要簡單記住這點就好。同時這個函數的返回值是一個整數,其實就是輸入的字符的數量。
這里是一個簡單的示例:
#include <stdio.h>
int main()
{
int count,i;
count=scanf("%d",&i);
printf("Your input %d number, the number is %d\n",count,i);
return 0;
}
上面一行是鍵盤輸入的內容,輸入完成后請按回車鍵確認,緊接著就會輸出剛才輸入的內容。
utopia@DESKTOP:~$ gcc test.c -o test
utopia@DESKTOP:~$ ./test
1 // 通過鍵盤輸入
Your input 1 number, the number is 1
utopia@DESKTOP:~$ ./test
3454 // 通過鍵盤輸入
Your input 1 number, the number is 3454
2.2 fgets 函數
這個函數是從標準輸入中讀取一整行的內容。它會在遇到換行符或者文件結尾符號的時候停止執行。
#include <stdio.h>
int main()
{
char str[20];
fgets(str, 20, stdin);
printf("%s",str);
return 0;
}
程序編譯后運行的結果如下:
上面一行是鍵盤輸入的內容,輸入完成后請按回車鍵確認,緊接著就會輸出剛才輸入的內容。
utopia@DESKTOP:~$ ./test
12332 // 通過鍵盤輸入
12332
utopia@DESKTOP:~$ ./test
dfss adfas // 通過鍵盤輸入
dfss adfas
3. 標準輸出
3.1 printf
對于這個函數最主要的功能是輸出有格式的字符。關于這個函數更為詳細的介紹,會出現在稍后的課程中。這里為大家簡單展示一些這個函數的最基本用法。
#include <stdio.h>
int main()
{
printf("Welcome to our lessons!\n");
return 0;
}
編譯執行上面的程序后,就會在屏幕的終端上顯示:
utopia@DESKTOP:~$ gcc test.c -o test
utopia@DESKTOP:~$ ./test
Welcome to our lessons!
3.2 puts
這個函數是輸出一行字符,相當于 printf 函數的字符輸出模式,然后尾部又增加了一個換行符的模式:
#include <stdio.h>
int main()
{
puts("Welcome to our lessons!");
return 0;
}
編譯運行后:
utopia@DESKTOP:~$ gcc test.c -o test
utopia@DESKTOP:~$ ./test
Welcome to our lessons!
4. 小結
編程語言的輸入與輸出是編程語言的基本組成部分。
C 語言的語言的標準的輸入和輸出都指通過鍵盤輸入和向顯示器輸出結果的過程。
這里面經常用到的函數包含:
- 輸入函數。 scanf, fgets 等。
- 輸出函數。 printf, puts 等。