機能scanfの書式制御文字:%※C
真ん中スキップアスタリスク文字である一方、%cは、読み込むための文字です。これは、文字を読み取りますが、変数に割り当てられていないことを意味しています。
以下の詳細な記述形式である、を参照してください。
%----------------- Aは、浮動小数点値(有効のみC99)読み出し
--------%のAを---------前掲の
%cは-----------------文字読み込み
---------------%dを- 10進整数の読み出し
iは----------------- 10進、8進数、16進数整数で読み出さ%
------------%Oを-----進整数読み取り
%X -----------------進整数読み取り
-------------%のXを----同上の
%cは-----------------文字読み込み、
%sは-----------------読みます文字列
%F -----------------浮動読み込み
%のFを-----------------前掲
%e-- ---------------同上の
%のE -----------------同上
%のG ------------ -----同上
%のG -----------------上記の
%のP -----------------リードポインタ
% Uは-----------------符号なし10進整数読み取り
-----------------%nの値は、これまでに読み出されました文字の数に相当
%[] ----------------走査文字セット
%%% -----------------読み取るシンボル
追加修飾文字テーブル形式記述FU
L / L:入力----修飾子「長い」データの長さが
長修飾入力------「短い」データ:H
W:整数定数指定された入力データ--------会計幅
*:アスタリスク-----------空の読み出しデータ
PS:入力した文字が属しています!!!!!
//文字逆三角形
#include <stdio.h>
int
main(
int
argc,
char
*argv[])
{
char
c
,i,j;
scanf
(
"%c%*c"
,&c); //%*c吃掉回车,否则无法输出字母三角
while
(c!=
'#'
)
{
printf
(
"case %d:\n"
,c);
for
(i=c;i>=
'A'
;i--)
{
printf
(
"%*s"
,c-i,
""
); //意思是输出c-i个空格 ps:
printf( "%※S"、10、S); / *は、出力文字列の意味が、少なくとも10点の位置を占め、不十分なスペースを埋めるには、printfの( "%の10S"、Sに相当する文字列sの左側); * /(* sの使用)
for
(j=
'A'
;j<=i;j++)
printf
(
"%c"
,j);
for
(j-=2;j>=
'A'
;j--) //for运行机制
3番目の式は、各サイクルの終了後に一度実行された最初のループの先頭から実行されます
printf
(
"%c"
,j);
printf
(
"\n"
);
}
scanf
(
"%c%*c"
,&c);
}
return
0;
}