📄 http:^^www.cs.cornell.edu^info^courses^current^cs100b^rdz2.html
字号:
is 7 (and not 9) a human needs to remember precedence order.<BR>
</FONT>
<P>
<FONT SIZE=6>ï Programs are written to be executed by computers
and to be read by humans. In many respects, the latter is the
most important part.<BR>
</FONT>
<P>
<FONT SIZE=6>ï My personal rule is to always use parentheses
if the meaning of the expression is at all ambiguous. (Extra
parentheses (never) hurt.)</FONT>
<H1><FONT SIZE=6>Expressions in C ó Function Applications
<BR>
</FONT></H1>
<HR>
<P>
<I><FONT SIZE=5>name</FONT></I><FONT SIZE=5 FACE="Monaco">(<I>arguments</I>)</FONT>
<HR>
<P>
<FONT SIZE=6>ï <I>arguments</I> is a list of expressions
separated by commas.<BR>
</FONT>
<P>
<FONT SIZE=6>ï The value of this expression is obtained by
applying function <I>name</I> to the <I>arguments</I>.<BR>
</FONT>
<P>
<FONT SIZE=6>ï The number of arguments in the argument list
must match the <I>arity</I> of the defined function <I>name</I>.
<BR>
</FONT>
<P>
<FONT SIZE=6>There are no functions built into C. Functions are
defined externally by <I>libraries</I>.<BR>
</FONT>
<P>
<FONT SIZE=6>Examples:<BR>
</FONT><FONT SIZE=5 FACE="Monaco">abs(-3)sqr(3 + 4)GetInteger()hypotenuse(3,
4)<BR>
<BR>
</FONT>
<H1><CENTER><FONT SIZE=6>Expressions in C ó Conditional
Expressions<BR>
</FONT></CENTER></H1>
<HR>
<P>
<I><FONT SIZE=5>condition</FONT></I><FONT SIZE=5 FACE="Monaco">
? <I>true-exp</I> : <I>false-exp</I></FONT>
<HR>
<P>
<FONT SIZE=6>ï The value of a conditional expression is the
value of <I>false-exp</I> if <I>condition</I> evaluates to 0,
or the value of <I>true-exp</I> otherwise.<BR>
</FONT>
<P>
<FONT SIZE=6>ï Since C relational operators use values 1
and 0 for true and false, this allows a choice of value based
on the outcome of a relational test. (But <I>condition</I> is
not limited to relations.)<BR>
</FONT>
<P>
<FONT SIZE=6>Examples:<BR>
</FONT><FONT SIZE=5 FACE="Monaco">(1 < 2) ? 1 : 2 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco">
1(2 < 1) ? 1 : 2 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco">
21 + 1 ? 15 : 14 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco">
15<BR>
</FONT>
<P>
<FONT SIZE=6>ï First the <I>condition</I> is evaluated, and
then either the <I>true-exp</I> or the <I>false-exp</I> is evaluated,
but not both.<BR>
<BR>
</FONT>
<P>
<CENTER><B><FONT SIZE=6>Convergence and Divergence<BR>
</FONT></B></CENTER>
<P>
<FONT SIZE=6>ï Evaluation of an expression <I>diverges</I>
if the result of an application is undefined. Evaluation <I>converges</I>
if it doesn't diverge.<BR>
</FONT>
<P>
<FONT SIZE=6>Example:<BR>
</FONT><FONT SIZE=5 FACE="Monaco">10 / 0 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco">
diverges<BR>
</FONT>
<P>
<FONT SIZE=6>ï An operator is <I>strict</I> if it evaluates
all of its operands. It is <I>non-strict</I> if it doesn't necessarily
evaluate all of its operands.<BR>
</FONT>
<P>
<FONT SIZE=6>Example:<BR>
</FONT>
<P>
<FONT SIZE=6 FACE="Monaco">+, -, *, / </FONT><FONT SIZE=6>are
strict:<BR>
</FONT>
<P>
<FONT SIZE=5> </FONT><FONT SIZE=6>e.g., </FONT><FONT SIZE=5> </FONT><FONT SIZE=5 FACE="Monaco">0
* (1 / 0)</FONT><FONT SIZE=5> </FONT><FONT SIZE=6 FACE="Symbol">Þ</FONT><FONT SIZE=6>
diverges<BR>
</FONT>
<P>
<FONT SIZE=6>conditional expressions are</FONT><FONT SIZE=6 FACE="Monaco">
</FONT><FONT SIZE=6>non-strict:<BR>
</FONT>
<P>
<FONT SIZE=5> </FONT><FONT SIZE=6>e.g.,</FONT><FONT SIZE=5> </FONT><FONT SIZE=5 FACE="Monaco">1
? 2 : (3 / 0)</FONT><FONT SIZE=5> </FONT><FONT SIZE=6 FACE="Symbol">Þ</FONT><FONT SIZE=6>
</FONT><FONT SIZE=5 FACE="Monaco">2</FONT>
<H1><CENTER><FONT SIZE=6>Expressions in C ó Logical Expressions
<BR>
</FONT></CENTER></H1>
<P>
<FONT SIZE=6>ï Logical operators are used to combine the
logical values, true and false, in various ways.<BR>
</FONT>
<TABLE BORDER=1>
<TR><TD WIDTH=97><B><FONT SIZE=5>and</FONT></B></TD><TD WIDTH=60><CENTER><FONT SIZE=5>F</FONT></CENTER>
</TD><TD WIDTH=60><CENTER><FONT SIZE=5>T</FONT></CENTER></TD>
<TD WIDTH=60></TD><TD WIDTH=90><B><FONT SIZE=5>or</FONT></B></TD>
<TD WIDTH=60><CENTER><FONT SIZE=5>F</FONT></CENTER></TD><TD WIDTH=60><CENTER><FONT SIZE=5>T</FONT></CENTER>
</TD><TD WIDTH=60></TD><TD WIDTH=90><B><FONT SIZE=5>not</FONT></B>
</TD><TD WIDTH=60></TD></TR>
<TR><TD WIDTH=97><FONT SIZE=5>F</FONT></TD><TD WIDTH=60><CENTER><FONT SIZE=5>F</FONT></CENTER>
</TD><TD WIDTH=60><CENTER><FONT SIZE=5>F</FONT></CENTER></TD>
<TD WIDTH=60></TD><TD WIDTH=90><FONT SIZE=5>F</FONT></TD><TD WIDTH=60><CENTER><FONT SIZE=5>F</FONT></CENTER>
</TD><TD WIDTH=60><CENTER><FONT SIZE=5>T</FONT></CENTER></TD>
<TD WIDTH=60></TD><TD WIDTH=90><FONT SIZE=5>F</FONT></TD><TD WIDTH=60><CENTER><FONT SIZE=5>T</FONT></CENTER>
</TD></TR>
<TR><TD WIDTH=97><FONT SIZE=5>T</FONT></TD><TD WIDTH=60><CENTER><FONT SIZE=5>F</FONT></CENTER>
</TD><TD WIDTH=60><CENTER><FONT SIZE=5>T</FONT></CENTER></TD>
<TD WIDTH=60></TD><TD WIDTH=90><FONT SIZE=5>T</FONT></TD><TD WIDTH=60><CENTER><FONT SIZE=5>T</FONT></CENTER>
</TD><TD WIDTH=60><CENTER><FONT SIZE=5>T</FONT></CENTER></TD>
<TD WIDTH=60></TD><TD WIDTH=90><FONT SIZE=5>T</FONT></TD><TD WIDTH=60><CENTER><FONT SIZE=5>F</FONT></CENTER>
</TD></TR>
</TABLE>
<P>
<P>
ï In C, logical values are represented by 0 and 1, so the
logical operators are also arithmetic operators.<BR>
<TABLE BORDER=1>
<TR><TD WIDTH=187>Operator</TD><TD WIDTH=120><FONT SIZE=5 FACE="Monaco">&&</FONT>
</TD><TD WIDTH=120><FONT SIZE=5 FACE="Monaco">||</FONT></TD><TD WIDTH=120><FONT SIZE=5 FACE="Monaco">!</FONT>
</TD></TR>
<TR><TD WIDTH=187>Meaning</TD><TD WIDTH=120><B>and</B></TD><TD WIDTH=120><B>or</B>
</TD><TD WIDTH=120><B>not</B></TD></TR>
</TABLE>
<P>
<P>
Examples:<BR>
<TABLE>
<TR><TD WIDTH=277><FONT SIZE=5 FACE="Monaco">0 && 0 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco"> 0</FONT>
</TD><TD WIDTH=270><FONT SIZE=5 FACE="Monaco">0 || 0 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco"> 0</FONT>
</TD><TD WIDTH=180><FONT SIZE=5 FACE="Monaco">! 0 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco"> 1</FONT>
</TD></TR>
<TR><TD WIDTH=277><FONT SIZE=5 FACE="Monaco">0 && 1 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco"> 0</FONT>
</TD><TD WIDTH=270><FONT SIZE=5 FACE="Monaco">0 || 1 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco"> 1</FONT>
</TD><TD WIDTH=180><FONT SIZE=5 FACE="Monaco">! 1 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco"> 0</FONT>
</TD></TR>
<TR><TD WIDTH=277><FONT SIZE=5 FACE="Monaco">1 && 0 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco"> 0</FONT>
</TD><TD WIDTH=270><FONT SIZE=5 FACE="Monaco">1 || 0 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco"> 1</FONT>
</TD><TD WIDTH=180><FONT SIZE=5 FACE="Monaco">! 2 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco"> 0</FONT>
</TD></TR>
<TR><TD WIDTH=277><FONT SIZE=5 FACE="Monaco">1 && 1 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco"> 1</FONT>
</TD><TD WIDTH=270><FONT SIZE=5 FACE="Monaco">1 || 1 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco"> 1</FONT>
</TD><TD WIDTH=180></TD></TR>
</TABLE>
<H1>Logical expressions are non-strict, e.g.,<BR>
</H1>
<TABLE>
<TR><TD WIDTH=336><FONT SIZE=5 FACE="Monaco">0 && 1/0 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco"> 0</FONT>
</TD><TD WIDTH=270><CENTER><FONT SIZE=5 FACE="Monaco">1 || 1/0 </FONT><FONT SIZE=5 FACE="Symbol">Þ</FONT><FONT SIZE=5 FACE="Monaco"> 1</FONT></CENTER>
</TD></TR>
</TABLE>
<H1><CENTER>Programs<BR>
</CENTER></H1>
<HR>
<P>
<FONT SIZE=5>void main(void) { <I>statements</I> }</FONT>
<HR>
<P>
<FONT SIZE=6>ï All programs have this general form.<BR>
</FONT>
<P>
<FONT SIZE=6>ï <I>statements</I> are commands that direct
the computer to do something.<BR>
</FONT>
<P>
<FONT SIZE=6>ï The statements are executed from left to right
in order.<BR>
</FONT>
<P>
<FONT SIZE=6>ï The program stops after executing the last
statement.<BR>
</FONT>
<H1><CENTER><FONT SIZE=6>Output<BR>
</FONT></CENTER></H1>
<HR>
<P>
<FONT SIZE=5>printf( <I>format</I>, <I>expressions</I> );</FONT>
<HR>
<P>
<FONT SIZE=6>ï This is the only statement you need for now.
<BR>
</FONT>
<P>
<FONT SIZE=6>ï Prints output to a destination, usually a
window on the screen.<BR>
</FONT>
<P>
<FONT SIZE=6>ï <I>format</I> is a quoted string giving the
desired form of the output.<BR>
</FONT>
<P>
<FONT SIZE=6>ï <I>expressions</I> are the things to be printed.
<BR>
</FONT>
<P>
<FONT SIZE=6>ï If there are no <I>expressions, format</I>
is just a constant string to be output.<BR>
</FONT>
<H1><CENTER><FONT SIZE=6> <BR>
</FONT></CENTER></H1>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -