问题 问答题 案例分析题

阅读下文,回答问题。

读书苦乐

杨绛

读书专研学问,当然得下苦功夫。为应考试、为写论文、为求学位,大概都得苦读。陶渊明好读书。如果他生于当今世上,要去考大学,或考研究院,或考什么“托福儿”,难免会有些困难吧?我只愁他政治经济学不能及格呢,这还不是因为他“不求甚解”。

我曾挨过几下“棍子”,说我读书“追求精神享受”。我当时只好低头认罪。我也承认自己确实不是苦读。不过,“乐在其中”并不等于追求享受。这话可为知者言,不足为外人道也。

我觉得读书好比串门儿——“隐身”的串门儿。要参见钦佩的老师或拜谒有名的学者,不必事前打招呼求见,也不怕搅拢主人。翻开书面就闯进大门,翻过几页书就升堂入室;而且可以经常去,时刻去,如果不得要领,还可以不辞而别,或者另找高明,和他对质。不问我们要拜见的主人住在国内国外,不问他属于现代古代,不问他什么专业,不问他讲正经大道理或聊天说笑,都可以挨近前去听个足够。我们可以恭恭敬敬旁听孔门弟子追述夫子遗言,也不妨淘气地问“言必称‘亦曰仁义而矣’的孟夫子”,他如果生在我们同一时代,会不会是一位马列主义老先生呀?我们可以在苏格拉底临刑前守在他身边,听他和一伙朋友谈话;也可以对斯多葛派伊匹克悌忒斯(Epictetus)的《金玉良言》思考怀疑。我们可以倾听前朝列代的遗闻趣事,也可以领教当代最奥妙的创新理论或有意惊人的故作高论。反正话不投机或言不入耳,不妨抽身退场,甚至砰一下推上大门——就是说,拍地合上书面——谁也不会嗔怪。这是书以外的世界里难得的自由!

壶公悬挂的一把壶里,别有天地日月。每一本书——不论小说、戏剧、传记、游记、日记,以至散文诗词,都别有天地,别有星辰日月,而且还有生存其间的人物。我们很不必巴巴地赶赴某地,花钱买门票去看那些仿造的赝品或“栩栩如生”的替身,只要翻开一页书,走入真境,遇见真人,就可以亲亲切切地观赏一番。

说什么“欲穷千里目,更上一层楼”!我们连脚底下地球的那一面都看得见,而且顷刻可到。尽管古人把书说成“浩如烟海”,书的世界却是真正的“天涯若比邻”,这话绝不是唯心的比拟。世界再大也没有阻隔。佛说“三千大千世界”,可算大极了。书的境地呢,“现在界”还加上“过去界”,也带上“未来界”,实在是包罗万象,贯通三界。而我们却可以足不出户,在这里随意阅历,随时拜师求教。谁说读书人目光短浅,不通人情,不关心世事呢!这里可得到丰富的经历,可认识各时各地、多种多样的人。经常在书里串门儿,至少也可以脱去几分愚昧,多长几个心眼儿吧?我们看到道貌岸然、满口豪言壮语的大人先生,不必气馁胆怯,因为他们本人家里尽管没开放门户,没让人闯入,他们的亲友家我们总到过,认识他们虚架子后面的真嘴脸。。一次我乘汽车驰过巴黎塞纳河上宏伟的大桥,我看到了栖息在大桥底下那群捡垃圾为生、盖报纸取暖的穷苦人。不是我眼睛能拐弯儿,只是因为我曾到那个地带去串过门儿啊。

可惜我们“串门”时“隐”而犹存的“身”毕竟只是凡胎俗骨。我们没有如来佛的慧眼,把人世间几千年积累的智慧一览无余,只好时刻记住庄子“生也有涯而知也无涯”的名言。我们只是朝生暮死的虫豸,钻入书中世界,这边爬爬,那边停停,有时遇到心仪的人,听到惬意的话,或者对心上悬挂的问题偶有所得,就好比开了心窍,乐以忘言。这个“乐”和“追求享受”该不是一回事吧?

文中用到了哪些论证方法?

答案

参考答案:

比喻论证,引用论证,对比论证,举例论证。

单项选择题
问答题

请编制函数ReadDat(),实现从文件IN.DAT中读取1000个十进制整数到数组xx中;请编制函数Compute(),分别计算出XX中偶数的个数even,奇数的平均值ave1,偶数的平均值ave2以及方差totfc的值,最后调用函数WriteDat()把结果输出到OUT.DAT文件中。

计算方差的公式如下:

设N为偶数的个数,xx[i]为偶数,ave2为偶数的平均值。

原始数据文件存放的格式是:每行存放10个数,并用逗号隔开(每个数均大于0且小于等于2000)。

注意:部分源程序已给出。

请勿改动主函数main()和输出数据函数writeDat()的内容。

试题程序:

#include<stdio.h>

#include<stdlib.h>

#include<string.h>

#define MAX 1000

int xx[MAX],odd=0,even=0;

double ave1=0.0,ave2=0.0,totfe=0.0;

void WriteDat(void);

int ReadDat(void)

int i;

FILE*fp;

if((fp=fopen("IN.DAT","r"))==NULL)return 1;

/***编制函数ReadDat()的部分***/

/******************/

fclose(fp);

return 0;

void Compute(void)

int i,yy[MAX];

for(i=0;i<MAX;i++)

yy[i]=0;

for(i=0;i<MAX;i++)

if(xx[i]%2==0)//测试结点i是否是偶数)

yy[even++]=xx[i];//将结点i存入数组yy中

ave2+=xx[i];//将结点i累加存入ave2中

else

//如果结点i不是偶数

odd++;//累加变量odd记录奇数的个数

ave1+=xx[i];)//将xx[i]累加存入ave1中

if(odd==O)ave1=0:

else ave1/=odd;//计算奇数的平均数

if(even==0)ave2=0;

else ave2/=even;//计算偶数的平均数

for(i=0;i<even;i++)

totfc+=(yy[i]-ave2)*(yy[i]-ave2)/even;

void main()

int i;

for(i=0;i<MAX;i++)xx[i]=0;

if(ReadDat())

printf("数据文件IN.DAT不能打开!");

return:

Compute();

printf("EVEN=%dAVE1=%fAVER2=%fTOTFC=%f"f,even,ave1,ave2,totfc):

WriteDat();

void WriteDat(void)

FILE*fp:

int i;

fp=fopen("OUT.DAT","w"):

fprintf(fp,"%d%f%f%f",even,ave1,ave2,totfc);

fclose(fp);