参考答案和解析
正确答案: N1的作用:
(1)氧气、煤浆管线吹扫;
(2)氧阀密封隔离;
(3)气密性试验;
(4)气化炉取压管保护。
N2的作用:
(1)系统置换;
(2)调节压力。
N3的作用:
(1)系统置换;
(2)隔绝空气;
(3)作为载气;
(4)冲堵;
(5)消防;
(6)动力气。
更多“简述N<sub>1</sub>、N<sub>2</sub>、N<”相关问题
  • 第1题:

    运行以下程序后,输出结果为_____________。 Private Sub Command1_Click() a=1:b=2:c=3 Call test(a,b+3,(c)) Print "main:";a;b;c End Sub Private Function test(p,m,n) p=p+1:m=m+1:n=n+1 Print "sub:";p;m;n End Function

    :A. sub:2 6 4 main:1 2 3

    B. sub:2 6 4 main:2 2 3

    C. sub:2 6 4 main:2 6 4

    D. sub:2 6 4 main:1 6 4


    参考答案:B

  • 第2题:

    有如下事件过程: Private Sub Command1_Click( ) Dim m AS Integer,n AS Integer m=2:n=1 Print "m=";m;"n=";n Call TOD(m,n) Print "m=";m;"n=";n End Sub Sub TOD(x,y) x=x^2 y=y^3 End Sub 程序运行后,输出的结果为

    A.m=2,n=1 m=1,n=2

    B.m=2,n=1 m=4,n=1

    C.m=1,n=2 m=1,n=4

    D.m=1,n=2 m=2,n=4


    正确答案:B
    解析:本题考查的是函数调用和输出语句。定义了一个函数,函数的功能是:将实参传给形参,按址传送,将改变实参的数值,语句x=x^2的作用是将x的平方值赋给x,为4;语句y=y^3的作用是将y的三次方值传给y,为1;然后返回主调过程,输出变化前后的值。

  • 第3题:

    有以下程序:

    int sub(int n) { return(n/10+n%10); }

    main()

    { int x, y;

    scanf("% d", &x);

    y=sub(sub(sub(x)));

    printf("% d\n", y);

    }

    若运行时输入:1234<回车>,程序的输出结果是【 】。


    正确答案:10
    10 解析:y=sub(sub(sub(x)))=sub(sub(127))=sub(19)=10。

  • 第4题:

    若有如下程序: int sub(int m) { if(m==1||m==0) return 2; else return(sub(m-1)*sub(m-2));} main() { int n; scanf("%d",&n); printf("%d",sub(n)); } 如果从键盘输入4<回车>,则程序运行后的输出结果是( )。

    A.8

    B.16

    C.24

    D.32


    正确答案:D
    解析:本题的sub()函数是一个递归函数,当参数m为1或0时返回2,否则返回sub(m-1)*sub(m-2)。所以sub(4)递推下来就是sub(4)=sub(3)*sub(2)=sub(2)*sub(1)*sub(1)*sub(0)=sub(1)*sub(0)*2*2*2=25(上标)=32。所以正确答案是D。

  • 第5题:

    下列程序的运行结果是______。

    Sub abcd(ByValn As Integer)

    n=n+5

    End Sub

    Private Sub Form_Click()

    nx%=3

    Callabcd(nx%)

    Printnx%

    End Sub


    正确答案:3
    3

  • 第6题:

    有如下一个Sub过程: Sub mlt(ParamArray numbers()) n=1 For Each x In numbers n=n*x Next x Print n End Sub 在一个事件过程中如下调用该Sub过程: Private Sub Command1_Click() Dim a As Integer Dim b As Integer Dim c As Integer Dim d As Integer a=1 b=2 c=3 d=4 mlt a,b,c,d End Sub 该程序的运行结果为( )。

    A.12

    B.24

    C.36

    D.48


    正确答案:B

  • 第7题:

    有如下事件过程: Private Sub Commaild1_Click( ) Dim i As Integer For i =1 To 2 DC Next i End Sub Sub DC( ) Dim x As Integer,m As String Static y,n x=x + 1 y=y + 1 m=m&"*":n=n &"#" Print x,y,m,n End Sub 程序运行后,输出的结果是

    A.1 1 * # 1 1 * #

    B.1 1 * # 1 2 * #

    C.1 1 * # 1 1 * ##

    D.1 1 * # 1 2 * ##


    正确答案:D
    解析:本题考查函数调用和输出格式的语句。当I=1时,调用函数过程DC,由于y,n为静态变量值保存,执行x=x+1;y=y+1后x=1,y=1;执行m=m&"*":n=n&"#"后,m="*",n="#";当I=2时同上,只是y=2,n="##"。

  • 第8题:

    在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程: Private Sub sub1(p,m,n) p=p + 1 : m = m + 1 : n =n + 1 Print p;m;n End Sub Private Sub Command1_Click() x=6 : y=4 : z=2 Call sub1(x,y+1,(z)) Print x;y;z End Sub 程序运行后,单击命令按钮,则窗体上第二行显示的内容是

    A.7 6 3

    B.7 4 2

    C.6 4 2

    D.4 6 3


    正确答案:B
    解析:本题考察的是函数过程的调用和参数传送。当发生了Command1的单击事件时,调用函数过程sub1,虽然sub1函数过程在定义时3个参数都被定义成传址方式传送,但在调用时只有第1个参数是变量,按引用传送,其他两个参数均按传值传送。参数传送后,进入subl函数过程执行,p、m和n均加1分别得到的值为7、6和3。函数过程调用返回后,只有x的值发生了变化,变为7,y和z的值仍为4和2。

  • 第9题:

    以下能够正确计算n!的程序是______。

    A.Private Sub Commeadl_Click() n=5: x=1 Do x=x*i i=i+1 Loop While i<n Print x End Sub

    B.Private Sub Command1_Click() n=5: x=1: i=1 Do x=x*i i=i+1 Loop While i<n Print x End Sub

    C.Private Sub Command1_Click() n=5: x=1: i=1 Do x=x*i i=i+1 Loop Whilei<=n Print x End Sub

    D.Private Sub Commsndl_Click() n=5: x=1: i=1 Do x=x*i i=i+1 Loop While i>n Print x End Sub


    正确答案:C
    解析:选项A中变量i没有赋初值操作,其一直保持0值,所以始终为0;选项B中循环条件“i>n”错误,计算一次后就退出循环,导致计算结果不正确;选项D的计算过程中,第1次计算时“1>4”的条件不处理,退出Do循环,其结果为1;选项C的计算结果为5!。

  • 第10题:

    以下能够正确计算n!的程序是( )。

    A.Private Sub Commandl_C1ick()

    B.hiVate Sub Commandl_C1ick() n=5:x=1 n=5:x=1:i=1 DO DO X=x*1 X=X*1 i=i+1 i=i+1 Loop while i<n Loop While<n Print x Ptinte x End Sub End Sub

    C.Private Sub Commandl_Click ()

    D.Pdvate Sub Commandl C1ick() n=5:X=1:i=1 n=5=:x=1:i=1 DO DO X=X*1 X=X*1 i=i+1 i=i+1 Loop While i>n Print x Print x End Sub End Sub


    正确答案:C
    解析:本题考查DoWhile语句的用法。首先我们知道n!=1×2×3×……×(n-1)×n,由于是累乘,因此x和i的初值都必须为l;其次就是循环执行条件的确定,由于使用的是While型循环,表示在满足条件时执行循环体中的代码,这里满足执行循环的条件应该是i=n。选项A和B的循环条件都是in,少了i=n的一次循环,实际上只执行了n-1次;而选项D则从i>n时才开始执行,不合题意;同时,选项B没有指定i的初值,系统会默认i;0,这也不合题意。本题正确答案为选项C。

  • 第11题:

    在窗体中添加一个命令按钮,编写如下程序: Private Sub Sub1(p,m,n) p=p+1:m=m+1:n=n+1 Print "sub1:";p;m;n End Sub Private Sub Command1_Click() a1=1:b=2:c1=3 Call Sub1(a,b1+3,c1) Print"Main:";a1;b1;c1 End Sub 程序运行后,输出结果为

    A.Sub: 2 6 4 Main: 2 6 4

    B.Sub: 2 6 4 Main: 2 6 4

    C.Sub: 2 6 4 Main: 1 2 3

    D.Sub: 2 6 4 Main: 2 2 3


    正确答案:D
    解析:这是在实现子过程被调用时参数虚实结合的问题。a1为变量按址传送,b1+3和c1为表达式按值传送。

  • 第12题:

    单选题
    给定下列FORTRAN子程序如下:   SUBROUTINE SUB(K,A)   A=SQRT(K*K+1.0)   END   下列调用语句中正确的是()
    A

     CALL SUB(N,N)

    B

     CALL SUB(X,X)

    C

     CALL SUB(N,X*X)

    D

     CALL SUB(11,X)


    正确答案: B
    解析: 暂无解析

  • 第13题:

    下列过程说明合法的是( )

    A、Sub S1(ByVal n!())

    B、Sub S1(n!) as Integer

    C、 Function S1%(S1%)

    D、 Function S1(ByVal n!)


    参考答案D

  • 第14题:

    以下程序的输出结果是【 】。

    main()

    { int x=0;

    sub(&x,8,1);

    printf(“%d\n”,x);

    }

    sub(int *a,int n,int k)

    { if(k<=n)sub(a,n/2,2*k);

    *a+=k;

    }


    正确答案:7
    7 解析:在主函数中定义了一个变量x并赋初值0,然后执行函数调用语句,该语句的执行过程为sub(&x,8,1)调用sub(&a,4,2),sub(&a,4,2)调用sub(&a,2,4),sub(&a,2, 4)中由于24,所以if后面括号里的判断为假,递归结束,执行其后的*a+=k;语句此时 x=x+k=0+4=4,回退到上一层调用函数sub(&x,4,2)中,执行后面的语句,x=x+k= 4+2=6,再回推到最上一层调用函数sub(&x,8,1)执行后面的语句,x=x+k=6+1=7,所以最后输出7。

  • 第15题:

    有如下程序: Private Sub Commandl_Click( ) Dim i As Integer For i=1 To 2 DS Next i End Sub Sub DS( ) Dim x As Integer,m As String Static y,n X=X + 1 y=y + 1 m=m &"*”:n=n&"#" Print x,y,m,n End Sub 程序运行后,输出的结果是

    A.1 1 * #

    B.1 1 * #

    C.1 1 * # 1 1 * # 1 2 * #

    D.1 1 * # 1 1 * ## 1 2 * ##


    正确答案:D
    解析:当i=1时,调用函数过程DS,由于y,n为静态变量值保存,执行x=x+1;y=y+1后x=1,y=1执行m=m&"*":n=n&"#"后,m="*",n="#";当I=2时同上,只是y=2,n="##"。输出结果如选项D)所示。

  • 第16题:

    以下能够正确计算n!的程序是

    A.Private Sub Command1 Click() n=5:x=1 Do x=x * I I=I + 1 Loop While I < n Print x End Sub

    B.Private Sub Command1_Click() n=5:X=1:I=1 Do X=X*I I=I + 1 Loop While I <n Print x End Sub

    C.Private Sub Command1_Click() n=5:X=1:I=1 Do X=X * I I=I + 1 Loop While I<=n Print X End Sub

    D.Private Sub Command1_Click() n=5:X=1:I=1 Do x=x * I I=I + 1 Loop While I>n Print X End Sub


    正确答案:C
    解析:n!=1×2×3×…×(n-1)×n,由于是累乘,因此x和i的初值都必须为1;其次就是循环执行条件的确定,由于使用的是While型循环,表示在满足条件时执行循环体中的代码,这里满足执行循环的条件应该是i=n。

  • 第17题:

    在窗体中添加一个命令按钮,编写如下程序: Private Sub Subl(p,m,n) p=p+1:m=m+1:n=n+1 Print"subl:";p;m;n End Sub Private Sub Command1_Click() al=1:b=2:c1=3 Call Subl(a,b1+3,c1) Print"Main:";a1;b1;c1 End Sub 程序运行后,输出结果为

    A.Sub:2 6 4 Main:2 6 4

    B.Sub:2 6 4 Main:2 6 4

    C.Sub:2 6 4 Main:1 2 3

    D.Sub:2 6 4 Main:2 2 3


    正确答案:D
    解析:考查考生对参数传递的掌握情况。
      [解题要点] 这是在实现子过程被调用时参数虚实结合的问题。a1为变量按址传送,b1+3和c1为表达式按值传送。
      [错解分析] 参数的传值方式和传址方式的区别。
      [考点链接] 函数调用和参数传递。

  • 第18题:

    以下程序的输出结果是( )。 include main()fint x=0; sub(&x,16,2); printf("%d\n",

    以下程序的输出结果是( )。

    include<stdio.h>

    main()

    fint x=0;

    sub(&x,16,2);

    printf("%d\n",x);

    }

    sub(int*a,int n,int k)

    {if(k<=n) sub(a,n/2,2*k);

    *a+=k;

    }


    正确答案:14
    14 解析:本题考查递归函数的调用。在主函数中调用sub(&x,16,2)函数,此时n=16,k=2,if语句的控制的条件k=n成立,所以执行下面的语句,调用sub(x,8,4),此时n=8,k=4,if语句的控制条件k=n成立,所以执行下面的语句,调用sub(x,4,8),此时n=4,k=8,if语句控制的条件k=n不成立,因此,最后得x=2+4+8=14。

  • 第19题:

    在窗体中添加一个命令按钮,编写如下程序: Private Sub Test(p,m,n) p=p+1:m=m+1:n=n+1 Print "Sub: ";p;m;n End Sub Private Sub Command1.Click() a1=1:b=2:c1=3 Call Test((a,b1+3,(c1)) Print "Main:";a1;b1;c1 End Sub 程序运行后,输出结果为

    A.Sub: 2 6 4 Main: 2 6 4

    B.Sub: 2 6 4 Main: 2 6 4

    C.Sub: 2 6 4 Main: 1 2 3

    D.Sub: 2 6 4 Main: 2 2 3


    正确答案:D
    解析:这是在实现子过程被调用时参数虚实结合的问题。a1为变量按址传送,b1+3和(c1)为表达式按值传送。

  • 第20题:

    在窗体中添加一个命令按钮,编写如下程序:

    Private Sub Sub1(p,m,n)

    p=p+1:m=m+1:n=n+1

    Print "sub1:";p;m;n

    End Sub

    Private Sub Command1_Click()

    a1=1:b=2:c1=3

    Call Sub1(a,b1+3,c1)

    Print"Main:";a1;b1;c1

    End Sub

    程序运行后,输出结果为

    A.Sub: 2 6 4 Main: 2 6 4

    B.Sub: 2 6 4 Main: 2 6 4

    C.Sub: 2 6 4 Main: 1 2 3

    D.Sub: 2 6 4 Main: 2 2 3


    正确答案:D
    解析:考查考生对参数传递的掌握情况。这是在实现子过程被调用时参数虚实结合的问题。a1为变量按址传送,b1+3和c1为表达式按值传送。参数的传值方式和传址方式的区别。

  • 第21题:

    若要在子过程Proc1调用后返回两个变量的结果,下列过程定义语句中有效的是( )。

    A.Sub Proc1(n,m)

    B.Sub Proc1(ByVal n,m)

    C.Sub Proc1(n,ByVal m)

    D.Sub Proc1(ByVal n,ByVal m)


    正确答案:A
    解析: 本题考查VBA中参数传递的知识。在VBA的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用ByVal声明,说明此参数为传值调用,此时形参的变化不会返回到实参;若用ByRef声明,说明此参数为传址调用,此时形参的变化将会返回到实参;没有说明传递类型,则默认为传址传递。由于本题要求可以返回两个变量的结果,所以应该使用传址调用,不能出现传值调用,也就是不能出现使用ByVal声明的形参。

  • 第22题:

    在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim x As Integer,y As Integer x = 41: y = 54 Call sub1(x,y) x = x + 1 Print x; y End Sub Private Sub sub1(n As Integer, ByVal m As Integer) n=n Mod 10 m=m\10 End Sub 程序运行后,单击命令按钮,则窗体上显示的内容是

    A.41 54

    B.2 54

    C.1 3

    D.42 3


    正确答案:B
    解析:在Function((参数表列))过程中,“参数表列”指明了调用时传送给过程的参数类型和个数,每个参数的格式为:[ByVal][ByRef]变量名[()][As数据类型]其中系统默认为ByRef,它指明参数传送是以传地址进行的,实际参数变量的值会由于过程中对形参的操作而改变。而ByVal则不同,参数传送,是以传值传送的,实际参数变量的值不再由于过程中对形参的操作而改变,本题目中过程sub1的参数n是传地址引用,而参数m是传值引用,因此x的值改变,x=21\10+1=2;而y值不改变,仍为54。答案为选项B。

  • 第23题:

    过程通过参数传递将一个参数传递给子过程A,并返回一个结果,下列子过程定义中正确的是()

    • A、Sub A(m+1,n+2)
    • B、Sub A(ByValm!,ByValn!)
    • C、Sub A(ByValm!,n+2)
    • D、Sub A(ByValm!,n!)

    正确答案:D

  • 第24题:

    单选题
    给定子例行程序如下  SUBROUTINE SUB(K,A)  B=K+2  A=A+B END 下列调用语句中正确的是()
    A

    CALL SUB(N,N)

    B

    CALL SUB(X,X)

    C

    CALL SUB(N+2,X)

    D

    CALL SUB(N,X+3)


    正确答案: B
    解析: 暂无解析