问题 单项选择题

对下面这段话使用的修辞手法分析有误的一项是: 风是调皮的小男孩,抓把土抛到空中,趁机扯乱女孩子的长发;风是年老的画家,一味选灰色调,造出黄昏的画面;风是不高明的小偷,溜进屋时弄响了门,逃走时还在窗上留下了脚印。

A.这段话使用了拟人的修辞手法。

B.这段话运用了三个长度、句式风格相近的句子,这是排比的修辞手法。

C.这段话使用了明喻,分别把风比作“小男孩”、“年老的画家”、“小偷”。

D.这段话中几种修辞方法结合得不露痕迹,恰到好处。

答案

参考答案:C

解析: 这段话使用的不是明喻,而是暗喻。所谓的明喻,常用“甲像乙”的格式表达,本体、喻体、比喻词都出现。暗喻常用“甲是乙”的格式表达,直接把本体说成是喻体。

选择题
问答题

【说明】本程序将两个从小到大的有序链表合成一个新的从小到大的有序链表。链表的每一项由类Node描述,而链表由类List描述。类List的成员函数有以下几个。 ①createList():创建从小到大的有序链表。 ②multiplyList(List L1,List L2):将链表L1和链表L2合并。 ③print();打印链表。# include <iostream.h>class List;class Node { friend class List; public: Node(int data) { (1) ; } private: int data; Node *next; };class List { public: List( ) {list = NULL;} void multiplyList(List L1, List L2); void createList( ); void print( ); private: Node *list;};void List::createList( ){ Node *p, *u, *pm; int data; list = NULL; while (1) { cout<<"输入链表的一项: (小于零,结束链表)"<<end1; cin >> data; if(data<0)break;//小于零,结束输入 p = list; while (p != NULL && data > p->data) //查找插入点 { pre = p; p = p->next;} u= (2) : if(p==list) list = u; else pre->next = u; (3) :}void List::multiplyList (List L1, List L2){ Node *pL1, *pL2, *pL, *u; list = NULL; pL1 = L1.list; pL2 = L2.1ist; while (pL1 != NULL && pL2!= NULL) { if (pL1->data < pL2->data) { u = new Node (pL1->data); pL1 = pL1 ->next;} else { u = new Node (pL2->data)); pL2 = pL2->next; } if (list==NULL) list= (4) ; else { pL->next = u; pL =u; } } pL1 = (pL1 != NULL) pL1:pL2; while (pL1 != NULL) { u = (5) ; pL1 = pL1->next; if (list==NULL) list=pL=u; else { pL->next = u; pL = u; } }}void List::print( ){ Node *p; p = list; while (p != NULL) { cout << p->data << "\t";p = p->next; } cout << end1;}void main ( ){ List L1, L2, L; cout << "创建第一个链表\n"; L1.createList ( ); cout << "创建第二个链表\n"; L2.createList ( ); L1.print ( ); L2.print ( ); L.multiplyList (L1, L2); L.print ( );}