C言語の入出力

C言語の入出力

C 言語は通常、入力に scanf()、fscanf()、getchar()、getch()、getche()、gets() を使用し、出力に printf() と fprintf() を使用します。

C言語入力

1. scanf()関数を入力に使用します。

scanf() 関数のプロトタイプは、
int scanf(const char * restrict format,...);
C 標準ライブラリ ヘッダー ファイル <stdio.h> にある scanf() 関数です。
形式は、%d %s %e %f %lf %lld のような形式文字列です。
&a、&bのように変数のアドレスを定義順に記述します。ただし、文字配列の変数名は文字配列の先頭アドレスを表します。&アドレスを付ける必要はありませんオペレーター。

#include <stdio.h>
int main()
{
    
    
	//声明了两个整形变量a和b
    int a=0,b=0; 
	//输入两个整数并赋值给整形变量a和b
	scanf("%d %d",&a,&b); 
	//计算a+b的值并输出
	printf("a+b=%d\n", a+b);  
    return 0;
}  
2.scanf() 共通形式制御文字の概要
フォーマット制御文字 意味
%d %ld %lld int 型の整数を入力 Long 型の整数を入力 Long Long 型の整数を入力
%c 文字を入力してください
%s 文字列を入力します(スペースは切り捨てられます)
%f %lf float 単精度浮動小数点数を入力します 倍精度浮動小数点数を入力します
%o %x %u int型変数に8進整数を入力 int型変数に16進整数を入力 int型整数に符号なし整数を入力
%e %le float 単精度浮動小数点数に指数形式の小数を入力します Double 単精度浮動小数点数に指数形式の小数を入力します。
3.fscanf()はファイル入力用の関数ですが、今のところ理解する必要はありません。
4.getchar() は入力ストリームから文字を読み取る関数です
char ch;
getchar(ch);

getchar() 関数は C 標準ライブラリ ヘッダー ファイル <stdio.h> にあり、
後続の getchar() 呼び出しはユーザーがキーを押すのを待たずに、バッファ内の文字を直接読み取ります。

5.getch()はコンソールから文字を読み取る関数です
char ch;
getch(ch);

getch() 関数は、C 標準ライブラリ ヘッダー ファイル <conio.h> にあります。getch
() 呼び出しは、ユーザーがキーを押すまで待機します。コンソールから読み取られた文字はコンソールにエコーされません。

6.getche()はコンソールから文字を読み取る関数です
char ch;
getche(ch);

getche() 関数は、C 標準ライブラリ ヘッダー ファイル <conio.h> にあります。
getche() 呼び出しは、ユーザーがキーを押してコンソールから文字を読み取り、すぐにコンソールにエコーするのを待ちます。

7.gets() は入力バッファから文字列を読み取り、指定された文字配列に割り当てます。
char str[2048];
gets(str);

上記のコードは基本的に と同等ですがscanf("%s", str);
スペースが出現すると文字列は切り詰められます。gets ( scanf("%s", str);)関数はC 標準ライブラリ ヘッダー ファイル <stdio.h> にあります。gets () 関数機能は次のとおりです。入力バッファからの読み取り 文字列が領域から読み取られ、文字ポインタ変数 str が指すメモリ空間に格納されます。gets() を直接使用してスペースを含む文字列を入力することができ、入力は改行文字が見つかった場合にのみ終了します。gets(str);


C言語出力

1. printf() 関数を使用して出力する

printf() 関数のプロトタイプは、
int printf(const char *format, ...);
C 標準ライブラリ ヘッダー ファイル <stdio.h> にある printf() 関数です。printf
の制御形式は scanf の制御形式と似ています。printf は、関連するエスケープ文字も出力できます。

#include <stdio.h>
int main()
{
    
    
	// \n表示换行的转义字符
    printf("Hello World!\n");  
    return 0;
}

printf で '' を出力したい場合は、エスケープ文字 '\' を使用して
printf("Hello World!\\");
Hello World!\ を正常に出力する必要があります。

2.Printf出力形式
出力フォーマット 意味
%d %ld %lld 10進符号付き整数はint型変数/long型変数/longlong型変数に対応
%u 10進数の符号なし整数int型変数
%f %lf 単精度浮動小数点数 倍精度浮動小数点数
%s 文字配列(文字列)
%c キャラクター
%p ポインタが指すメモリアドレス
%e 指数形式の単精度浮動小数点数
3.printf出力のフォーマット制御

1. %d の書式制御形式:
% アラインメント + 最長出力桁数 d
アラインメント: - は左揃えとデフォルトの右揃えを意味します。
たとえば、%Nd: N は指定された出力の幅です。デフォルトは右詰めで、整数の桁数が N 未満の場合は空白を埋め、N を超える場合は実際の桁数を出力します。01 を出力したい場合は、%01d を使用して出力
2 を制御できます。%f の形式は、形式を制御します:
% アライメント + 最長桁数。小数点以降の桁数 f
アライメント: - 左揃えを意味します、デフォルト右揃え (
%k.nf など): デフォルトは右揃えで、最大長は k ビット、小数点以下の桁は n ビット、整数は kn-1 ビットです。%4.2f は、12.13 のような単精度浮動小数点数を出力するか、i を空白のままにします。%.2f は、xxxxx.02 のような単精度浮動小数点数を出力します。この時点では、総桁数は不明です。

4.fprintf()はファイルに出力する関数ですが、まだ理解する必要はありません。

おすすめ

転載: blog.csdn.net/a695415974/article/details/122451641