C言語の最終試験の基本的な文法は、これらのいくつかのブログ投稿を読んでください!(乾物1)
C言語の最終試験の文法の要約:
それは一般的に明確でなければなりません:
1)プログラム構造には 、シーケンス構造、選択構造(分岐構造) 、ループ構造の 3種類があります。
2)main() エントリからプログラムを読み取り、次にトップオーダーから読み取ります(ループが発生した場合はループであり、選択が発生した場合は選択されます)。メインは1つだけです。機能 。
3)コンピュータは2進数 でデータを保存します;データはに保存されます。
4)ビットはビットが0または1を意味し、バイトはバイトを意味し、1バイト= 8ビットを意味します。概念の一般的なテストポイント: 1。コンパイルの前処理はC言語の一部ではなく、実行時間を考慮していません。セミコロンを追加しないでください。C言語でコンパイルされたプログラムはソースプログラムと呼ばれ、ASCII値でテキストファイルに保存されます。 2. PI 3.1415926を定義します。この表現は間違っているため、セミコロンを表示しないでください。 3.各C言語プログラムには1つだけのメイン関数があります。 4.関数でこれ以上関数を定義することはできません。 5.アルゴリズム:入力はありませんが、出力が必要です。 6. Breakは、ループ構造とswitchステートメントで使用できます。 7.コンマ演算子のレベルは最低で、割り当て番号のレベルは2番目に低くなります。
第1章C言語の基本的な知識
最初のセクション、C言語の基本的な理解
1. C言語で記述されたプログラムは、ソースプログラムと呼ばれ、コンパイラユニットとも呼ばれます。
2. C言語の書き方は無料です。1行に複数の文章を書くことができ、複数の行を書くことができます。
3. C言語プログラムには、プログラムの開始点である唯一の主要な機能があります。
セクション2.C / C ++に精通したコンパイラ1.C / C ++に
は多くのコンパイラがあります。たとえば、UnixのVCおよびターボCおよびCCコンパイラはすべて比較的古いコンパイラです。ブロガーは、読者がDev-C ++、VS、および他の比較的新しいIDEコンパイラ、またはLinuxでVim + GCC / Clang + gdbを直接使用します(emcasエディタも利用可能です)。
2.各C言語プログラムが作成された後、最初にコンパイルされ、次にリンクされ、最後に実行されます。(.C—.obj—.exe)このプロセス中、.cファイルと.objファイルは実行できないことに注意してください。実行できるのは.exeファイルのみです。(もちろん、これはWindowsオペレーティングシステムの場合のみです。)
セクション3.識別子
1、識別子(必要なコンテンツ):
法的要件は、文字 、数字 、およびアンダースコアで 構成されます。他の要素は違法です。
そして、最初のものは文字またはアンダースコア でなければなりません、最初のものは数字が違法です。
2.識別子は、キーワード、事前定義された識別子、およびユーザー識別子に 分けられます。
キーワード:ユーザー識別記号としては使用できません。main define scanfprintfはキーワードではありません。混乱する場合は、Ifをユーザー識別子として使用できます。Ifの最初の文字は大文字であるため、キーワードではありません。
事前定義された識別子:recite define scanf printfinclude。事前定義された識別子をユーザー識別子として使用できることに注意してください。
セクション4:16進法の変換
10進法は、2進数、8進数、および16進数に変換されます。
2進数、8進数、および16進数は10進数に変換されます。
セクション5:整数と実数
1)C言語には、8進数、10進数、16進数のみがあり、2進数はありません。ただし、実行時に、すべての16進数を処理のために2進数に変換する必要があります。
a、C语言中的八进制规定要以0开头。018的数值是非法的,八进制是没有8的,逢8进1。
b、C语言中的十六进制规定要以0x开头。
2)小数を書く合法的な方法:C言語で小数点の両側にゼロがある場合、それを書く必要はありません。
1.0在C语言中可写成1.
0.1在C语言中可以写成.1。
3)実際のデータの法的形式:
a、2.333e-1 就是合法的,且数据是2.333×10-1。
b、考试口诀:e前e后必有数,e后必为整数。请结合书上的例子。
4)整数型は通常4バイト、文字型は1バイト、倍精度は通常8バイトです。
long int x; 表示x是长整型。
unsigned int x; 表示x是无符号整型。
セクション6と7:算術式と代入式
コア:式には値が必要です!
1.算術式:+、-、*、/、%
考试一定要注意:
“/” 两边都是整型的话,结果就是一个整型。 3/2的结果就是1.
“/” 如果有一边是小数,那么结果就是小数。 3/2.0的结果就是0.5
“%”符号请一定要注意是余数,考试最容易算成了除号。)%符号两边要求是整数。不是整数就错了。[注意!!!]
2.代入式:式の値は左端の値、a = b = 5、式は5、定数は代入できません。
①、int x=y=10: 错啦,定义时,不可以连续赋值。
②、int x,y;
x=y=10; 对滴,定义完成后,可以连续赋值。
③、赋值的左边只能是一个变量。
④、int x=7.7;对滴,x就是7
⑤、float y=7;对滴,x就是7.0
3.複合代入式:
int a=2;
a*=2+3;运行完成后,a的值是10。
一定要注意,首先要在2+3的上面打上括号。变成(2+3)再运算。
4.自己追加式:
自加、自减表达式:假设a=5,++a(是为6), a++(为6);
运行的机理:++a 是先把变量的数值加上1,然后把得到的数值放到变量a中,然后再用这个++a表达式的数值6,而a++是先用该表达式的数值为5,然后再把a的数值加上1为6,
再放到变量a中。 进行了++a和a++后 在下面的程序中再用到a的话都是变量a中的6了。
試験式:++は前に使用され、++は後で使用されます。
5.コンマ式:
优先级别最低。表达式的数值逗号最右边的那个表达式的数值。
(2,3,4)的表达式的数值就是4。
z=(2,3,4)(整个是赋值表达式) 这个时候z的值为4。(有点难度哦!)
z= { 2,3,4 }(整个是逗号表达式)这个时候z的值为2(部分编译器不会通过这种写法,即使部分 编译器通过编译,也会警告)。
補足:
1。空のステートメント は 自由
に実行できず、論理エラーが発生し ます。
2.コメントは ありません 、C言語のコードの一部を考慮していない 時間を実行している、何も持っていない セミコロンを、とすることはできません ネストされました!
3.強制型変換:
一定是 (int)a 不是 int(a),注意类型上一定有括号的。
注意(int)(a+b) 和(int)a+b 的区别。 前是把a+b转型,后是把a转型再加b。
4.小数点以下を切り上げて失う3つの状況:
1、int a =1.6;
2、(int)a;
3、1/2; 3/2;
セクション8.文字
1)文字データの有効な形式:
「1」は 文字が1バイトを占めることを意味し、「1」は 文字列が2バイト(終了記号を含む)を占めることを意味します。
「0」のASCII値は48、「a」のASCII値は97、「A」のASCII値は65です。
一般的なテストでは、単一文字の形式が間違っていることが示されています。「65」「1」
文字は算術演算である可能性があります。覚えておいてください:「0」-0 = 48
大文字と小文字変換方法:「A」+ 32 =「a」一般に、互いに32の違いがあります。
2)エスケープ文字:
エスケープ文字は、一般的なエスケープ文字、8進数のエスケープ文字、および16進数のエスケープ文字に分けられます。
一般的なエスケープ文字:\ 0、\ n、\ '、\ "、\を暗唱します
。8進数のエスケープ文字:' \ 141 'は有効で、先行0は記述できず、cのすべてのエスケープ文字は1で、末尾は1です。文字列「\ 0」は長さとしてカウントされません
。16進数のエスケープ文字:「\ x6d」は有効で、先頭の0は記述できず、 xは小文字です。3
。文字と整数は近親者です:2つは素晴らしいです類似点
4。
char a = 65 ;
printf(“%c”, a); 得到的输出结果:a
printf(“%d”, A); 得到的输出结果:65