2
2.1
2.2 C
2.3
2.4
2.5
2.6
2.7
2.8
2.9 C
[Return]
2.1
1
C
2Nikiklaus Wirth
+ =
[Return]
2.2 C
C
1.
2.
3.9
4.
C
[Return]
2.3
2.3.1
1.
2.
1
2
3
4
2.3.2
1.
2.
1──
2
.
1
2
student_name student_number
TC V2.0
3C
C
CtotalTOTALToTaLtOtAl
──
name/xm sex/xbage/nlsalary/gz
4.
1
[ ] [,2…… ];
float radius,length,area;
2
[] [=][,2[=2]…… ];
float radius=2.5,length,area;
[Return]
2.4
2.4.1
1.
1int
2short [int]
3long [int]
4unsigned [int] unsigned short unsigned long
2.
16intlong≥int≥short
n-2n*8-1~2n*8-1-10~2n*8-1
PCint-22*8-1~22*8-1-1-32768~32767unsigned 0~22*8-10~65535
2.4.2
.
11036
2012
3+x0x36
.
1162int
2 Ll ---123l315
.
----intlong int ----long int
unsigned unsigned
[Return]
2.5
2.5.1
1float
2double15~16
2.5.2
.
13.149.8
2<>Ee<>3.0+5
floatdoublefloatdouble
[Return]
2.6
2.6.1
1.
A?
2.
\”
\\? \
[2.1]
/*AL2_1.C*/
/**/
main()
{ printf(“\x4F\x4B\x21\n”); /* printf(“OK!\n”); */
printf(“\x15 \xAB\n”);
}
[]
2.6.2
char1
1.
ASCII
char ch1,ch2; /*ch1ch2*/
ch1=?a?; ch2=?b?; /**/
2.
ASCII── 2-4
1
[2.2]
/*AL2_2.C*/
/**/
main()
{ char ch1,ch2;
ch1='a'; ch2='b';
printf(“ch1=%c,ch2=%c\n”,ch1,ch2);
printf(“ch1=%d,ch2=%d\n”,ch1,ch2);
}
ch1=a,ch2=b
ch1=97,ch2=98 []
2ASCII
[2.3]
/*AL2_3.C*/
/**/
main()
{ char ch1,ch2;
ch1=?a?; ch2=?B?;
/**/
printf(“ch1=%c,ch2=%c\n”,ch1-32,ch2+32);
/*256*/
printf("ch1+200=%d\n",ch1+200);
printf("ch1+200=%c\n",ch1+200);
printf("ch1+256=%d\n",ch1+256);
printf("ch1+256=%c\n",ch1+256);
}
ch1=A,ch2=b
ch1+200=297
ch1+200=)
ch1+256=353
ch1+256=a []
256
2.6.3
1.
0
How do you do.” Good morning.” 1413
1C:\msdos\v6.22 → "C,\\msdos\\v6.22"
2I say:"Goodbye!" → "I say,\"Goodbye!\"“
2.
C \0?
\0?
CHINA”
'\0'
C H I N A \0
'A'"A"
1
210
3ASCII \0?
[Return]
2.7
1.
+-/*/%
1/
C5 / 2 = 2
2
2.
1
2
3 + 6 * 9(x+ y) / 2 - 1
(x + y) / 2 – 1” (x+y)/2–1”
3.
1
2
1
2
a– b + c”b a - b”c
4.
1
2-5
1charshort int floatdouble
2
intdoubleintdoubledouble
intunsigned longdouble
2
( )()
(double)a (double)(a)) /*adouble*/
(int)(x + y) /*x+yint*/
(float)5 / 2(float)(5)/2 /*52=2.5*/
(float)(5 / 2) /*5222.0*/
(double)a adoubledouble
[Return]
2.8
1.
=”
=
x = 5
y = (float)5 / 2
numfloat2.5 num = (int)num” num
2.
=
└──┬──┘
= ()
x += 3 /* x=x+3 */
y *= x + 6 /* y=y*(x+6)y=y*x+6 */
C10
+=-=*=/=%= /*5*/
&=^=|=<<=>>= /*5*/
3.
1
2
a = 5”a
[Return]
2.9 C
2.9.1 ++--
1.
2.
1──
2──
[2.4]
/*AL2_4.C*/
/**/
main()
{ int x=6,y;
printf("x=%d\n",x); /*x*/
y = ++x; /**/
printf("y=++x,x=%d,y=%d\n",x,y);
y = x--; /**/
printf("y=x--,x=%d,y=%d\n",x,y);
}
x=6
y=++x,x=7,y=7
y=x--,x=6,y=7 []
y=++x;”y=x++; y=x--;”y=--x;
3.
1
2
5++--(a+b)
3
2.8.2
1.
,,……,n
2.
n”
a = 3 * 5,a * 4”=60a = 3 * 5 a=15a * 4 = 60 =60
(a = 3 * 5,a * 4),a + 5” =20 a= 3 * 5 a=15 a* 4=60 a+
5=20=20
[Return]