英语文法_2

4. 不定词在句中的作用
I go in quietly so as not to disturb the host. (我悄悄地进去为的是不惊动主人。)
in order,so as+不定词通常用来表目的。其中so as to只可用在句中。
I am too hungry to go any farther. ( 我太饿了,走不动了)
too...to...表示太...而不能...,不定词用肯定形式表示否定意义。
I want to find something to eat.
不定词一般在名次或代名词的后面作修饰语。
I consider the host (to be)too lazy. (主人实在是太懒。)
believe,consider等动词后的不定词主要是to be,to be常可省略。
I feel it our duty to helo others. (我认为帮助别人是我们的责任。)
用形容受词it代替不定词放在述语动词的后面,真正受词的不定词放在句尾。
To forgive is divine. (原谅别人是神圣的。)
不定词在句中可以充当主词,述语动词一般要用单数形式。

5. 被动语态的特殊形式
All the criminals got shot in the crossfire. (在交火中罪犯全部被击中。)
主词+get+过去分词在多数情况下不接by+受词。
Serve them right!
报应!
Your vice has to be paid for. (你们的罪行是要付出代价的。)
带有不定词的被动结构。
The man hasn't had his fingernails cut for ten years. (这个男人十年没有剪指甲了。)
have无被动语态,但可用于“主词+have(or get)+受词+过去分词”结构,表示受词被...,多用于叫人或雇人作某事。
This has never been heard of before. (以前从未听说过这种事。)
动词+介系词或动词+副词用于被动结构时,动词之后的介系词或副词不过拆开或丢掉。
Your coffee smells great.
联系动词如fellprovesmellsoundtaste等,主词指事物时,用主动形式表被动意义。
The door blew shut. (门是被吹得关上的。)
可用于主词+动词+主词补语(形容词或过去分词)结构的不及物动词如blew,wear,用主动的形式表被动意义。
The doors won't open. (这门打不开了。)
不及物动词如lock,move,open,shut等,与can't,won't连用而主词又指物时,用主动形式表被动意义。
I see,it's only a piece of cake. (明白了,小意思而已。)

6. 被动语态的使用
It's no fun standing here. (站在这儿真没意思。)
Suggestions will be heartily appreciated. (诚恳欢迎提出建议。)
为使语气委婉,有意不说出动作appreciate的发出者时用被动语态。
I was born in 1981.
不知道或不必指明动作bear的发出者时用被动语态。
what for? (干什么?)
The origin of the universe will never be explained. (宇宙的起源大概永远不会有答案。)
不知道或不必指明动作explain的发出者时用被动语态。
The plan was canceled. (这个计划取消了。)
要强调或突出动作cancel的承受者时用被动语态。
The movie is about a king who loved his people and was loved by them. (是关于国王爱人民,也为人民所爱的。)
为了修辞的需要,避免变换主词或过长的主词时用被动语态。
No,no big fun. (没意思。)



 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Here is a possible definition of the C language grammar in English: ``` program -> translation-unit translation-unit -> external-declaration | translation-unit external-declaration external-declaration -> function-definition | declaration function-definition -> declaration-specifiers declarator declaration-list? compound-statement declaration-list -> declaration | declaration-list declaration declaration -> declaration-specifiers init-declarator-list? ; declaration-specifiers -> storage-class-specifier | type-specifier | type-qualifier | function-specifier | alignment-specifier storage-class-specifier -> typedef | extern | static | _Thread_local | auto | register type-specifier -> void | char | short | int | long | float | double | signed | unsigned | struct-or-union-specifier | enum-specifier | typedef-name struct-or-union-specifier -> struct-or-union identifier? { struct-declaration-list } | struct-or-union identifier struct-or-union -> struct | union struct-declaration-list -> struct-declaration | struct-declaration-list struct-declaration struct-declaration -> specifier-qualifier-list struct-declarator-list? ; specifier-qualifier-list -> type-specifier | type-qualifier | specifier-qualifier-list type-specifier | specifier-qualifier-list type-qualifier struct-declarator-list -> struct-declarator | struct-declarator-list , struct-declarator struct-declarator -> declarator? : constant-expression | declarator enum-specifier -> enum identifier? { enumerator-list } | enum identifier? { enumerator-list , } enumerator-list -> enumerator | enumerator-list , enumerator enumerator -> identifier | identifier = constant-expression type-qualifier -> const | restrict | volatile | _Atomic function-specifier -> inline | _Noreturn alignment-specifier -> _Alignas ( type-name | constant-expression ) init-declarator-list -> init-declarator | init-declarator-list , init-declarator init-declarator -> declarator | declarator = initializer initializer -> assignment-expression | { initializer-list } | { initializer-list , } initializer-list -> initializer | initializer-list , initializer declarator -> pointer? direct-declarator direct-declarator -> identifier | ( declarator ) | direct-declarator [ * ] | direct-declarator [ static type-qualifier-list? assignment-expression ] | direct-declarator [ type-qualifier-list static assignment-expression ] | direct-declarator [ type-qualifier-list? * ] | direct-declarator ( parameter-type-list? ) | direct-declarator ( identifier-list? ) pointer -> * type-qualifier-list? pointer? | * type-qualifier-list? type-qualifier-list -> type-qualifier | type-qualifier-list type-qualifier parameter-type-list -> parameter-list | parameter-list , ... parameter-list -> parameter-declaration | parameter-list , parameter-declaration parameter-declaration -> declaration-specifiers declarator | declaration-specifiers abstract-declarator? | declaration-specifiers identifier-list -> identifier | identifier-list , identifier type-name -> specifier-qualifier-list abstract-declarator? abstract-declarator -> pointer | direct-abstract-declarator | pointer direct-abstract-declarator direct-abstract-declarator -> ( abstract-declarator )? [ * ] | ( direct-abstract-declarator )? [ static type-qualifier-list? assignment-expression ] | ( direct-abstract-declarator )? [ type-qualifier-list static assignment-expression ] | ( direct-abstract-declarator )? [ type-qualifier-list? * ] | ( abstract-declarator )? ( parameter-type-list? ) | ( direct-abstract-declarator )? ( identifier-list? ) statement -> labeled-statement | compound-statement | expression-statement | selection-statement | iteration-statement | jump-statement labeled-statement -> identifier : statement | case constant-expression : statement | default : statement compound-statement -> { declaration-list? statement-list? } statement-list -> statement | statement-list statement expression-statement -> expression? ; selection-statement -> if ( expression ) statement | if ( expression ) statement else statement | switch ( expression ) statement iteration-statement -> while ( expression ) statement | do statement while ( expression ) ; | for ( expression? ; expression? ; expression? ) statement | for ( declaration expression? ; expression? ) statement jump-statement -> goto identifier ; | continue ; | break ; | return expression? ; expression -> assignment-expression | expression , assignment-expression assignment-expression -> conditional-expression | unary-expression assignment-operator assignment-expression assignment-operator -> = | *= | /= | %= | += | -= | <<= | >>= | &= | ^= | |= conditional-expression -> logical-or-expression | logical-or-expression ? expression : conditional-expression logical-or-expression -> logical-and-expression | logical-or-expression || logical-and-expression logical-and-expression -> inclusive-or-expression | logical-and-expression && inclusive-or-expression inclusive-or-expression -> exclusive-or-expression | inclusive-or-expression | exclusive-or-expression exclusive-or-expression -> and-expression | exclusive-or-expression ^ and-expression and-expression -> equality-expression | and-expression & equality-expression equality-expression -> relational-expression | equality-expression == relational-expression | equality-expression != relational-expression relational-expression -> shift-expression | relational-expression < shift-expression | relational-expression > shift-expression | relational-expression <= shift-expression | relational-expression >= shift-expression shift-expression -> additive-expression | shift-expression << additive-expression | shift-expression >> additive-expression additive-expression -> multiplicative-expression | additive-expression + multiplicative-expression | additive-expression - multiplicative-expression multiplicative-expression -> cast-expression | multiplicative-expression * cast-expression | multiplicative-expression / cast-expression | multiplicative-expression % cast-expression cast-expression -> unary-expression | ( type-name ) cast-expression unary-expression -> postfix-expression | ++ unary-expression | -- unary-expression | unary-operator cast-expression | sizeof unary-expression | sizeof ( type-name ) postfix-expression -> primary-expression | postfix-expression [ expression ] | postfix-expression ( argument-expression-list? ) | postfix-expression . identifier | postfix-expression -> identifier | postfix-expression ++ | postfix-expression -- primary-expression -> identifier | constant | string-literal | ( expression ) | generic-selection generic-selection -> _Generic ( assignment-expression , generic-assoc-list ) generic-assoc-list -> generic-association | generic-assoc-list , generic-association generic-association -> type-name : assignment-expression | default : assignment-expression constant -> integer-constant | floating-constant | enumeration-constant | character-constant integer-constant -> decimal-constant | octal-constant | hexadecimal-constant decimal-constant -> nonzero-digit decimal-constant? | 0 octal-constant -> 0 octal-constant? octal-digit hexadecimal-constant -> 0x hexadecimal-digit+ | 0X hexadecimal-digit+ floating-constant -> fractional-constant exponent-part? | digit-sequence exponent-part exponent-part -> e sign? digit-sequence | E sign? digit-sequence fractional-constant -> digit-sequence . digit-sequence? | . digit-sequence sign -> + | - digit-sequence -> digit | digit-sequence digit octal-digit -> 0..7 nonzero-digit -> 1..9 hexadecimal-digit -> digit | a..f | A..F character-constant -> ' c-char-sequence ' c-char-sequence -> c-char | c-char-sequence c-char c-char -> any character except ' and \ | escape-sequence escape-sequence -> \ ' | \ " | \ ? | \ \ | \ a | \ b | \ f | \ n | \ r | \ t | \ v | \ octal-digit | \ octal-digit octal-digit | \ octal-digit octal-digit octal-digit | \ x hexadecimal-digit+ | \ u hexadecimal-digit hexadecimal-digit hexadecimal-digit hexadecimal-digit? | \ U hexadecimal-digit hexadecimal-digit hexadecimal-digit hexadecimal-digit hexadecimal-digit hexadecimal-digit hexadecimal-digit hexadecimal-digit? identifier -> nondigit | identifier nondigit | identifier digit nondigit -> _ | a..z | A..Z digit -> 0..9 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值