Unterschied: scanf ist eine Eingabefunktion, die zur Eingabe von Daten von einem Standardeingabegerät (normalerweise einer Tastatur) verwendet wird; printf ist eine Ausgabefunktion, die zur Ausgabe von Daten an ein Standardausgabegerät (normalerweise ein Monitor) verwendet wird.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, c99-Version, Dell G3-Computer.
scanf() und printf() sind häufig verwendete Funktionen in der C-Standardbibliothek. Und beide Funktionen können bestimmte Formate für die Ein- und Ausgabe akzeptieren.
Wenn Sie printf und scanf aufrufen, achten Sie darauf, #include
Die Verwendung von printf ist:
printf(“格式控制字符串”,输出参数一,输出参数二);
Die Formatsteuerzeichenfolge enthält: Formatsteueranweisungen, normale Zeichen.
Formatsteueranweisungen Es geht hauptsächlich darum, Daten gemäß dem angegebenen Format auszugeben, einschließlich Formatsteuerzeichen, die mit %
beginnen. Verschiedene Datentypen verwenden unterschiedliche Formatsteuerzeichen (int-Typ verwendet %d
). , float und Double verwenden %f
) %
开头的格式控制字符,不同类型的数据采用不同的格式控制字符(int型用%d
,float和double用%f
)
普通字符就是在输出数据的时候,按照原样输出的字符,如:"fahr=%d,celsius=%dn
"中的fahr=
,celsius=
这些
scanf的用法是:
scanf(“格式控制字符串”,输入参数一,输入参数二);
格式控制字符串包含:格式控制说明,普通字符
格式控制字符串表示输入的格式,(int型用%d
,float用%f
,double型用%lf
)
普通字符:和上面谈到的printf的用法是一样的
输入的参数是变量的地址,所以要在变量前面加&
--------格式控制说明---------------------------------------------------------
%d 十进制有符号整数
%u 十进制无符号整数
%f 浮点数
%s 字符串
%c 单个字符
%p 指针的值
%e 指数形式的浮点数
%x, %X 无符号以十六进制表示的整数
%0 无符号以八进制表示的整数
%g 自动选择合适的表示法
------一些特殊规定字符-----------------------------------------------------------
n 换行
f 清屏并换页
r 回车
t Tab符
xhh 表示一个ASCII码用16进表示,
其中hh是1到2个16进制数
1、printf(“fahr=%d,celsius=%dn” ,fahr,celsius);
2、printf(“enter x(x>=0):n”);
3、printf(“y=f(%f)=%.2fn”,x,y);
%f指定以小数形式输出浮点型数据,保留的是6位小数,而%.2f则指定输出的时候保留2位小数
4、printf(",%04d",D[i]);
%04d 表示在输出一个小于4位的数值时, 将在前面补0使其总宽度为4位。
5、scanf("%lf",&x);//读取输入
调用scanf()函数输入数据,变量名x前面要加&,%lf中的l是long的首字母,scanf函数的输入参数必须和格式控制字符串中的格式控制说明相对应,
并且它们的类型,个数和位置要一一对应。
scanf("%d%d%lf",&x,&y,&z)
fahr=%d,celsius=%dn
" Die fahr=
, celsius=
Verwendung dieser scanf ist: rrreee
Die Formatsteuerzeichenfolge enthält: Formatsteueranweisungen, gewöhnliche Zeichen
%d
, float-Typ verwendet %f
, double-Typ verwendet %lf
) 🎜🎜Gewöhnliche Zeichen: und oben Die im Interview erwähnte Verwendung von printf ist dieselbe🎜🎜Der Eingabeparameter ist die Adresse der Variablen, also fügen Sie &🎜🎜--------Format-Steueranweisungen---------- hinzu - vor der Variablen ------------------------------ ------🎜🎜%d Dezimale Ganzzahl mit Vorzeichen🎜 %u Dezimale Ganzzahl ohne Vorzeichen🎜 %f Gleitkommazahl🎜 %s Zeichenfolge🎜 %c Einzelzeichen🎜 %p Zeigerwert🎜 %e Gleitkommazahl in Exponentialform🎜 % X, % -------------------------------------------------- 🎜🎜n Zeilenumbruch 🎜 f Bildschirm leeren und Seite wechseln 🎜 r Eingabe 🎜 t Tab-Symbol 🎜 ("fahr=%d,celsius=%dn" ,fahr,celsius);🎜🎜🎜🎜2, printf("enter x( x>=0):n");
🎜🎜🎜🎜3, printf("y=f (%f)=%.2fn”,x,y);
🎜🎜🎜🎜%f gibt an, Gleitkommadaten in Dezimalform auszugeben und dabei 6 Dezimalstellen beizubehalten , während %.2f angibt, bei der Ausgabe 2 Dezimalstellen beizubehalten🎜🎜4 , printf(",%04d",D[i]);
🎜🎜%04d bedeutet, dass bei der Ausgabe ein Wert kleiner als 4 Ziffern, 0 wird vorangestellt, sodass die Gesamtbreite 4 Ziffern beträgt. 🎜🎜5. scanf("%lf",&x);//Eingabe lesen
🎜🎜Fügen Sie & vor dem Variablennamen x hinzu %lf ist der erste Buchstabe von long. Die Eingabeparameter der Scanf-Funktion müssen der Formatsteuerungsbeschreibung in der Formatsteuerungszeichenfolge entsprechen und ihr Typ, ihre Anzahl und ihre Position müssen eins zu eins übereinstimmen. 🎜🎜scanf("%d%d%lf",&x,&y,&z)
bedeutet, dass die Eingabe x vom Typ int, y vom Typ int und z vom Typ double This ist ist eine Korrespondenz🎜🎜Verwandte Empfehlungen: „🎜C Language Video Tutorial🎜“🎜🎜Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen scanf und printf in der C-Sprache?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!