问题 单项选择题

表弟考上了名牌大学,我请他们全家吃饭表示祝贺。我问他:“考上大学了,这个暑假最轻松了,你打算怎么过”他回答:“我打算利用这两个月的时间把第一年的学费赚回来。”他的父母马上表示反对,对他说:“家里又不缺钱,你的学费我们早准备好了,不用你操心!”表弟却非常自信地说:“你们别担心,我已经有好主意了。”表弟第二天就把自己高考前复习用的各科资料整理出了一套,然后在网站上发了一个广告:“名牌大学学生的高考复习资料,自己编写,20元一套,有意者请与我联系……”没想到,短短一个月,他就卖了几百套,果然自己赚到了学费。这孩子,说到做到,我还真挺佩服他的。

作者认为表弟这样的做法:()

A.使人愤怒

B.让人不安

C.使人感动

D.让人欣赏

答案

参考答案:D

问答题

【程序说明】 下列文法可用来描述化学分子式的书写规则(例如,A12(C03)、Cu(OH)2): λ→β|βλ β→δ|δn δ→ξ|ξθλ 其中,λ是一个分子式;δ或是一个元素,或是一个带括号的(子)分子式,元素或是一个大写字母(记为ξ),或是一个大写字母和一个小写字母(记为ξθ);β或是一个δ,或是在δ之后接上一个整数n,δn表示β有n个δ的元素或(子)分子式。一个完整的分子式由若干个β组成。 当然一个正确的分子式除符合上述文法规则外,还应满足分子式本身的语义要求。下面的程序输入分子式,按上述文法分析分子式,并计算出该分子式的分子量。例如,元素H的原子量是1,元素O的原子量是16。输入分子式H2O,程序计算出它的分子量为重18(1×2+16)。程序中各元素的名及它的原子量从文件atom.dat中读入。 【程序】 #include <stdio.h> #include <string.h> #define MAXN 300 #define CMLEN 30 struct elem{char name[3];/*元素名*/double v; /*原子量*/ }nTbl[MAXN]; char cmStr[CMLEN], *pos; int c; FILE *fp; double factor(); double atom() /*处理文法符号δ*/ {char w[3]; int i; double num;while((c = *pos++)=="|| c==’\t’); /* 略过空白字符 */if(c==’\n’) return 0.0;if(c>=’A’ && c<=’Z’){/* 将元素名存入W*/ w[i=0]=c; c=*pos++; if(c>=’a’ && c<=’z’) w[++i]=c; else pos--; w[++i]=’\0’; for(i=0; nTbl[i].v>0.0; i++) if(strcmp(w, nTbl[i].name)==0) return nTbl[i].v; printf("\n 元素表中没有所输入的元素: \t%s\n",w); return -1.0;}else if(c==’(’){ if((num = (1) <0.0)return -1.0; /* 包括可能为空的情况 */ if(*pos++ !=’)’){ printf(" 分子式中括号不匹配!\n"); return -1.0; } return num; } printf("分子式中存在非法字符: \t%c\n",c); return -1.0; } double mAtom() /* 处理文法符号β*/{ double num; int n=1; if((num = (2) )<0.0) return -1.0; c = *pos++; if(c>=’0’&& c <=’9’){ n=0; while(c>=’0’ && c<=’9’){ n= (3) ; c=*pos++; } } pos--; return num *n;}double factor() /* 处理文法符号λ */{ double num=0.0, d; if((num=mAtom())<0.0) return -1.0; while(*pos>=’A’ && *pos<= ’Z’ || *pos==’(’){ if((d= (4) <0.0) return -1.0; } return num;}void main(){ char fname[]="atom.dat"; /*元素名及其原子量文件*/ int i; double num; if((fp=fopen(fname, "r"))==NULL){/* 以读方式打开正文文件*/ printf("Can not open %s file.\n", fname); return;/* 程序非正常结束 */ } i=0; while(i<MAXN && fscanf(fp, "%s%lf", nTbl[i].name, &nTbl[i].v) == 2)i++; fclose(fp); nTbl[i].v=-1.0; while(I){ /* 输入分子式和计算分子量循环,直至输入空行结束*/ printf ("\n 输入分子式!(空行结束)\n"); gets(cmStr); pos=cmStr; if(cmStr[0]==’\0’)break; if((num=factor())>0.0) if (*pos != ’\0’)printf("分子式不完整!\n"); else printf(" 分子式的分子量为 %f\n", num); }}

阅读理解与欣赏

阅读下面一篇文章。完成下面题目。(20分)

旧  书

孙道荣

①她微微佝偻着腰,一个一个办公室敲门。大家都认识她,收旧报纸的老太太。每个月的最后一个周末,她都会准时出现在办公楼里,单位规定,这天,她可以上门收购旧报纸。

②因为工作性质的原因,我们单位几乎每个人,都订了好几份报纸杂志,平时看完了,就码在办公室一角,等着她上门来收购。卖一次旧报纸,往往可以挣几十元,女同事拿去买零食,大家共享。

③她五十来岁,头发已经花白了,讲一口浓重的郊区方言。每次来,她都会拎着一个布袋子,里面塞满各种各样的布条,看得出,这些布条都是用旧衣裳撕出来的,她用来捆扎旧报纸。另一只手上,拎着一杆小秤。

④“卖报纸!”有人站在楼道里喊一嗓子,她就会立即从某个办公室跑出来,瞅一眼,一脸乐呵呵地应答着。她几乎能够认出这座楼里的每一个人,甚至谁多长时间,需要处理一次旧报纸,她都了如指掌。

⑤她躬着腰,将堆在办公室角落里的旧报纸,一摞摞搬出,理齐,码好,然后,用布条捆扎起来,一捆一捆地过秤。与我们经常看到的商贩那高高翘起的秤杆不同,过秤的时候,她的秤杆,总是往下垂,秤砣几乎要从秤杆上滑落下来,这样,报纸可以称得重一点点。没人在意她的秤,但她一如既往,要把秤让给人。称一捆,她报个数,让你记下来,再称一捆,再报个数。一捆一捆称完了,她会让你加一加,有多重?而她自己,似乎从不记数,你告诉她多重,她就按这个重量,算账给你。有时候,账里面有零头,大家就说算了,她却总是很认真地从包里掏出一大把硬币,一分不少地付清。

⑥她的诚实,使办公楼的人,都对她充满好感。这也是她能够这么多年,可以上门收购我们旧报纸的原因吧。

⑦也有的时候,她会显得很小气。比如每次整理旧报纸时,看到夹在报纸里的杂志,或者书,她都会将它们剔出来,单独捆在一起,过秤。她说,书和杂志比报纸便宜一点。有一次,我搬新办公室,整理物品时,我将一些旧书,扔进了旧报纸堆里。正赶上她来收购旧报纸。她将那些书一本本拣了出来,问我,这些书真的不要了?我点点头。她将书单独捆扎好。我笑着对她说,其实,书和旧报纸的价格,一斤也就相差毛把钱,没必要分得这么细。她笑笑,没有回答。

⑧那天,我们去郊区的一个山村采访,村支书领着我们参观了他们新建的村图书馆。图书馆是一间民房改建的,书架上,整齐地码着一排排书。忽然,看见有本书很眼熟,打开,扉页上写着我的名字,想起来了,是我上次搬办公室时处理掉的,再一找,另外几本也在。我好奇地问村支书,这些书从哪来的?村支书说,是村里的林老太太捐赠的。她经常上城里收旧报纸,如果收到旧书,她就会留下来,捐给村里或者学校。这几年,她已经捐了好几百本了。

⑨忽然明白了,为什么每次收旧报纸的老太太,都会将夹在报纸里的书刊拣出来了。摩挲着那些旧书,我感到了一丝羞愧,也嗅到了旧书里散发出来的独有的香气。

(选自《微型小说选刊》 2011年第三期)

小题1:文章一开始,作者写办公室里的女同事用卖报纸的钱分享零食,是否是多余的笔墨,为什么?(4分)

小题2:本文主要刻画了一个卖旧报刊的老太太形象,但题目却是“旧书”,请结合全文,说说你对作者起题“旧书”的理解。(6分)

小题3:“我笑着对她说,其实,书和旧报纸的价格,一斤也就相差毛把钱,没必要分得这么细。她笑笑,没有回答”,“我”和“老太太”都在笑,这两个“笑”中蕴含的感情一样吗,为什么?(4分)

小题4:文章的结尾说“摩挲着那些旧书,我感到了一丝羞愧,也嗅到了旧书里散发出来的独有的香气”,请联系全文,简要分析这一结尾的表达作用。(6分)