c語言的輸入輸出格式
❶ c語言格式輸入輸出
不是的, 傳入參數參數的時候傳入的還是2.2,在printf函數中把2.2的二進制位模式解釋為一個整數列印出來,而不是去掉小數部分
❷ C語言中無符號長整型數的輸入輸出格式是什麼
以%開頭的都是輸出控制符。主要有%d、%u、%ld、%p。
1、%d它的意思是按十進制整型數據的實際長度輸出。
2、%u輸出無符號整型(unsigned)。輸出無符號整型時也可以用 %d,這時是將無符號轉換成有符號數,然後輸出。
3、%ld它的意思是輸出長整型數據。
4、%p 輸出變數的內存地址。
(2)c語言的輸入輸出格式擴展閱讀
1、八進制在C語言中,八進制的輸出格式是 %o,八進制是以0為開頭的數字,0後面的數字都要小於8,最大為7。
2、十六進制十六進制的輸出格式是 %x,十六進製表示的數是0x12 ,這個0也是零。十六進制有點特殊的地方是1-9是純數字,10-15是用A、B、C、D、E、F來表示的。
4、%d中的d並不表示integer,而是表示decimal(10進制)。
❸ C語言中輸入輸出函數有幾種格式
C語言輸入輸出函數有很多,標准I/O函數中包含了如下幾個常用的函數:
scanf,printf,getc,putc,getchar,putchar,gets,puts,fgets,fputs,fgetc,fputc,fscanf,fprintf等.
int
scanf(const
char
*format,
arg_list)
scanf主要從標准輸入流中獲取參數值,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語言字元數組,輸入輸出字元串格式。(請各位大神指教)
%s表示輸出一個字元串,給出的字元指針變數名是str,那麼系統先輸出它所指向的第一個字元數據,然後自動使str加1,使之指向下一個字元,然後再輸出一個字元。。。。如此直到遇到結束標志『\0』為止(\0是最後被自動加上的,因此能夠在輸出時確定字元串的終止位置)~
❺ c語言中輸入輸出的一些格式符及其意思
printf("%d",n);//用int類型的輸出
printf("%i",n);//用int類型的輸出
printf("%f",n);//float類型的輸出
printf("%lf",n);//double類型的輸出
printf("%.3f",n);//小數點後保留三位
printf("%.4lf",n);//double類型的小數點後保留4位數
printf("%s",a);//字元串的輸出
puts(a);字元輸出;
printf("我是菜鳥");//輸出我是菜鳥字樣;
printf("我是菜鳥\n");//輸出完了換行;
\b是退格;
\t是橫向跳就是多個空格;
我們現在基本不用了在可視化里根本不用了那裡有UpdateData(0);
之類的很多呢
以上功能就行了夠用了;。
❻ c語言格式輸入輸出函數
一:格式輸出函數printf()
1、調用形式一般為:printf("格式化控制字元串",輸出表列);
2、格式化控制字元串用於指定輸出格式,它有三種形式:
1、格式說明符:規定了相應輸出表列內容的輸出格式,以%打頭,如%d、%o等
2、轉義字元:用來輸出轉義字元所代表的控制代碼或者特殊字元,比如常用的『\n'、『\t'
3、普通字元:需要原樣輸出的字元。
3、輸出表列為若干需要輸出的數據項,它與格式說明符在數量和類型上一一對應;
4、格式字元m指定輸出數據所佔寬度,n對實數表示輸出n位小數,對字元串表示截取的字元個數,+表示右對齊,通常省略。
—表示左對齊,l用於長整型數據,可加在d、o、x、u前,更多格式說明符及其組合形式如下所示:
格式字元
數據對象
輸出形式
數據輸出方法
%(+)-md
int
unsigned
int
short
unsigned
short
char
十進制整數
1、無m按實際位數輸出
2、有m輸出m位;超過m位,按實際位數輸出,不足補空格
3、有+(默認為+)右對齊(左補空格)
4、有-左對齊(右補空格)
%(+)-mo
八進制整數
%(+)-mx
十六進制整數
%(+)-mu
無符號整數
%(+)-mld
long
unsigned
long
十進制整數
%(+)-mlo
八進制整數
%(+)-mlx
十六進制整數
%(+)-mlu
無符號整數
%(+)-m.nf
float
double
十進制小數
%(+)-m.ne
十進制指數
%(+)-g
自動選用%f和%e中較短的輸出寬度輸出單、雙精度浮點數
%(+)-mc
char
int
short
單個字元
1、無m輸出單個字元
2、有m輸出m位,補空格
3、有+(默認為+)右對齊(左補空格)
4、有-左對齊(右補空格)
%(+)-m.ns
字元串
一串字元
1.無m、n按實際字元串輸出全部字元
2、有m、n僅輸出前n個字元,補空格
3.有+(默認為+)右對齊(左補空格)
4、有-左對齊(右補空格)
二:格式輸入函數scanf()
1、
調用格式一般為:scanf("格式化控制字元串",地址表列);
2、格式化控制字元串和printf()函數含義相似,所不同的是它是對輸入格式進行控制;
3、地址表列是有若乾等待輸入的數據所對應的內存單元地址組成,由逗號隔開,一般形式為&a,a為變數;
4、地址表列在數量和類型上和格式化控制字元串中的格式說明符一一對應;
5、格式字元h表示輸入短型數據,可用在d、o、x前面,m指定輸入數據所佔寬度,
*表示對應的數據項讀入後不賦給相應的變數,更多格式說明符及其組合如下
格式字元
數據對象
輸入形式
數據輸入方法
%md
int
short
unsigned
int
unsigned
short
十進制整數
1、無m按實際位數輸入
2、有m輸入m位,不足m則跟回車鍵
%mo
八進制整數
%mx
十六進制整數
%mld
long
unsigned
long
十進制整數
%mlo
八進制整數
%mlx
十六進制整數
%mlf
float
double
十進制整數
%mle
%mc
char
單個字元
1、無m取單個字元
2、有m輸入m位,僅取第一個字元
%ms
字元串
一串字元
1、無m取回車或空格前若干字元
2、有m僅取前m字元
❼ C語言中以單精度浮點型輸入,輸出格式為%d或%c,為什麼顯示的數不對謝謝!
肯定不對啊!
你輸入的時候是單精度浮點數類型,c語言中變數就是float類型,輸入使用的格式是%f。
不同的變數類型在內存中的儲存方式也完全不同,當你用整型格式(int)去讀一個浮點格式(float)的數字時,不可能讀出正確的結果。
所以,你必須用跟輸入時相同的格式(%f)輸出(另外,還必須跟變數的類型一致),才能顯示正確的數字。
❽ c語言的輸入輸出格式
用typedef再自定義數據類型也還是基本數據類型,不會變的.
int:%d
float:%f
double:%lf
char:%c
void*:%p
我看你是沒完全懂或是沒學struct,指針,typedef和數組.它們再變化,都還是基本數據類型,如:
struct A
{
int a;
float b;
};
你如果要輸出A實例化出的對象,一定是要指定是輸出a還是b,如果是a那a就是int型的,那就用%d輸出,b同理.
要用指針輸出它指向的變數,在指針前加個星號就行了,輸出控制符和它指向的數據類型一樣.
❾ C語言中,輸出字元的格式是什麼
C語言格式字元輸出格式有d,o,x,u,c,s,f,e,g等。如%d整型輸出,%ld長整型輸出,%o以八進制數形式輸出整數,%x以十六進制數形式輸出整數,或輸出字元串的地址。%u以十進制數輸出unsigned型數據(無符號數)。注意:%d與%u有無符號的數值范圍,也就是極限的值,不然數值列印出來會有誤。%c用來輸出一個字元,%s用來輸出一個字元串,%f用來輸出實數,以小數形式輸出,默認情況下保留小數點6位。%.100f用來輸出實數,保留小數點100位。%e以指數形式輸出實數,%g根據大小自動選f格式或e格式,且不輸出無意義的零。
【答題不易,請採納謝謝】