『Cプログラム設計言語——第二版』第一章知識点総括
2460 ワード
1:文字の序列はC言語の中で称します:文字列あるいは文字列の定数(PS:以前はいつもそれらの2つが異なっているものを指すと思っていました!)
2:C言語では、文字列は改行を表し、印刷中にそれに遭遇した場合、出力印刷は改行され、次の行の左端行から始まります.文字列から削除すると、出力印刷が完了しても改行されません.printf()関数のパラメータテーブルでは、改行を表す文字しか使用できません.プログラムの改行で置き換える場合は、次のようになります.
Cコンパイラはエラーメッセージを生成します.
3:printf()関数は自動的に改行されません.
4:while()ループ文の実行方法は、まずカッコ内の条件をテストします.条件が真の場合、サイクルボディが実行されます.次に、カッコ内の条件を再テストし、真の場合はループを再実行します.カッコ内の条件テストの結果が偽である場合、ループは終了し、while()ループ文の後に続く次の文を実行し続けます.
5:printf()関数の最初のパラメータの各%は、それぞれ2番目、3番目、・・・に対応します.パラメータは、数とタイプで一致する必要があります.そうしないと、エラーの結果が表示されます.
6:printf()文の最初のパラメータの%dに印刷幅が指定されている場合、印刷された数値は印刷領域内で右揃えになります.
ここでfahrの値は3つの数値幅を占め,celsiusの値は6つの数値幅を占める.
7:定数の小数点は、定数が浮動小数点数であることを示し、5.0/9.0である.2つの浮動小数点数を除いて、結果は捨てられません.
8:演算演算子のすべてのオペランドが整数である場合、整数演算が実行されます.ただし、演算演算子に浮動小数点数と整数オペランドがある場合、演算を開始する前に整数オペランドは浮動小数点数に変換されます.
9:付与文と条件テスト文のタイプ変換も上記のように実行されます.
10:%6.1 fは、他の印刷の数(celsius)が少なくとも6文字幅を占め、小数点の後ろに1桁の数字があることを示しています.フォーマットの説明は、幅と精度を省略することができる、例えば、%6 fは、印刷対象の浮動小数点数が少なくとも6文字の幅を有することを示す;2 f印刷する浮動小数点数の小数点以下を指定して2桁の小数点以下にしますが、幅に制限はありません.11:C言語の一般的なルール:あるタイプの変数値を使用できる任意の場合、このタイプのより複雑な式を使用できます.
12:forループ初期化部、条件部、ステップ長の増加部は、任意の式を使用できます.
13:defineコマンドは、シンボル名(またはシンボル定数)を特定の文字列として定義できます.
この定義の後、プログラムに表示されるdefineで定義されたすべての名前は、対応する置換テキストで置き換えられます.置換テキストは、数値に限らず、任意の文字列であってもよい.シンボル定数名は、大文字でスペルするのが一般的です.これにより、小文字でスペルする変数名と簡単に区別できます.
#define命令行の末尾にセミコロンがない
Power()関数
私が書いたエラーコード:
2:C言語では、文字列は改行を表し、印刷中にそれに遭遇した場合、出力印刷は改行され、次の行の左端行から始まります.文字列から削除すると、出力印刷が完了しても改行されません.printf()関数のパラメータテーブルでは、改行を表す文字しか使用できません.プログラムの改行で置き換える場合は、次のようになります.
printf("Hello World!
");
Cコンパイラはエラーメッセージを生成します.
3:printf()関数は自動的に改行されません.
4:while()ループ文の実行方法は、まずカッコ内の条件をテストします.条件が真の場合、サイクルボディが実行されます.次に、カッコ内の条件を再テストし、真の場合はループを再実行します.カッコ内の条件テストの結果が偽である場合、ループは終了し、while()ループ文の後に続く次の文を実行し続けます.
5:printf()関数の最初のパラメータの各%は、それぞれ2番目、3番目、・・・に対応します.パラメータは、数とタイプで一致する必要があります.そうしないと、エラーの結果が表示されます.
6:printf()文の最初のパラメータの%dに印刷幅が指定されている場合、印刷された数値は印刷領域内で右揃えになります.
int fahr = 10,celsius = 9;
printf("%3d %6d
",fahr,celsius);
ここでfahrの値は3つの数値幅を占め,celsiusの値は6つの数値幅を占める.
7:定数の小数点は、定数が浮動小数点数であることを示し、5.0/9.0である.2つの浮動小数点数を除いて、結果は捨てられません.
8:演算演算子のすべてのオペランドが整数である場合、整数演算が実行されます.ただし、演算演算子に浮動小数点数と整数オペランドがある場合、演算を開始する前に整数オペランドは浮動小数点数に変換されます.
9:付与文と条件テスト文のタイプ変換も上記のように実行されます.
printf("%6.1d
",celsius);
10:%6.1 fは、他の印刷の数(celsius)が少なくとも6文字幅を占め、小数点の後ろに1桁の数字があることを示しています.フォーマットの説明は、幅と精度を省略することができる、例えば、%6 fは、印刷対象の浮動小数点数が少なくとも6文字の幅を有することを示す;2 f印刷する浮動小数点数の小数点以下を指定して2桁の小数点以下にしますが、幅に制限はありません.11:C言語の一般的なルール:あるタイプの変数値を使用できる任意の場合、このタイプのより複雑な式を使用できます.
12:forループ初期化部、条件部、ステップ長の増加部は、任意の式を使用できます.
13:defineコマンドは、シンボル名(またはシンボル定数)を特定の文字列として定義できます.
#define
この定義の後、プログラムに表示されるdefineで定義されたすべての名前は、対応する置換テキストで置き換えられます.置換テキストは、数値に限らず、任意の文字列であってもよい.シンボル定数名は、大文字でスペルするのが一般的です.これにより、小文字でスペルする変数名と簡単に区別できます.
#define命令行の末尾にセミコロンがない
Power()関数
#include
#include
using namespace std;
int power(int base,int n)
{
int result = 1;
for(int i = 0; i < n; i++)
result *= base;
return result;
}
int main()
{
for(int i = 0; i < 10; i++)
printf("i = %d power(2,%d) = %d power(-3,%d) = %d
",i,i,power(2,i),i,power(-3,i));
return 0;
}
私が書いたエラーコード:
#include
#include
using namespace std;
int power(int base,int n)
{
for(int i = 0; i < n - 1; i++)
base *= base;
return base;
}
int main()
{
for(int i = 0; i < 10; i++)
printf("i = %d power(2,%d) = %d power(-3,%d) = %d
",i,i,power(2,i),i,power(-3,i));
return 0;
}