📄 http:^^www.cs.princeton.edu^courses^archive^fall96^cs217^
字号:
Server: Netscape-Commerce/1.12
Date: Wednesday, 20-Nov-96 22:46:43 GMT
Last-modified: Wednesday, 20-Nov-96 15:46:12 GMT
Content-length: 11018
Content-type: text/html
<HTML><HEAD><TITLE>CS217 Fall 1996</TITLE></HEAD><BODY><H1>CS217 Fall 1996 <BR>Introduction to Programming Systems</H1><STRONG>Check out the new due date for assignment 6. <!WA0><IMG WIDTH=28 HEIGHT=11ALT="[new]" SRC="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/images/new2.gif"></STRONG><H2>Professor</H2><!WA1><A HREF=http://www.cs.princeton.edu/~jps>Jaswinder Pal Singh</A> <DL> <DT>Office hours: <DD> Fridays from 3:00pm to 5:30pm </DL><H2>Assistants</H2><UL> <LI> <!WA2><A HREF=http://www.cs.princeton.edu/~bilas> Angelos Bilas</A> <LI> <!WA3><A HREF=http://www.cs.princeton.edu/~wtcorrea> Wagner Toledo Corrêa</A> <DL> <DT>Office hours: <DD> Wednesdays and Fridays from 4:00pm to 5:30pm </DL> <LI> <!WA4><A HREF=http://www.cs.princeton.edu/~dressner> Ben Dressner</A> <DL> <DT>Office hours (Room CS414): <DD> Tuesday and Thursday from 3:00pm to 4:30pm </DL> <LI> <!WA5><A HREF=http://www.cs.princeton.edu/~viglas> Tassos Viglas</A> <DL> <DT>Office hours: <DD> Wednesdays from 10:30am to 12:00pm <DD> Fridays from 4:00pm to 5:30pm </DL></UL><H2>Schedule and Readings</H2>The lecture meets Monday, Wednesday, and Friday, from 9:00am to 9:50amin room 104. You should attend one precept each week. You can chooseone among the following:<UL> <LI> Wednesday, 3:30pm to 4:20pm, Angelos, 302 <LI> Wednesday, 7:30pm to 8:20pm, Ben, 102 <LI> Thursday, 2:30pm to 3:20pm, Tassos, 402 <LI> Friday, 11:00am to 11:50am, Wagner, 302</UL><P> You should try to keep going to the same precept as far as possiblesince that's how you will be judged for participation (of course if youmiss one you are allowed to go to another).<P> If you can not attend any of these precepts, see Professor Singh assoon as possible.<P> <!WA6><a href="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/schedule.html"> A tentative schedule and reading list.</a><H2>Texts</H2><TABLE> <TR> <TD VALIGN=TOP> [Hanson, 1997] </TD> <TD> <!WA7><A HREF=http://www.cs.princeton.edu/~drh>David R. Hanson</A>. <!WA8><A HREF="http://www.cs.princeton.edu/software/cii/"> <EM>C Interfaces and Implementations: Techniques for Creating Reusable Software</EM></A>. Addison-Wesley. 1997.</A> (Click <!WA9><A HREF="http://www.cs.princeton.edu/software/cii/errata.pdf"> here </A> to see the errata for this book.) </TD> </TR> <TR> <TD VALIGN=TOP> [Harbison and Steele, 1995] </TD> <TD> Samuel P. Harbison and Guy L. Steele Jr. <EM> C: A reference manual. </EM> Prentice Hall. 1995. </TD> </TR> <TR> <TD VALIGN=TOP> [Paul, 1993] </TD> <TD> Richard P. Paul. <EM>SPARC Architecture, Assembly Language Programming, & C</EM>. Prentice-Hall. 1993. </TD> </TR> <TR> <TD VALIGN=TOP> [Kernigham and Pike, 1984] </TD> <TD> Brian W. Kernighan and Rob Pike. <EM>The UNIX Programming Environment</EM>. Prentice-Hall. 1984. </TD> </TR> <TR> <TD VALIGN=TOP> [Maguire, 1993] </TD> <TD> Steve Maguire. <EM>Writing Solid Code</EM>. Microsoft Press. 1993.</A> </TD> </TR></TABLE><H2>Quizzes & Exams</H2>There will be a midterm exam. In addition, therewill be quizzes from time to time. Quizzes will be announced beforehand. The midterm will be on WednesdayNov 6 in class. <P> <!WA10><a href="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/midterm-sample-fall96.ps"> Sample questions from last year's midterm.</a>We will administer make-up quizzes only in the caseof documented illnesses. (We do not consider a broken alarm clock tobe a documentable illness, even though the alarm clocks at Princetonseem to be suffering from some sort of epidemic.)<H2>Programming Assignments</H2>There will be weekly programming assignments, which will be due onMondays at 11:59pm. You are expected to submit your work(electronically) <STRONG>before</STRONG> this time. Late work willlose credit on the following scale:<P><UL> <LI>15% for work submitted before Noon on Tuesday, <LI>25% for work submitted before 11:59pm on Tuesday, <LI>50% for work submitted before 11:59pm on Wednesday. <LI>Work submitted after 11:59pm on Wednesday will receive no credit.</UL><P> If you have specific extenuating circumstances requiring you tohand something in late, you should consult Professor Singh<STRONG>before</STRONG> the due date.<P> Programming, like composition, is an individual creative process.Individuals must reach their own understanding of the problem anddiscover a path to its solution. During this time, discussions withfriends are encouraged. However, when the time comes to write the codethat solves the problem, such discussions are no longer appropriate -the program must be your own work (although you may ask teachingassistants for help in debugging). If you have a question about how touse some feature of C, UNIX, etc., then you can certainly ask yourfriends or the teaching assistants.<P> <STRONG>Do not, under any circumstances, copy another person'sprogram</STRONG>. Writing code for use by another or using another'scode in any form violates the University's academic regulations.<P> You are responsible for insuring your files are<STRONG>not</STRONG> readable by your classmates. We recommend doingall your CS217 work in a private subdirectory, i.e.:<BLOCKQUOTE><PRE>% mkdir cs217% chmod 700 cs217</PRE></BLOCKQUOTE><P><STRONG>List of programming assignments</STRONG><DL> <DT> Assignment 1: <!WA11><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/1/index.html"> Changing Strings </A> <DD> Write <TT>change</TT>: Given two strings, <TT>change</TT> copies lines from the standard input to the standard output replacing all occurrences of the first string by the second. <DD> <EM> Due: submitted by 11:59pm, Monday, 09/23. </EM> <DD> <!WA12><a href="http://www.cs.princeton.edu/~dressner/change.html">Sample Solution</a> <DT> Assignment 2: <!WA13><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/2/index.html">Generating WWW Listings</A> <DD> Write <TT> c2html</TT>, a program that generating Hypertext to render a listing of its file arguments suitable for browsing with a World Wide Web browser. <DD> <EM> Due: submitted by 11:59pm, Tuesday, 10/01. </EM> <DD> <!WA14><a href="http://www.cs.princeton.edu/~wtcorrea/c2html.c">Sample Solution</a> <DT> Assignment 3: <!WA15><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/3/index.html">Using an ADT: Word Frequencies</A> <DD> Write <tt>freq [<i> options ...</i>] [<i>files ...</i>]</tt>, a program that prints, on the standard output, a list of the characters, words and lines that appear in its file arguments and the number of times each appears. A tab separates each frequency from its character, word, or line. It first prints all characters, then all words, and then all lines, with a blank line between each set. If there are no file arguments, <tt>freq</tt> reads from the standard input.<br> <DD> <EM> Due: submitted by 11:59pm, Friday, 10/18. </EM> <DD> <!WA16><a href="http://www.cs.princeton.edu/~wtcorrea/cs217a3.html">Sample Solution</a> <DT> Assignment 4: <!WA17><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/4/index.html">Implementing the list ADT</A> <DD> Given the interface of the list ADT in a <CODE>list.h</CODE>, write the corresponding implementation in a <CODE>list.c</CODE> file. <DD> <EM> Due: submitted by 11:59pm, Friday, 10/25. </EM> <DD> <!WA18><a href="http://www.cs.princeton.edu/~wtcorrea/list.c">Sample Solution</a> <DT> Assignment 5: <!WA19><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/5/index.html"> Implementing "tail" in SPARC Assembly Language </A> <DD> Write a program, in SPARC assembly language, to print the ``tail'' of the standard input, that is, the last 22 lines of the file. If there are fewer than 22 lines in the file, print the entire file. <DD> <EM> Due: submitted by 11:59pm, Thursday, 11/14. </EM> <DT> Assignment 6: <!WA20><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/6/index.html"> Implementing "printf" in SPARC Assembly Language </A> <DD> <EM> Due: submitted by 11:59pm, Monday, 11/25. </EM> <DT> Assignment 7: <!WA21><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/7/primality.ps"> Primality testing (postscript) </A> <!WA22><IMG WIDTH=28 HEIGHT=11 ALT=" [new]" SRC="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/images/new2.gif"> <DD> <EM> Due: submitted by 11:59pm, Monday, 12/9. </EM> <DT> Assignment 8: <DD> To be announced. <DT> Final project <DD> To be announced. <DD> <EM> Due: submitted by 11:59pm, Monday, 01/14/97. </EM></DL><H2>Handouts</H2> <UL> <LI> <!WA23><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/1.interfaces.ps">1.interfaces.ps</A> <LI> <!WA24><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/2.c-language.ps">2.c-language.ps</A> <LI> <!WA25><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/3.types.ps">3.types.ps</A> <LI> <!WA26><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/4.cpp.ps">4.cpp.ps</A> <LI> <!WA27><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/5.make.ps">5.make.ps</A> <LI> <!WA28><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/6.exprs.ps">6.exprs.ps</A> <LI> <!WA29><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/7.design.ps">7.design.ps</A> <LI> <!WA30><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/8.ptrs.ps">8.ptrs.ps</A> <LI> <!WA31><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/9.struct.ps">9.struct.ps</A> <LI> <!WA32><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/10.dynamic-structures.ps">10.dynamic-structures.ps</A> <LI> <!WA33><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/11.varargs.ps">11.varargs.ps</A> <LI> <!WA34><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/12.style.ps">12.style.ps</A> <LI> <!WA35><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/13.number.ps">13.number.ps</A> <LI> <!WA36><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/14.cpu-4up.ps">14.cpu.ps</A> <LI> <!WA37><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/15.sparc-4up.ps">15.sparc.ps</A> <LI> <!WA38><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/16.insts-4up.ps">16.insts.ps</A> <LI> <!WA39><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/17.branches-4up.ps">17.branches.ps</A> <LI> <!WA40><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/18.delay-4up.ps">18.delay.ps</A> <LI> <!WA41><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/19.calls-4up.ps">19.calls.ps</A> <LI> <!WA42><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/20.except.ps">20.except.ps</A> <LI> <!WA43><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/21.os.ps">21.os.ps</A> <LI> <!WA44><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/lecture-notes/22.process.ps">22.process.ps</A> <!WA45><IMG WIDTH=28 HEIGHT=11 ALT=" [new]" SRC="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/images/new2.gif"> </UL><H2>How to get help</H2><UL> <LI>Read the <!WA46><A HREF="news:pu.cs.217">pu.cs.217</A> newsgroup <LI>Or <!WA47><A HREF="mailto:cs217@phoenix.princeton.edu">send e-mail to the staff</A></UL><H2>Giving feedback to the professor </H2><UL> <LI><!WA48><A HREF="mailto:jps@cs.princeton.edu">send e-mail to the professor</A></UL><H2>Some useful tools</H2><UL> <LI><!WA49><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/help/emacs.html">emacs</A> <LI><!WA50><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/help/gdb.html">gdb</A> <LI><!WA51><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/help/gdbcard.ps">gdb quick reference</A> <LI><!WA52><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/help/lint.html">lint</A> <LI><!WA53><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/man/make.1.html">make</A> <LI><!WA54><A HREF="http://www.CS.Princeton.EDU/courses/archive/fall96/cs217/man/rcs.1.html">rcs</A> </UL><H2>Miscellaneous Links</H2><UL> <LI><!WA55><A HREF=" http://www.cs.princeton.edu/courses/archive/fall96/cs126/help/netscape.html">Quick intro to netscape</A></UL><HR><ADDRESS><!WA56><A HREF="http://www.cs.princeton.edu/">CS Department</A>,<!WA57><A HREF="http://www.princeton.edu/">Princeton University</A></ADDRESS>Please send corrections and suggestions on this page to <!WA58><AHREF="mailto:wtcorrea@cs.princeton.edu"> wtcorrea@cs.princeton.edu</A>.<BR>Last modified: <!--Thu Sep 26 14:53:25 EDT 1996-->Tue Oct 15 22:12:55 EDT 1996</BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -