在40mLCO、CH<sub>4</sub>、N<sub>2</

题目

在40mLCO、CH4、N2的混合气体中,加入过量的空气,经燃烧后,测得体积缩减了42mL,生成CO236mL,气体中CH4的体积分数为()。

  • A、10%
  • B、40%
  • C、50%
  • D、90%
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第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题:

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

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。

第3题:

有以下程序:int sub(int n) { return(n/10+n%10); }void main(){ int x,y; scanf("%d",&x); y=sub(sub(sub(x))); printf("%d\n",y);}若运行时输入:4321<回车>,程序的输出结果是。


正确答案:10
n/10是求n的去掉个位数上的数字之外的部分,而n%10是求个位数字,所以函数的功能是将去掉个位外的数和个位相加的结果返回。第一次432+1=433,43+3=46,4+6=10.

第4题:

在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程: Private Sub Command1 Click() a = 2 For i=1 To 3 Call funl(i,A)Next i x = i + 2 Print x;a End Sub Private Sub fun1(n,m) m=m + n * 2 n = n + m End Sub 程序运行后,单击命令按钮,则窗体上显示的内容是

A.1 5

B.4 5

C.8 4

D.3 4


正确答案:C
解析:在本题中,由于两个形参都没有指明用哪种方式进行参数传送,按VisualBasic规定,在默认的情况下,变量的数据传送按传址方式进行。当第一次调用fun1过程时,循环变量i将1传给形参n,变量a将2传给形参m。经计算后,变量m和n值分别为4和5。返回被调过程后,变量i和a的值分别为5和4。经过“Nexti”语句后,循环变量i加了步长得6,大于终值3,退出循环,所以变量x=6+2=8。值得注意的是:在函数的调用过程中,不要使用循环变量作为实参,否则会产生意想不到的结果。

第5题:

若有如下程序: 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。

第6题:

有如下事件过程: 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;然后返回主调过程,输出变化前后的值。

第7题:

有以下程序:

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。

第8题:

在通用声明中定义a,在窗体中添加一个命令按钮Command1,编写如下程序代码:

DimaAsInteger

Subtest()

a=a+1:b=b+1:c=c+1

Print"Sub:";a;",";b;",";c

EndSub

PrivateSubCommand1_Click()

a=2:b=3:c=4

Calltest

Calltest

EndSub

程序运行后,单击命令按钮,窗体中将显示( )

A.Sub:3,4,5Sub:4,5,6

B.Sub:2,3,4Sub:2,3,4

C.Sub:3,1,1Sub:4,1,1

D.Sub:1,1,1Sub:1,1,1


正确答案:C

第9题:

以下程序的运行结果是( ) #define MAX 10 int a[MAX],i; main() { printf("\n");sub1();sub3(A) ,sub2(),sub3(A) ; } sub2() { int a[MAX],i,max; max=5; for(i=0;i<max;i++)a[i]=i; } sub1() {for(i=0;i<MAX;i++)a[i]=i+i; } sub3(int a[]) { int i; for(i=0;i<MAX,i++)printf("%d",a[i]); printf("\n"); }

A.0 2 4 6 8 10 12 14 16 18 0 1 2 3 4

B.0 1 2 3 4 0 2 4 6 8 10 12 14 16 18

C.0 1 2 3 4 5 6 7 8 9 0 1 2 3 4

D.0 2 4 6 8 10 12 14 16 18 0 2 4 6 8 10 12 14 16 18


正确答案:D

第10题:

在窗体中添加一个命令按钮,编写如下程序: 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为表达式按值传送。
  [错解分析] 参数的传值方式和传址方式的区别。
  [考点链接] 函数调用和参数传递。

更多相关问题