<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>空无一人的沙滩 &#187; C语言</title>
	<atom:link href="http://www.cloudxiao.com/archives/tag/c/feed" rel="self" type="application/rss+xml" />
	<link>http://www.cloudxiao.com</link>
	<description>cloudxiao&#039;s life on the Earth so far...</description>
	<lastBuildDate>Sat, 19 May 2012 04:21:24 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>从键盘输入若干行字符，将小写转大写</title>
		<link>http://www.cloudxiao.com/archives/241</link>
		<comments>http://www.cloudxiao.com/archives/241#comments</comments>
		<pubDate>Wed, 10 Mar 2010 09:39:13 +0000</pubDate>
		<dc:creator>cloudxiao</dc:creator>
				<category><![CDATA[职业生涯]]></category>
		<category><![CDATA[C语言]]></category>
		<category><![CDATA[代码]]></category>

		<guid isPermaLink="false">http://www.cloudxiao.com/?p=241</guid>
		<description><![CDATA[题目：从键盘输入若干行字符（每行长度不等），输入后把它们存储到一磁盘文件中，再从该文件中读入这些数据，将其中的小写字母转换成大写字母后在显示屏上输出。 12345678910111213141516171819202122232425262728&#160; &#160; FILE *fp; &#160; &#160; &#160; &#160; char str&#91;N&#93;&#91;20&#93;; &#160; &#160; fp=fopen&#40;&#34;13_12.txt&#34;,&#34;w&#34;&#41;; &#160; &#160; for&#40;int i=0; i&#60;N; i++&#41; &#160; &#160; &#123; &#160; &#160; &#160; &#160; gets&#40;str&#91;i&#93;&#41;; &#160; &#160; &#160; &#160; fputs&#40;str&#91;i&#93;,fp&#41;; &#160; &#160; &#160; &#160; fputs&#40;&#34;\n&#34;,fp&#41;; &#160; &#160; &#125; &#160; &#160; fclose&#40;fp&#41;; &#160; &#160; fp=fopen&#40;&#34;13_12.txt&#34;,&#34;r&#34;&#41;; &#160; &#160; char...]]></description>
			<content:encoded><![CDATA[<p>题目：从键盘输入若干行字符（每行长度不等），输入后把它们存储到一磁盘文件中，再从该文件中读入这些数据，将其中的小写字母转换成大写字母后在显示屏上输出。<br />
<span id="more-241"></span></p>
<div class="codecolorer-container c default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br /></div></td><td><div class="c codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; FILE <span style="color: #339933;">*</span>fp<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #993333;">char</span> str<span style="color: #009900;">&#91;</span>N<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000dd;">20</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; fp<span style="color: #339933;">=</span><a href="http://www.opengroup.org/onlinepubs/009695399/functions/fopen.html"><span style="color: #000066;">fopen</span></a><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;13_12.txt&quot;</span><span style="color: #339933;">,</span><span style="color: #ff0000;">&quot;w&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span><span style="color: #993333;">int</span> i<span style="color: #339933;">=</span><span style="color: #0000dd;">0</span><span style="color: #339933;">;</span> i<span style="color: #339933;">&lt;</span>N<span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.opengroup.org/onlinepubs/009695399/functions/gets.html"><span style="color: #000066;">gets</span></a><span style="color: #009900;">&#40;</span>str<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.opengroup.org/onlinepubs/009695399/functions/fputs.html"><span style="color: #000066;">fputs</span></a><span style="color: #009900;">&#40;</span>str<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span>fp<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.opengroup.org/onlinepubs/009695399/functions/fputs.html"><span style="color: #000066;">fputs</span></a><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #339933;">,</span>fp<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
<br />
&nbsp; &nbsp; <a href="http://www.opengroup.org/onlinepubs/009695399/functions/fclose.html"><span style="color: #000066;">fclose</span></a><span style="color: #009900;">&#40;</span>fp<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; fp<span style="color: #339933;">=</span><a href="http://www.opengroup.org/onlinepubs/009695399/functions/fopen.html"><span style="color: #000066;">fopen</span></a><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;13_12.txt&quot;</span><span style="color: #339933;">,</span><span style="color: #ff0000;">&quot;r&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #993333;">char</span> ch<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; ch<span style="color: #339933;">=</span><a href="http://www.opengroup.org/onlinepubs/009695399/functions/fgetc.html"><span style="color: #000066;">fgetc</span></a><span style="color: #009900;">&#40;</span>fp<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #b1b100;">while</span><span style="color: #009900;">&#40;</span>ch<span style="color: #339933;">!=</span>EOF<span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span>ch<span style="color: #339933;">&gt;=</span><span style="color: #ff0000;">'a'</span><span style="color: #009900;">&#41;</span> ch<span style="color: #339933;">=</span>ch<span style="color: #339933;">-</span><span style="color: #0000dd;">32</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #b1b100;">else</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.opengroup.org/onlinepubs/009695399/functions/putchar.html"><span style="color: #000066;">putchar</span></a><span style="color: #009900;">&#40;</span>ch<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; ch<span style="color: #339933;">=</span><a href="http://www.opengroup.org/onlinepubs/009695399/functions/fgetc.html"><span style="color: #000066;">fgetc</span></a><span style="color: #009900;">&#40;</span>fp<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
<br />
&nbsp; &nbsp; <a href="http://www.opengroup.org/onlinepubs/009695399/functions/fclose.html"><span style="color: #000066;">fclose</span></a><span style="color: #009900;">&#40;</span>fp<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
]]></content:encoded>
			<wfw:commentRss>http://www.cloudxiao.com/archives/241/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A和B各存放一行字母，要求把信息按顺序排列，输出到C</title>
		<link>http://www.cloudxiao.com/archives/237</link>
		<comments>http://www.cloudxiao.com/archives/237#comments</comments>
		<pubDate>Wed, 10 Mar 2010 06:53:20 +0000</pubDate>
		<dc:creator>cloudxiao</dc:creator>
				<category><![CDATA[职业生涯]]></category>
		<category><![CDATA[C语言]]></category>
		<category><![CDATA[代码]]></category>

		<guid isPermaLink="false">http://www.cloudxiao.com/?p=237</guid>
		<description><![CDATA[有两个磁盘文件A和B，各存放一行字母，要求把这两个文件中的信息合并（按字母顺序排列），输出到一个新文件C中去 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647int main&#40;void&#41; &#123; FILE * fp1, * fp2, * fp3; if&#40;&#40;fp1=fopen&#40;&#34;a.txt&#34;, &#34;r&#34;&#41;&#41;==NULL&#41; exit&#40;0&#41;; if&#40;&#40;fp2=fopen&#40;&#34;b.txt&#34;, &#34;r&#34;&#41;&#41;==NULL&#41; exit&#40;0&#41;; if&#40;&#40;fp3=fopen&#40;&#34;c.txt&#34;, &#34;w&#34;&#41;&#41;==NULL&#41; exit&#40;0&#41;; char ch&#91;20&#93;, c; int i=0, n; for&#40;i=0; &#40;c=fgetc&#40;fp1&#41;&#41;!=EOF; i++&#41; &#123; ch&#91;i&#93;=c; putchar&#40;ch&#91;i&#93;&#41;; &#125; for&#40;i; &#40;c=fgetc&#40;fp2&#41;&#41;!=EOF; i++&#41; &#123; ch&#91;i&#93;=c; putchar&#40;ch&#91;i&#93;&#41;; &#125; n=i; for &#40;i=0; i for&#40;int j=i+1; jch&#91;j&#93;&#41; &#123; char temp;...]]></description>
			<content:encoded><![CDATA[<p>有两个磁盘文件A和B，各存放一行字母，要求把这两个文件中的信息合并（按字母顺序排列），输出到一个新文件C中去<br />
<span id="more-237"></span></p>
<div class="codecolorer-container c default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br /></div></td><td><div class="c codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #993333;">int</span> main<span style="color: #009900;">&#40;</span><span style="color: #993333;">void</span><span style="color: #009900;">&#41;</span><br />
<span style="color: #009900;">&#123;</span><br />
FILE <span style="color: #339933;">*</span> fp1<span style="color: #339933;">,</span> <span style="color: #339933;">*</span> fp2<span style="color: #339933;">,</span> <span style="color: #339933;">*</span> fp3<span style="color: #339933;">;</span><br />
<br />
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>fp1<span style="color: #339933;">=</span><a href="http://www.opengroup.org/onlinepubs/009695399/functions/fopen.html"><span style="color: #000066;">fopen</span></a><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;a.txt&quot;</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">&quot;r&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">==</span>NULL<span style="color: #009900;">&#41;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/exit.html"><span style="color: #000066;">exit</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000dd;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>fp2<span style="color: #339933;">=</span><a href="http://www.opengroup.org/onlinepubs/009695399/functions/fopen.html"><span style="color: #000066;">fopen</span></a><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;b.txt&quot;</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">&quot;r&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">==</span>NULL<span style="color: #009900;">&#41;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/exit.html"><span style="color: #000066;">exit</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000dd;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>fp3<span style="color: #339933;">=</span><a href="http://www.opengroup.org/onlinepubs/009695399/functions/fopen.html"><span style="color: #000066;">fopen</span></a><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;c.txt&quot;</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">&quot;w&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">==</span>NULL<span style="color: #009900;">&#41;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/exit.html"><span style="color: #000066;">exit</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000dd;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #993333;">char</span> ch<span style="color: #009900;">&#91;</span><span style="color: #0000dd;">20</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> c<span style="color: #339933;">;</span><br />
<span style="color: #993333;">int</span> i<span style="color: #339933;">=</span><span style="color: #0000dd;">0</span><span style="color: #339933;">,</span> n<span style="color: #339933;">;</span><br />
<br />
<span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span>i<span style="color: #339933;">=</span><span style="color: #0000dd;">0</span><span style="color: #339933;">;</span> <span style="color: #009900;">&#40;</span>c<span style="color: #339933;">=</span><a href="http://www.opengroup.org/onlinepubs/009695399/functions/fgetc.html"><span style="color: #000066;">fgetc</span></a><span style="color: #009900;">&#40;</span>fp1<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">!=</span>EOF<span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span><br />
<span style="color: #009900;">&#123;</span><br />
ch<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">=</span>c<span style="color: #339933;">;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/putchar.html"><span style="color: #000066;">putchar</span></a><span style="color: #009900;">&#40;</span>ch<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span>i<span style="color: #339933;">;</span> <span style="color: #009900;">&#40;</span>c<span style="color: #339933;">=</span><a href="http://www.opengroup.org/onlinepubs/009695399/functions/fgetc.html"><span style="color: #000066;">fgetc</span></a><span style="color: #009900;">&#40;</span>fp2<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">!=</span>EOF<span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span><br />
<span style="color: #009900;">&#123;</span><br />
ch<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">=</span>c<span style="color: #339933;">;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/putchar.html"><span style="color: #000066;">putchar</span></a><span style="color: #009900;">&#40;</span>ch<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
n<span style="color: #339933;">=</span>i<span style="color: #339933;">;</span><br />
<br />
<span style="color: #b1b100;">for</span> <span style="color: #009900;">&#40;</span>i<span style="color: #339933;">=</span><span style="color: #0000dd;">0</span><span style="color: #339933;">;</span> i <span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span><span style="color: #993333;">int</span> j<span style="color: #339933;">=</span>i<span style="color: #339933;">+</span><span style="color: #0000dd;">1</span><span style="color: #339933;">;</span> jch<span style="color: #009900;">&#91;</span>j<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><br />
<span style="color: #009900;">&#123;</span><br />
<span style="color: #993333;">char</span> temp<span style="color: #339933;">;</span><br />
temp<span style="color: #339933;">=</span>ch<span style="color: #009900;">&#91;</span>j<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
ch<span style="color: #009900;">&#91;</span>j<span style="color: #009900;">&#93;</span><span style="color: #339933;">=</span>ch<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
ch<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">=</span>temp<span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span>i<span style="color: #339933;">=</span><span style="color: #0000dd;">0</span><span style="color: #339933;">;</span> i <span style="color: #009900;">&#123;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/putc.html"><span style="color: #000066;">putc</span></a><span style="color: #009900;">&#40;</span>ch<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span>fp3<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/fclose.html"><span style="color: #000066;">fclose</span></a><span style="color: #009900;">&#40;</span>fp1<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/fclose.html"><span style="color: #000066;">fclose</span></a><span style="color: #009900;">&#40;</span>fp2<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/fclose.html"><span style="color: #000066;">fclose</span></a><span style="color: #009900;">&#40;</span>fp3<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #b1b100;">return</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>开始使用了feof来判断磁盘文件的结尾，却总是出问题。仔细搜索一下才发现feof这个函数本身就让很多人误解，来看看网络上的解释：</p>
<blockquote><p><span style="color: #0000ff;">“C”语言的“feof()”函数和数据库中“eof()”函数的运做是完全不同的。数据库中“eof()”函数读取当前指针的位置，“C”语言的“feof()”函数返回的是最后一次“读操作的内容”。多年来把“位置和内容”相混，从而造成了对这一概念的似是而非。</span></p>
<p><span style="color: #0000ff;">那么，位置和内容到底有何不同呢？举个简单的例子，比如有人说“你走到火车的最后一节车箱”这就是位置。而如果说“请你一直向后走，摸到铁轨结果”这就是内容。也就是说用内容来判断会“多走一节”。这就是完全依赖于“while(!feof(FP){&#8230;}”进行文件复制时，目标文档总会比源文档“多出一些”的原因。</span></p></blockquote>
<p>看了别人的代码才发现原来判断用EOF更加合适，这也解释了为什么最后我输出的文件总是多占几个字符。另外，我看到有一种更简写代码的方式，也就是不必设置那么多文件指针。只需要设置一个，然后打开文件后即像数组拷贝，结束后关闭指针再新打开即可，这样就不必设置三个fp指针了。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cloudxiao.com/archives/237/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>输入一个字符串，将小写字母转大写并输出</title>
		<link>http://www.cloudxiao.com/archives/231</link>
		<comments>http://www.cloudxiao.com/archives/231#comments</comments>
		<pubDate>Wed, 10 Mar 2010 04:41:26 +0000</pubDate>
		<dc:creator>cloudxiao</dc:creator>
				<category><![CDATA[职业生涯]]></category>
		<category><![CDATA[C语言]]></category>
		<category><![CDATA[代码]]></category>

		<guid isPermaLink="false">http://www.cloudxiao.com/?p=231</guid>
		<description><![CDATA[第10章第4题：从键盘输入一个字符串，将其中的小写字母全部转换成大写字母，然后输出到一个磁盘文件test中保存。输入的字符串以“！”结束。 123456789101112131415char str&#91;10&#93;; gets&#40;str&#41;; for&#40;int i=0; i&#38;lt;10; i++&#41; &#123; if&#40;str&#91;i&#93;&#38;gt;='a'&#41; str&#91;i&#93;=str&#91;i&#93;-32; &#125; FILE * fp; if&#40;&#40;fp=fopen&#40;&#34;test.txt&#34;, &#34;w&#34;&#41;&#41;==NULL&#41; exit&#40;0&#41;; fputs&#40;str,fp&#41;; fputs&#40;&#34;!&#34;,fp&#41;; fclose&#40;fp&#41;; return 0;]]></description>
			<content:encoded><![CDATA[<p>第10章第4题：从键盘输入一个字符串，将其中的小写字母全部转换成大写字母，然后输出到一个磁盘文件test中保存。输入的字符串以“！”结束。<br />
<span id="more-231"></span></p>
<div class="codecolorer-container c default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br /></div></td><td><div class="c codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #993333;">char</span> str<span style="color: #009900;">&#91;</span><span style="color: #0000dd;">10</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/gets.html"><span style="color: #000066;">gets</span></a><span style="color: #009900;">&#40;</span>str<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span><span style="color: #993333;">int</span> i<span style="color: #339933;">=</span><span style="color: #0000dd;">0</span><span style="color: #339933;">;</span> i<span style="color: #339933;">&amp;</span>lt<span style="color: #339933;">;</span><span style="color: #0000dd;">10</span><span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span>str<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">&amp;</span>gt<span style="color: #339933;">;=</span><span style="color: #ff0000;">'a'</span><span style="color: #009900;">&#41;</span><br />
str<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">=</span>str<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">-</span><span style="color: #0000dd;">32</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
FILE <span style="color: #339933;">*</span> fp<span style="color: #339933;">;</span><br />
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>fp<span style="color: #339933;">=</span><a href="http://www.opengroup.org/onlinepubs/009695399/functions/fopen.html"><span style="color: #000066;">fopen</span></a><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;test.txt&quot;</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">&quot;w&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">==</span>NULL<span style="color: #009900;">&#41;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/exit.html"><span style="color: #000066;">exit</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000dd;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/fputs.html"><span style="color: #000066;">fputs</span></a><span style="color: #009900;">&#40;</span>str<span style="color: #339933;">,</span>fp<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/fputs.html"><span style="color: #000066;">fputs</span></a><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;!&quot;</span><span style="color: #339933;">,</span>fp<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/fclose.html"><span style="color: #000066;">fclose</span></a><span style="color: #009900;">&#40;</span>fp<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #b1b100;">return</span> <span style="color: #0000dd;">0</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
]]></content:encoded>
			<wfw:commentRss>http://www.cloudxiao.com/archives/231/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[讨论]C语言名题系列:最长平台</title>
		<link>http://www.cloudxiao.com/archives/184</link>
		<comments>http://www.cloudxiao.com/archives/184#comments</comments>
		<pubDate>Thu, 14 Jan 2010 06:36:14 +0000</pubDate>
		<dc:creator>cloudxiao</dc:creator>
				<category><![CDATA[职业生涯]]></category>
		<category><![CDATA[C语言]]></category>
		<category><![CDATA[代码]]></category>

		<guid isPermaLink="false">http://www.cloudxiao.com/?p=184</guid>
		<description><![CDATA[朋友Kada（进入博客）最新的一篇关于C语言的题目引起了我的兴趣，所以我也尝试编写了代码，在这里分享。 题目是这样的： 最长平台问题：已知一个已经从小到大排序的数组，这个数组中的的一个平台（Plateau）就是连续的一串值相同的元素，并且这个串元素不能再延伸。例如，在1，2，2，3，3，3，4，5，5，6中1，2-2，3-3-3，4，5-5，6都是平台，试编写一个函数，接收一个数组，并把这个数组中的最长平台所含的个数作为返回值，如上例中3-3-3就是最长平台，该平台中一共有3个3，故函数返回值为3。要求使用最少的变量，最少的查询次数以及最少的程序语句！ Kada写的代码是这样的： 1234567891011121314151617#define max(x, y) ( (x) &#62; (y) ) ? (x) : (y) int kz_plateau&#40;int x&#91;&#93;, int n&#41; &#123; &#160; &#160; int length = 1, maxlen = 1; &#160; &#160; int i; &#160; &#160; for&#40;i=1; i&#60;n; i++&#41; &#160; &#160; &#123; &#160; &#160; &#160; &#160; if&#40;x&#91;i&#93; == x&#91;i-length&#93;&#41;...]]></description>
			<content:encoded><![CDATA[<p>朋友Kada（<a href="http://blog.okkey.net/800.html/comment-page-1#comment-1380" target="_blank">进入博客</a>）最新的一篇关于C语言的题目引起了我的兴趣，所以我也尝试编写了代码，在这里分享。<br />
<span id="more-184"></span><br />
题目是这样的：</p>
<p><strong>最长平台问题</strong>：已知一个已经<strong>从小到大排序</strong>的数组，这个数组中的的一个平台（Plateau）就是连续的一串值相同的元素，并且这个串元素不能再延伸。例如，在1，2，2，3，3，3，4，5，5，6中1，2-2，3-3-3，4，5-5，6都是平台，试编写一个函数，接收一个数组，并把这个数组中的最长平台所含的个数作为返回值，如上例中3-3-3就是最长平台，该平台中一共有3个3，故函数返回值为3。<strong>要求使用最少的变量，最少的查询次数以及最少的程序语句！</strong></p>
<p>Kada写的代码是这样的：</p>
<div class="codecolorer-container c default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br /></div></td><td><div class="c codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #339933;">#define max(x, y) ( (x) &gt; (y) ) ? (x) : (y)</span><br />
<span style="color: #993333;">int</span> kz_plateau<span style="color: #009900;">&#40;</span><span style="color: #993333;">int</span> x<span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #993333;">int</span> n<span style="color: #009900;">&#41;</span><br />
<span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #993333;">int</span> length <span style="color: #339933;">=</span> <span style="color: #0000dd;">1</span><span style="color: #339933;">,</span> maxlen <span style="color: #339933;">=</span> <span style="color: #0000dd;">1</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #993333;">int</span> i<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span>i<span style="color: #339933;">=</span><span style="color: #0000dd;">1</span><span style="color: #339933;">;</span> i<span style="color: #339933;">&lt;</span>n<span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span>x<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span> <span style="color: #339933;">==</span> x<span style="color: #009900;">&#91;</span>i<span style="color: #339933;">-</span>length<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; length<span style="color: #339933;">++;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #b1b100;">else</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; maxlen <span style="color: #339933;">=</span> max<span style="color: #009900;">&#40;</span>maxlen<span style="color: #339933;">,</span> length<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; length <span style="color: #339933;">=</span> <span style="color: #0000dd;">1</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #b1b100;">return</span> maxlen<span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>而我却弄不清[i-length]的意思，于是写了一个自己理解的代码：</p>
<div class="codecolorer-container c default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br /></div></td><td><div class="c codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #993333;">int</span> p<span style="color: #009900;">&#40;</span><span style="color: #993333;">int</span> a<span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #993333;">int</span> n<span style="color: #009900;">&#41;</span><br />
<span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #993333;">int</span> len<span style="color: #339933;">=</span><span style="color: #0000dd;">1</span><span style="color: #339933;">;</span> <span style="color: #993333;">int</span> maxlen<span style="color: #339933;">=</span><span style="color: #0000dd;">1</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span><span style="color: #993333;">int</span> i<span style="color: #339933;">=</span><span style="color: #0000dd;">0</span><span style="color: #339933;">;</span> i<span style="color: #339933;">&lt;</span>n<span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span>a<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">==</span>a<span style="color: #009900;">&#91;</span>i<span style="color: #339933;">+</span><span style="color: #0000dd;">1</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; len<span style="color: #339933;">++;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span>len <span style="color: #339933;">&gt;</span> maxlen<span style="color: #009900;">&#41;</span> maxlen<span style="color: #339933;">=</span>len<span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #b1b100;">else</span> len<span style="color: #339933;">=</span><span style="color: #0000dd;">1</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #b1b100;">return</span> maxlen<span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>可能是我教材看多了，思维模式也是书上习题的模式。希望Kada来解释一下“if(x[i] == x[i-length])”这句代码，为什么要减呢？从数组[0]元素，往后比较，应该是数组[i++]的关系啊。由于在Kada的博客无法贴全代码，所以只好写在这里讨论了。最后感谢Kada提供经典题目。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cloudxiao.com/archives/184/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>用递归法将一个整数n转换成字符串。</title>
		<link>http://www.cloudxiao.com/archives/170</link>
		<comments>http://www.cloudxiao.com/archives/170#comments</comments>
		<pubDate>Thu, 17 Dec 2009 14:39:33 +0000</pubDate>
		<dc:creator>cloudxiao</dc:creator>
				<category><![CDATA[职业生涯]]></category>
		<category><![CDATA[C语言]]></category>

		<guid isPermaLink="false">http://www.cloudxiao.com/?p=170</guid>
		<description><![CDATA[用递归法将一个整数n转换成字符串。如输入整数2008，应输出字符串“2008”。n的位数不确定，可以使任意位数的整数。 实在很难想象，所以从网上找了代码，代码都是C++的，所以看懂代码后我把他转成了C# 12345678910111213141516171819#include &#34;stdafx.h&#34; void main&#40;&#41; &#123; void change&#40;int num&#41;; int num; scanf&#40;&#34;%d&#34;, &#38;amp;num&#41;; change&#40;num&#41;; printf&#40;&#34;\n&#34;&#41;; &#125; void change&#40;int num&#41; &#123; int i; char c; if&#40;&#40;i=num/10&#41; != 0&#41; change&#40;i&#41;; c=num%10+'0'; printf&#40;&#34;%c&#34;, c&#41;; &#125;]]></description>
			<content:encoded><![CDATA[<p><span id="more-170"></span><br />
用递归法将一个整数n转换成字符串。如输入整数2008，应输出字符串“2008”。n的位数不确定，可以使任意位数的整数。</p>
<p>实在很难想象，所以从网上找了代码，代码都是C++的，所以看懂代码后我把他转成了C#</p>
<div class="codecolorer-container c default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br /></div></td><td><div class="c codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #339933;">#include &quot;stdafx.h&quot;</span><br />
<br />
<span style="color: #993333;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><br />
<span style="color: #009900;">&#123;</span><br />
<span style="color: #993333;">void</span> change<span style="color: #009900;">&#40;</span><span style="color: #993333;">int</span> num<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #993333;">int</span> num<span style="color: #339933;">;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/scanf.html"><span style="color: #000066;">scanf</span></a><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;%d&quot;</span><span style="color: #339933;">,</span> <span style="color: #339933;">&amp;</span>amp<span style="color: #339933;">;</span>num<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
change<span style="color: #009900;">&#40;</span>num<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/printf.html"><span style="color: #000066;">printf</span></a><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #993333;">void</span> change<span style="color: #009900;">&#40;</span><span style="color: #993333;">int</span> num<span style="color: #009900;">&#41;</span><br />
<span style="color: #009900;">&#123;</span><br />
<span style="color: #993333;">int</span> i<span style="color: #339933;">;</span><br />
<span style="color: #993333;">char</span> c<span style="color: #339933;">;</span><br />
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>i<span style="color: #339933;">=</span>num<span style="color: #339933;">/</span><span style="color: #0000dd;">10</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">!=</span> <span style="color: #0000dd;">0</span><span style="color: #009900;">&#41;</span> change<span style="color: #009900;">&#40;</span>i<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
c<span style="color: #339933;">=</span>num<span style="color: #339933;">%</span><span style="color:#800080;">10</span><span style="color: #339933;">+</span><span style="color: #ff0000;">'0'</span><span style="color: #339933;">;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/printf.html"><span style="color: #000066;">printf</span></a><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;%c&quot;</span><span style="color: #339933;">,</span> c<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
]]></content:encoded>
			<wfw:commentRss>http://www.cloudxiao.com/archives/170/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>输入一个4为数字，要求输出这4个数字字符…</title>
		<link>http://www.cloudxiao.com/archives/168</link>
		<comments>http://www.cloudxiao.com/archives/168#comments</comments>
		<pubDate>Thu, 17 Dec 2009 08:29:25 +0000</pubDate>
		<dc:creator>cloudxiao</dc:creator>
				<category><![CDATA[职业生涯]]></category>
		<category><![CDATA[C语言]]></category>
		<category><![CDATA[代码]]></category>

		<guid isPermaLink="false">http://www.cloudxiao.com/?p=168</guid>
		<description><![CDATA[输入一个4为数字，要求输出这4个数字字符，但每个数字间空一格空格。如输入2008，应输出“2 0 0 8” 网上的解决方式有很多，看的我比较晕，用不用函数的都有。既然标题要求使用函数，那就用使用函数的解决方法吧。个人感觉代码有些“笨” 1234567891011121314151617181920char newb&#91;20&#93;; void main&#40;&#41; &#123; char num&#91;20&#93;; gets &#40;num&#41;;blank&#40;num&#41;; printf&#40;&#34;%s\n&#34;, newb&#41;; &#125; void blank&#40;char num&#91;&#93;&#41; &#123; int p=0; for&#40;static i=0; i&#38;lt;3; i++&#41; &#123; newb&#91;p&#93;=num&#91;i&#93;; p++; newb&#91;p&#93;=' '; //加一个空格 p++; //后面加空格后指针在+1 &#125; newb&#91;p&#93;=num&#91;i&#93;; &#125;]]></description>
			<content:encoded><![CDATA[<p><span id="more-168"></span><br />
输入一个4为数字，要求输出这4个数字字符，但每个数字间空一格空格。如输入2008，应输出“2 0 0 8”</p>
<p>网上的解决方式有很多，看的我比较晕，用不用函数的都有。既然标题要求使用函数，那就用使用函数的解决方法吧。个人感觉代码有些“笨”</p>
<div class="codecolorer-container c default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br /></div></td><td><div class="c codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #993333;">char</span> newb<span style="color: #009900;">&#91;</span><span style="color: #0000dd;">20</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
<span style="color: #993333;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><br />
<span style="color: #009900;">&#123;</span><br />
<span style="color: #993333;">char</span> num<span style="color: #009900;">&#91;</span><span style="color: #0000dd;">20</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/gets.html"><span style="color: #000066;">gets</span></a> <span style="color: #009900;">&#40;</span>num<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>blank<span style="color: #009900;">&#40;</span>num<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<a href="http://www.opengroup.org/onlinepubs/009695399/functions/printf.html"><span style="color: #000066;">printf</span></a><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;%s<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #339933;">,</span> newb<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #993333;">void</span> blank<span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span> num<span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><br />
<span style="color: #009900;">&#123;</span><br />
<span style="color: #993333;">int</span> p<span style="color: #339933;">=</span><span style="color: #0000dd;">0</span><span style="color: #339933;">;</span><br />
<span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span><span style="color: #993333;">static</span> i<span style="color: #339933;">=</span><span style="color: #0000dd;">0</span><span style="color: #339933;">;</span> i<span style="color: #339933;">&amp;</span>lt<span style="color: #339933;">;</span><span style="color: #0000dd;">3</span><span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span><br />
<span style="color: #009900;">&#123;</span><br />
newb<span style="color: #009900;">&#91;</span>p<span style="color: #009900;">&#93;</span><span style="color: #339933;">=</span>num<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
p<span style="color: #339933;">++;</span><br />
newb<span style="color: #009900;">&#91;</span>p<span style="color: #009900;">&#93;</span><span style="color: #339933;">=</span><span style="color: #ff0000;">' '</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">//加一个空格</span><br />
p<span style="color: #339933;">++;</span> <span style="color: #666666; font-style: italic;">//后面加空格后指针在+1</span><br />
<span style="color: #009900;">&#125;</span><br />
newb<span style="color: #009900;">&#91;</span>p<span style="color: #009900;">&#93;</span><span style="color: #339933;">=</span>num<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
]]></content:encoded>
			<wfw:commentRss>http://www.cloudxiao.com/archives/168/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>[转帖]C语言学习方法</title>
		<link>http://www.cloudxiao.com/archives/166</link>
		<comments>http://www.cloudxiao.com/archives/166#comments</comments>
		<pubDate>Thu, 17 Dec 2009 05:46:29 +0000</pubDate>
		<dc:creator>cloudxiao</dc:creator>
				<category><![CDATA[职业生涯]]></category>
		<category><![CDATA[C语言]]></category>

		<guid isPermaLink="false">http://www.cloudxiao.com/?p=166</guid>
		<description><![CDATA[学习C语言不是一朝一夕的事情，但也不需要花费十年时间才能精通。如何以最小的代价学习并精通C语言是本文的主题。请注意，即使是“最小的代价”，也绝不是什么捷径，而是以最短的时间取得最多的收获，同时也意味着你需要经历艰苦的过程。 一、要读就读好书，否则不如不读 所有初学者面临的第一个问题便是：如何选择教材。好的开始是成功的一半，选择一本优秀的教材是事半功倍的关键因素。不幸的是，学校通常会帮你指定一本很差劲的C语言课本；而幸运的是，你还可以再次选择。 大名鼎鼎的谭浩强教授出了一本《C语言程序设计》，据说发行量有超过400万，据我所知，很多学校都会推荐这本书作为C语言课本。虽然本人的名字（谭浩宇）跟教授仅仅一字之差，但我是无比坚定地黑他这本书的。这本书不是写给计算机专业的学生的，而是给那些需要考计算机等级考试的其它专业学生看的。这本书的主要缺点是：例子程序非常不专业，不能教给你程序设计应该掌握的思考方式；程序风格相当地不好，会让你养成乱写代码的恶习；错误太多，曾经有人指出过这本书的上百个错误，其中不乏关键的概念性错误。好了，这本书我也不想说太多了，有兴趣大家可以百度一下：） Kernighan和Ritchie的《The C Programming Language》（中译名《C程序设计语言》）堪称经典中的经典，不过旧版的很多内容都已过时，和现在的标准C语言相去甚远，大家一定要看最新的版本，否则不如不看。另外，即使是最经典最权威的书，也没有办法面面俱到，所以手边常备一本《C语言参考手册》是十分必要的。《C语言参考手册》就是《C Reference Manual》，是C语言标准的详细描述，包括绝大多数C标准库函数的细节，算得上是最好的标准C语言的工具书。顺便提一句，最新的《C程序设计语言》是根据C89标准修订的，而《C语言参考手册》描述的是C99标准，二者可能会有些出入，建议按照C99标准学习。还有一本《C和指针》，写得也是相当地不错，英文名是《Pointers on C》，特别地强调指针的重要性，算是本书的一个特点吧。不过这本书并不十分适合初学者，如果你曾经学过C语言，有那么一些C语言的基础但又不是很扎实，那么你可以尝试一下这本书。我相信，只要你理解了指针，C语言便不再神秘。 如果你已经啃完了一本C语言教材，想要更进一步，那么有两本书你一定要看。首先是《C Traps and Pitfalls》（中译名《C陷井与缺陷》），很薄的一本小册子，内容非常非常地有趣。要注意一点，这本书是二十多年前写成的，里面提到的很多C语言的缺陷都已被改进，不过能够了解一些历史也不是什么坏事。然后你可以挑战一下《Expert C Programming》（中译名《C专家编程》），书如其名，这本书颇具难度，一旦你仔细读完并能透彻理解，你便可以放心大胆地在简历上写“精通C语言”了。 切记一个原则，不要读自己目前还看不懂的书，那是浪费生命。如果你看不懂，那你一定是缺失了某些必需基础知识。此时，你要仔细分析自己需要补充哪些内容，然后再去书店寻找讲述的这些内容的书籍。把基础知识补充完毕再回头来学习，才会真正的事半功倍。 二、Unix/Linux还是Windows，这是个很大的问题 不同的编程环境会造就出不同思维的程序员。Windows的程序员大多依赖集成开发环境，比如Visual Studio，而Unix程序员更加钟爱Makefile与控制台。显而易见，集成开发环境更容易上手，在Windows上学习C语言，只需要会按几个基本的Visutal C++工具栏按钮就可以开始写Hello, World!了，而在Unix下，你需要一些控制台操作的基本知识。有人也许认为Unix的环境更简洁，但习惯的力量是很大的，大家都很熟悉Windows的基本操作，而为了学习C语言去专门装一个Unix系统，似乎有点不划算。 对于一个只懂得Windows基本操作、连DOS是什么都不知道的新手而言，尽快做一些有趣而有意义的事情才是最重要的。用C语言写一个小程序远比学习ls、cat等命令有趣，况且我们要专注于C语言本身，就不得不暂时忽略一些东西，比如编译链接的过程、Makefile的写法等等等等。 所以我建议初学者应该以Visual C++ 6.0（不是VisualC++ .NET）或者Dev C++作为主要的学习环境，而且千万不要在IDE的使用技巧上过多纠缠，因为今后你一定要转向Unix环境的。Visual C++ 6.0使用很方便，调试也很直观，但其默认的编译器对C标准的支持并不好，而Dev C++使用gcc编译器，对C99的标准都支持良好。使用顺带提一下，很多大学的C语言课程还在使用Turbo C 2.0作为实验环境，这是相当不可取的，原因其一是TC 2.0对C标准几乎没有支持，其二是TC 2.0编译得到的程序是16位的，这对今后理解32位的程序会造成极大的困扰（当然,用djgpp之类的东西可以使TC 2.0编译出32位程序，不过那过于复杂了）。 等你学完一本C语言的教材，你一定要转向Unix平台继续学习，几乎所有的C语言高级教程都是基于Unix平台的（比如《C专家编程》）。转变的过程是痛苦的，你需要面对的是各种纷繁复杂的命令，完全不同于Windows平台的思考方式，但是这种痛苦是值得的。Unix与C是共生的，Unix的思考方式和习惯更加符合C语言的思考方式和习惯。在Unix下，你可以找到无数优秀的源代码供你尽情阅读，你可以方便地查看某个库函数的联机手册，还可以看到最优秀的代码风格 归结起来就是一句话：初学C语言，建议使用Windows系统和集成开发环境，在准备向“高手”方向努力时，请先转向Unix平台。 三、万事俱备，你就是东风 书已选定，环境配置完成，正所谓万事俱备，只欠你自己的努力了。请从书的前言开始，仔细地阅读手头的教材，很多人看书喜欢直接从第一章开始看，这是错误的做法。前言是作者对整本书的大体介绍，作者一般会告诉你需要什么基础才能够顺利阅读本书，这可以帮助你检验自己的基础知识是否已经具备。看完前言，还要浏览一下目录，了解一下书的整体结构，顺便给自己安排一下学习计划。 学习C语言，必需注意每一个细节，书上的例子代码一定要自己亲自敲一遍，编译执行输出都跟书上说的一致才能算是学完了一个例子，如果不一致，就要仔细找原因。出了书本上有的例子，自己还要“创造”一些例子，比如学习运算符优先级的时候，可以写几个相同的表达式，在不同的位置加上括号，看看有哪些不同的行为，比如*p++和(*p)++，又比如a = b == c、(a = b) ==...]]></description>
			<content:encoded><![CDATA[<p>学习C语言不是一朝一夕的事情，但也不需要花费十年时间才能精通。如何以最小的代价学习并精通C语言是本文的主题。请注意，即使是“最小的代价”，也绝不是什么捷径，而是以最短的时间取得最多的收获，同时也意味着你需要经历艰苦的过程。<br />
<span id="more-166"></span><br />
一、要读就读好书，否则不如不读</p>
<p>所有初学者面临的第一个问题便是：如何选择教材。好的开始是成功的一半，选择一本优秀的教材是事半功倍的关键因素。不幸的是，学校通常会帮你指定一本很差劲的C语言课本；而幸运的是，你还可以再次选择。</p>
<p>大名鼎鼎的谭浩强教授出了一本《C语言程序设计》，据说发行量有超过400万，据我所知，很多学校都会推荐这本书作为C语言课本。虽然本人的名字（谭浩宇）跟教授仅仅一字之差，但我是无比坚定地黑他这本书的。这本书不是写给计算机专业的学生的，而是给那些需要考计算机等级考试的其它专业学生看的。这本书的主要缺点是：例子程序非常不专业，不能教给你程序设计应该掌握的思考方式；程序风格相当地不好，会让你养成乱写代码的恶习；错误太多，曾经有人指出过这本书的上百个错误，其中不乏关键的概念性错误。好了，这本书我也不想说太多了，有兴趣大家可以百度一下：）</p>
<p>Kernighan和Ritchie的《The C Programming Language》（中译名《C程序设计语言》）堪称经典中的经典，不过旧版的很多内容都已过时，和现在的标准C语言相去甚远，大家一定要看最新的版本，否则不如不看。另外，即使是最经典最权威的书，也没有办法面面俱到，所以手边常备一本《C语言参考手册》是十分必要的。《C语言参考手册》就是《C Reference Manual》，是C语言标准的详细描述，包括绝大多数C标准库函数的细节，算得上是最好的标准C语言的工具书。顺便提一句，最新的《C程序设计语言》是根据C89标准修订的，而《C语言参考手册》描述的是C99标准，二者可能会有些出入，建议按照C99标准学习。还有一本《C和指针》，写得也是相当地不错，英文名是《Pointers on C》，特别地强调指针的重要性，算是本书的一个特点吧。不过这本书并不十分适合初学者，如果你曾经学过C语言，有那么一些C语言的基础但又不是很扎实，那么你可以尝试一下这本书。我相信，只要你理解了指针，C语言便不再神秘。</p>
<p>如果你已经啃完了一本C语言教材，想要更进一步，那么有两本书你一定要看。首先是《C Traps and Pitfalls》（中译名《C陷井与缺陷》），很薄的一本小册子，内容非常非常地有趣。要注意一点，这本书是二十多年前写成的，里面提到的很多C语言的缺陷都已被改进，不过能够了解一些历史也不是什么坏事。然后你可以挑战一下《Expert C Programming》（中译名《C专家编程》），书如其名，这本书颇具难度，一旦你仔细读完并能透彻理解，你便可以放心大胆地在简历上写“精通C语言”了。</p>
<p>切记一个原则，不要读自己目前还看不懂的书，那是浪费生命。如果你看不懂，那你一定是缺失了某些必需基础知识。此时，你要仔细分析自己需要补充哪些内容，然后再去书店寻找讲述的这些内容的书籍。把基础知识补充完毕再回头来学习，才会真正的事半功倍。</p>
<p>二、Unix/Linux还是Windows，这是个很大的问题</p>
<p>不同的编程环境会造就出不同思维的程序员。Windows的程序员大多依赖集成开发环境，比如Visual Studio，而Unix程序员更加钟爱Makefile与控制台。显而易见，集成开发环境更容易上手，在Windows上学习C语言，只需要会按几个基本的Visutal C++工具栏按钮就可以开始写Hello, World!了，而在Unix下，你需要一些控制台操作的基本知识。有人也许认为Unix的环境更简洁，但习惯的力量是很大的，大家都很熟悉Windows的基本操作，而为了学习C语言去专门装一个Unix系统，似乎有点不划算。</p>
<p>对于一个只懂得Windows基本操作、连DOS是什么都不知道的新手而言，尽快做一些有趣而有意义的事情才是最重要的。用C语言写一个小程序远比学习ls、cat等命令有趣，况且我们要专注于C语言本身，就不得不暂时忽略一些东西，比如编译链接的过程、Makefile的写法等等等等。</p>
<p>所以我建议初学者应该以Visual C++ 6.0（不是VisualC++ .NET）或者Dev C++作为主要的学习环境，而且千万不要在IDE的使用技巧上过多纠缠，因为今后你一定要转向Unix环境的。Visual C++ 6.0使用很方便，调试也很直观，但其默认的编译器对C标准的支持并不好，而Dev C++使用gcc编译器，对C99的标准都支持良好。使用顺带提一下，很多大学的C语言课程还在使用Turbo C 2.0作为实验环境，这是相当不可取的，原因其一是TC 2.0对C标准几乎没有支持，其二是TC 2.0编译得到的程序是16位的，这对今后理解32位的程序会造成极大的困扰（当然,用djgpp之类的东西可以使TC 2.0编译出32位程序，不过那过于复杂了）。</p>
<p>等你学完一本C语言的教材，你一定要转向Unix平台继续学习，几乎所有的C语言高级教程都是基于Unix平台的（比如《C专家编程》）。转变的过程是痛苦的，你需要面对的是各种纷繁复杂的命令，完全不同于Windows平台的思考方式，但是这种痛苦是值得的。Unix与C是共生的，Unix的思考方式和习惯更加符合C语言的思考方式和习惯。在Unix下，你可以找到无数优秀的源代码供你尽情阅读，你可以方便地查看某个库函数的联机手册，还可以看到最优秀的代码风格<br />
归结起来就是一句话：初学C语言，建议使用Windows系统和集成开发环境，在准备向“高手”方向努力时，请先转向Unix平台。</p>
<p>三、万事俱备，你就是东风<br />
书已选定，环境配置完成，正所谓万事俱备，只欠你自己的努力了。请从书的前言开始，仔细地阅读手头的教材，很多人看书喜欢直接从第一章开始看，这是错误的做法。前言是作者对整本书的大体介绍，作者一般会告诉你需要什么基础才能够顺利阅读本书，这可以帮助你检验自己的基础知识是否已经具备。看完前言，还要浏览一下目录，了解一下书的整体结构，顺便给自己安排一下学习计划。</p>
<p>学习C语言，必需注意每一个细节，书上的例子代码一定要自己亲自敲一遍，编译执行输出都跟书上说的一致才能算是学完了一个例子，如果不一致，就要仔细找原因。出了书本上有的例子，自己还要“创造”一些例子，比如学习运算符优先级的时候，可以写几个相同的表达式，在不同的位置加上括号，看看有哪些不同的行为，比如*p++和(*p)++，又比如a = b == c、(a = b) == c和a = (b == c)等等。自己抄的书上的例子以及改造之后的例子，还有自己“创造”的例子，都应该仔细地归类保存，并且要在源代码中写上简短的注释，阐述这个例子的意图。</p>
<p>例子之后就是习题了，我建议初学者把所有的习题都独立做一遍，然后对照答案的代码，看看自己的代码有那些不足，再试着修改自己的代码。很多人不重视习题，这是极大的错误，因为作者通常会在习题中说明一些重要的道理，而不是单纯地检验前面的知识。</p>
<p>也许你认为这样学习太慢，其实不然。学得细致就不用走回头路，等你学到后面才发现自己前面没搞清楚，那才是真的得不偿失。一般说来，整本书读完，你应该完成数千行乃至上万行的代码，无论是原封不动照抄书上的，还是自己心血来潮写就的，都是今后继续学习的一笔财富。以我自己举例，阅读《Windows核心编程》时（我只阅读了3/4的内容），除了抄书上的代码，还自己写了很多例子，一共有5574行（用unix下的wc工具统计），时隔多日，我早已记不清Windows的系统编程了，但只要花几分钟翻出以前的代码看看，便会重新了然于胸。所谓好记性不如烂笔头，就是这个道理。</p>
<p>仔细读书、认真抄写源代码、独立完成习题外加更进一步的实验，最后将所有的代码留下，成为自己的经验和财富，绝对的辛苦，也绝对的事半功倍。当然，这种方式只适合学习需要精通的技术，如果不是学习C语言，你还要具体情况具体分析。</p>
<p>写到最后，还有非常非常重要的一点没有提及——代码风格，从最开始学习就必须强迫自己模仿最优秀的代码风格。</p>
<p>看了这篇文章之后，我很有感触。想现在学习C语言都好多年了还是没有什么进步，上面都说道了。建议楼主置顶，让更多的人更快更好的学习C语言。C语言是编程的根基，也是最为深奥和灵活的语言。有了这篇文章的帮助相信大家会有一个学习方法。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cloudxiao.com/archives/166/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>输入10个学生5门课的成绩，分别用函数实现功能</title>
		<link>http://www.cloudxiao.com/archives/163</link>
		<comments>http://www.cloudxiao.com/archives/163#comments</comments>
		<pubDate>Tue, 15 Dec 2009 16:37:24 +0000</pubDate>
		<dc:creator>cloudxiao</dc:creator>
				<category><![CDATA[职业生涯]]></category>
		<category><![CDATA[C语言]]></category>

		<guid isPermaLink="false">http://www.cloudxiao.com/?p=163</guid>
		<description><![CDATA[1.计算每个学生平均分 2.计算每门课程的平均分 3.找出所有50个分数中最高的分数所对应的学生和课程 开始觉得这道题比较容易，可是做起来真的花了我比较长的时间。由于要用到函数来实现，所以关于函数的返回值以及数组的概念就需要掌握清楚。通过这道题我终于明白了一个问题，在void空返回函数中，可以直接引用数组，如void max(score[5][5])，如果要是需要一个返回值，那么在用score[5][5]则出现编译错误。目前我知道的解决方法，是这样写int max(score[][5],int n)空出一维。 为了降低难度，我把10个学生改为5个，并且存在已知函数中。代码如下： void main() { int score[5][5]={{84,65,26,37,48},{46,85,94,63,22},{34,13,23,54,66},{82,47,36,25,24},{25,44,73,32,11}}; for (int i=0; i&#60;5; i++) { printf(&#8220;第%d个学生的平均分是%d\n&#8221;, i+1, spj(score,i)); } &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; 进入求每个学生平均分成绩函数 int spj(int score[][5], int n) { int sum=0; for (int i=0; i&#60;5; i++) sum=sum+score[n][i]; return sum/5; } &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; for (int j=0; j&#60;5; j++) { printf(&#8220;第%d门课程平均分是%d\n&#8221;,...]]></description>
			<content:encoded><![CDATA[<p><span id="more-163"></span><br />
1.计算每个学生平均分</p>
<p>2.计算每门课程的平均分</p>
<p>3.找出所有50个分数中最高的分数所对应的学生和课程</p>
<p>开始觉得这道题比较容易，可是做起来真的花了我比较长的时间。由于要用到函数来实现，所以关于函数的返回值以及数组的概念就需要掌握清楚。通过这道题我终于明白了一个问题，在void空返回函数中，可以直接引用数组，如void max(score[5][5])，如果要是需要一个返回值，那么在用score[5][5]则出现编译错误。目前我知道的解决方法，是这样写int max(score[][5],int n)空出一维。</p>
<p>为了降低难度，我把10个学生改为5个，并且存在已知函数中。代码如下：</p>
<p><span style="color: #0000ff;">void main()<br />
{<br />
int score[5][5]={{84,65,26,37,48},{46,85,94,63,22},{34,13,23,54,66},{82,47,36,25,24},{25,44,73,32,11}};</span></p>
<p><span style="color: #0000ff;">for (int i=0; i&lt;5; i++)<br />
{<br />
printf(&#8220;第%d个学生的平均分是%d\n&#8221;, i+1, spj(score,i));<br />
}</span></p>
<blockquote><p><span style="color: #808080;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</span></p>
<p><span style="color: #808080;">进入求每个学生平均分成绩函数</span></p>
<p><span style="color: #808080;">int spj(int score[][5], int n)<br />
{<br />
int sum=0;<br />
for (int i=0; i&lt;5; i++)<br />
sum=sum+score[n][i];<br />
return sum/5;<br />
}</span></p>
<p><span style="color: #808080;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</span></p></blockquote>
<p><span style="color: #0000ff;">for (int j=0; j&lt;5; j++)<br />
{<br />
printf(&#8220;第%d门课程平均分是%d\n&#8221;, j+1, lpj(score,j));<br />
}</span></p>
<blockquote><p><span style="color: #808080;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</span></p>
<p><span style="color: #808080;">进入求每门课程平均分成绩函数</span></p>
<p><span style="color: #808080;">int lpj(int score[][5],int n)<br />
{<br />
int sum=0;<br />
for (int i=0; i&lt;5; i++)<br />
sum=sum+score[i][n];<br />
return sum/5;<br />
}</span></p>
<p><span style="color: #808080;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</span></p></blockquote>
<p><span style="color: #0000ff;">printf(&#8220;最高的分数是%d\n&#8221;, max(score,5));<br />
printf(&#8220;是第%d个学生的第%d门课程\n&#8221;, student, lesson);</span></p>
<blockquote><p><span style="color: #808080;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</span></p>
<p><span style="color: #808080;">int max(int score[][5],int n)<br />
{<br />
int temp=0;<br />
for(int i=0; i&lt;5; i++)<br />
{<br />
for(int j=0; j&lt;5; j++)<br />
if(score[i][j] &gt; temp)<br />
{<br />
temp=score[i][j];<br />
student=i+1;<br />
lesson=j+1;<br />
}<br />
}<br />
return (temp);<br />
}</span><span style="color: #808080;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</span></p></blockquote>
<p>总体来说代码感觉有些臃肿，不过这已经是我能想出的最好结果了。个人感觉第七章的课后习题比前几张真是难了很多，而且C语言我还未学到指针这最精华的部分，真无法想象后面的题会怎样。。。本来计划用2天时间做完第七章函数的15到题，结果每天最多只能研究3道题了。<br />
虽然是这样，我却慢慢发现了编程的乐趣。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cloudxiao.com/archives/163/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

