你好,將襪或 FILE 指針設置成全友凳局就可以了。
創(chuàng)新互聯(lián)主營射陽網(wǎng)站建設的網(wǎng)絡公司,主營網(wǎng)站建設方案,APP應用開發(fā),射陽h5小程序設計搭建,射陽網(wǎng)站營銷推廣歡迎射陽等地區(qū)企業(yè)咨詢
下面是偽代碼,用于告告伍參考。
C語言輸入輸出函數(shù)有很多,bai標準I/O函數(shù)du中包含了如下幾個常用的函數(shù):
scanf,printf,getc,putc,getchar,putchar,gets,puts,fgets,fputs,fgetc,fputc,fscanf,fprintf等.
int scanf(const char *format, arg_list)
scanf主要從標準鎮(zhèn)鎮(zhèn)zhi輸入流中獲取dao參數(shù)值,format為指定的參數(shù)格式及參數(shù)類型,如scanf("%s,%d",str,icount);
它要求在標準輸入流中輸入類似"son of bitch,1000"這樣的字符串,同時程序會歷明將"son of bitch"給str,1000給icount.
scanf函數(shù)的返回值為int值,即成功賦值的個數(shù),在上例中如果函數(shù)調(diào)用成功,則會返回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主要是從文件中讀出一個字符.常用的判斷文件是否讀取結(jié)束的語句為:(ch = getc(fp)) != EOF.EOF為文件結(jié)束標志,
定義在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.但是從輸入流中讀取字符時又
涉及到緩沖的問題,所以并不是在屏幕中敲上一個字符程序就會運行,一般是通過在屏幕上敲上回車鍵,然后將回車前的字符
串放在緩沖區(qū)中,getchar就是在緩沖區(qū)中一個一個的讀字符.當然也可以在while循環(huán)中指定終止字符,如下面的語句:
while ((c = getchar()) != '#')這是以御爛粗#來結(jié)束的.
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是存放讀入的字符數(shù)組指針,num是最大允許的讀入字符數(shù),fp是文件指針.fgets的功能是讀一行字符,該行的字符數(shù)
不大于num-1.因為fgets函數(shù)會在末尾加上一個空字符以構(gòu)成一個字符串.另外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按照指定格式從文件中出讀出數(shù)據(jù),并賦值到參數(shù)列表中.
int fprintf(FILE *fp, char *format,...)
fprintf將格式化數(shù)據(jù)寫入流式文件中.
#include?stdio.h
void?xianshi(int?b[],int?n)??//顯示
{
int?i;
int?a[20];
printf("\t\t\t磁道信息\n");
printf("\t\t=========================\n");
for(i=0;?in;?i++)
a[i]=b[i];
for(i=0;?i答高孝n;?i++)
{
printf("\t\t\t%4d\n",a[i]);
念頃??}
printf("\t\t=========================\n");
}
void?main()
{
int?a[20];
int?i,n,k,k1,init;
printf("請輸入需要訪問清稿的磁道總數(shù):");
scanf("%d",n);
for(i=0;?in;?i++)
{
printf("需要訪問的磁道%d:",i+1);
scanf("%d",a[i]);
fflush(stdin);????//刷新一下緩存
}
//printf("請輸入指針所在磁道:");
//scanf("%d",init);
xianshi(a,?n);
}
運行結(jié)果如下:
用一個變量存放返回值,或者采用引用參數(shù)的形式改變要輸出的值