本文目錄一覽:
- 1、關於C語言輸入函數
- 2、C語言中輸入函數賦值?
- 3、在C語言中如何輸入一個函數
- 4、c語言有哪些輸入輸出函數
- 5、C語言輸入函數
關於C語言輸入函數
(3)輸入一個實數類型,說白了就是小數,當然整數也是支持的,存儲為實數類型
(4)輸入一個實數類型並加上一個回車,說白了就是小數,當然整數也是支持的並加上一個回車,存儲為實數類型
C語言中輸入函數賦值?
n = scanf(“%d”,n);
這一句有問題
1. scanf 函數是有返回值的,它的返回值可以分成三種情況
1) 正整數,表示正確輸入參數的個數。
例如執行 scanf(“%d %d”, a, b);
如果用戶輸入”3 4”,可以正確輸入,返回2(正確輸入了兩個變量);
如果用戶輸入”3,4”,可以正確輸入a,無法輸入b,返回1(正確輸入了一個變量)。
2) 0,表示用戶的輸入不匹配,無法正確輸入任何值。如上例,用戶如果輸入”,3 4”,返回0。
3) EOF,這是在 stdio.h 裡面定義的常量(通常值為-1),表示輸入流已經結束。在Windows下,用戶按下CTRL+Z(會看到一個^Z字符)再按下回車(可能需要重複2次),就表示輸入結束;Linux/Unix下使用CTRL+D表示輸入結束。
你這個輸入一個返回值就是1,因此n也會一直等於一
在C語言中如何輸入一個函數
c語言是函數式語言,所以函數很重要,舉個例子 #includestdio.h int abc(int a ,int b) /* abc 前的 int 表示這個函數的返回值是整數,abc 是函數名稱,括號里的是定義了兩個參數它們都是整數*/ { int a=123; printf(“%d”,a); } 這個是我們自己寫的函數,還有現成的c庫函數,直接調用就行,限於篇幅,其實你仔細的摳書,書上都有,我就是看書學會的
c語言有哪些輸入輸出函數
C語言輸入輸出函數有很多,bai標準I/O函數du中包含了如下幾個常用的函數:
scanf,printf,getc,putc,getchar,putchar,gets,puts,fgets,fputs,fgetc,fputc,fscanf,fprintf等.
int scanf(const char *format, arg_list)
scanf主要從標準zhi輸入流中獲取dao參數值,format為指定的參數格式及參數類型,如scanf(“%s,%d”,str,icount);
它要求在標準輸入流中輸入類似”son of bitch,1000″這樣的字符串,同時程序會將”son of bitch”給str,1000給icount.
scanf函數的返回值為int值,即成功賦值的個數,在上例中如果函數調用成功,則會返回2,所以我們在寫程序時,可以通過
語句if(scanf(“%s,%d”,str,icount) != 2){…}來判斷用戶輸入是否正確.
int printf(const char *format, arg_list)
printf主要是將格式化字符串輸出到標準輸出流中,在stdio.h頭文件中定義了標準的輸入和輸出,分別是stdin,stdout.
arg_list可以是變量名,也可以是表達式,但最終都會以值的形式填充進format中.
int getc(FILE *fp)
getc主要是從文件中讀出一個字符.常用的判斷文件是否讀取結束的語句為:(ch = getc(fp)) != EOF.EOF為文件結束標誌,
定義在stdio.h中,就像EXIT_SUCCESS,EXIT_FAILURE定義在stdlib.h中一樣,文件也可以被理解為一種流,所以當fp為stdin
時,getc(stdin)就等同於getchar()了.
int putc(int ch,FILE *fp)
putc主要是把字符ch寫到文件fp中去.如果fp為stdout,則putc就等同於putchar()了.
int getchar(void)
getchar主要是從標準輸入流讀取一個字符.默認的標準輸入流即stdio.h中定義的stdin.但是從輸入流中讀取字符時又
涉及到緩衝的問題,所以並不是在屏幕中敲上一個字符程序就會運行,一般是通過在屏幕上敲上回車鍵,然後將回車前的字符
串放在緩衝區中,getchar就是在緩衝區中一個一個的讀字符.當然也可以在while循環中指定終止字符,如下面的語句:
while ((c = getchar()) != ‘#’)這是以#來結束的.
int putchar(int ch)
putchar(ch)主要是把字符ch寫到標準流stdout中去.
char * gets(char *str)
gets主要是從標準輸入流讀取字符串並回顯,讀到換行符時退出,並會將換行符省去.
int puts(char *str)
puts主要是把字符串str寫到標準流stdout中去,並會在輸出到最後時添加一個換行符.
char *fgets(char *str, int num, FILE *fp)
str是存放讀入的字符數組指針,num是最大允許的讀入字符數,fp是文件指針.fgets的功能是讀一行字符,該行的字符數
不大於num-1.因為fgets函數會在末尾加上一個空字符以構成一個字符串.另外fgets在讀取到換行符後不會將其省略.
int fputs(char *str, file *fp)
fputs將str寫入fp.fputs與puts的不同之處是fputs在打印時並不添加換行符.
int fgetc(FILE *fp)
fgetc從fp的當前位置讀取一個字符.
int fputc(int ch, file *fp)
fputc是將ch寫入fp當前指定位置.
int fscanf(FILE *fp, char *format,…)
fscanf按照指定格式從文件中出讀出數據,並賦值到參數列表中.
int fprintf(FILE *fp, char *format,…)
fprintf將格式化數據寫入流式文件中.
C語言輸入函數
getc():
調用方式:int getc(FILE *stream)
它返回指定輸入流stream的當前位置的下一個字符,並增加文件的位置指示器.
getch():
調用方式:int getch(void)
getch()從控制台讀取一個字符,但不把該字符顯示在屏幕上,也就是不回顯.
getche():
調用方式:int getche(void)
getche()從控制台讀取一個字符,把該字符顯示在屏幕上,也就是回顯.
getchar():
調有方式:int getchar(void)
getchar()從控制台讀取一個字符,並回顯,它和getch(),getche()的不同在於,它等到輸入一個回車才結束,就算你輸入了一個字符串,它也只取其中的第一個字符.
getchar()頭文件為string.h,即需有# includestring.h
其他的頭文件為conio.h
呃,你可以使用追問嗎~我這太不方便了,請問你用的什麼編譯器?
呃,這樣子啊,對gcc我不清楚了就,也許其不支持或者文件庫不一樣,你可以針對查查,
在vc中我試了沒有問題。。。
原創文章,作者:PTSH,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/137198.html