W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
我們可以通過多種方式從鍵盤讀取輸入。
以下是從鍵盤讀取輸入的函數(shù)列表:
getchar() gets() scanf()
getchar()函數(shù)用于從鍵盤獲取一個字符,putchar()函數(shù)用于向Terminal打印一個字符。
#include <stdio.h>
void getchar_putchar();
int main() {
getchar_putchar();
return 0;
}
void getchar_putchar(){
int c;
printf ("Type a character: ");
c = getchar();
printf ("char: %c\n",c);
putchar(c);
printf("\n");
}
上面的代碼生成以下結(jié)果。
gets()用于讀取文本。如果您輸入換行符(ENTER鍵),將停止閱讀。
我們可以使用fgets()來讀取長度限制的文本。
#include <stdio.h>
void gets_puts();
int main() {
gets_puts();
return 0;
}
void gets_puts(){
char name[256];
printf ("Your name: ");
gets (name);
printf ("name: %s\n",name);
puts(name);
name[0] = "\0"; // clear
printf ("Your name: ");
fgets(name,256,stdin);
printf ("name: %s\n",name);
puts(name);
}
上面的代碼生成以下結(jié)果。
另一種方法,我們可以使用scanf()函數(shù)來讀取文本。
#include <stdio.h>
void scanf_demo();
int main() {
scanf_demo();
return 0;
}
void scanf_demo(){
int num;
char c;
char city[15];
float dec;
printf("Please enter an integer value: ");
scanf("%d", &num );
// %c ignores space characters
printf("Please enter a character: ");
scanf(" %c", &c );
printf("Please enter a city name (no space): ");
scanf("%s", city );
printf("Please enter a decimal value: ");
scanf("%f", &dec );
printf("\n-----result-------\n");
printf("number = %d\n", num );
printf("character = %c\n", c );
printf("city name = %s\n", city );
printf("decimal number = %f\n", dec );
}
上面的代碼生成以下結(jié)果。
我們可以從我們的程序中讀取參數(shù)及其長度。此信息已傳遞給main()函數(shù)。
#include <stdio.h>
int main(int argc, const char* argv[]) {
int i;
printf("total argument: %d\n",argc-1);
if(argc>1){
for(i=1;i<argc;i++){
printf("%s\n",argv[i]);
}
}
return 0;
}
上面的代碼生成以下結(jié)果。
下表列出了使用scanf()讀取數(shù)據(jù)的格式說明符
Action | 所需的控制字符串 |
---|---|
讀取short類型的值 | %hd |
讀取int類型的值 | %d |
讀取long類型的值 | %ld |
讀取float類型的值 | %f 或 %e |
讀取double類型的值 | %lf 或 %le |
在%ld和%lf格式說明符中,l是小寫的。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: