11、C语句Language规定,调用唯一参数时,实参变量和形参变量之间的数据传递是( )
( A ) 由实参传给形参,并由形参传回给实参 ( B ) 地此传递
( C ) 值传递,即单向传递 ( D ) 由用户指定传递办法
12、在C语句Language程式中( )。
( A ) 参数的定义没去外国疑问嵌套,但参数的调用不没去外国疑问嵌套
( B ) 参数的定义不没去外国疑问嵌套,但参数的调用没去外国疑问嵌套
( C ) 参数的定义和调用均不没去外国疑问嵌套
( D ) 参数的定义和调用均没去外国疑问嵌套
13、已知:int m=1, x=2, y=3, z=4; 则运行程式段:
m=(m<x)?m:x;
m=(m<y)?m:y;
m=(m<z)?m:z;
后m的值为( )。
( A ) 1 ( B ) 2 ( C ) 3 ( D ) 4
14、若k为int型变量,则下面的while循环语句的循环体共运行( )次。
k=2;
while(k!=0) printf(“%d”,k),
k- -;
printf(“/n”);
(A)无限多次 (B)0次 (C)1次 (D)2次
15、设已定义k1,k2为int类别变量,为了将整数10赋给k1,将整数20赋给k2,则对应:
scanf(“%d%d”,&k1,&k2); 的scanf参数调用词句的正确输入办法是( )
(其中:ㄩ 代表空格,↙代表回车)。
( A ) 1020↙ ( B ) 10, 20↙ ( C ) 10 ㄩ20↙ ( D ) 10 ,ㄩ20↙
16、下面程式:
#include "stdio.h"
void fun(int *x , int *y , int *z)
{
printf("%d,%d,%d/n", ++*x , + +*y, *(z+ +));
return;
}
int a=10, b=40, c=20;
main( )
{
fun(&a, &b, &c);
fun(&a, &b, &c);
}
的输出结果为( )
( A ) 11 , 42 , 31 ( B ) 11 , 41 , 20 ( C ) 11 , 21 , 40 ( D ) 11 , 41 , 21
12 , 22 , 41 12 , 42 , 20 11 , 21 , 41 12 , 42 , 22
17、下面程式的输出结果是( )。
main( )
{
int a[10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int *p=a;
printf("%d/n", *(p+2));
}
( A ) 3 ( B ) 4 ( C ) 1 ( D ) 2
18、用带参数的宏表达多项式:f(x)=1+x+3x2的正确的宏定义为( )
( A ) #define f(x)1+x+3*x*x ( B ) #define (1+x+3*x*x) f(x)
( C ) #define f1+x+3*x*x ( D ) #define f(x) 1+(x)+3*(x)*(x)
19、下面程式的输出结果是( )。
#define mark 0
main( )
{
#ifdef mark
printf("Hello!");
#else
printf("How do you do!");
#ednif
}
( A ) How do you do! Hello! ( B ) Hello!How do you do! ( C ) How do you do! ( D ) Hello!
20、以下程式:
struct tree
{
int x;
char *s;
}t;
fun(struct tree t )
{
t.x=10;
t.s="computer";
return(0);
}
main( )
{
t.x=1;
t.s="minicomputer";
fun(t);
printf("%d,%s/n",t.x,t.s);
}
的输出结果是( )。
( A ) 10, computer ( B ) 10, minicomputer
( C ) 1, computer ( D ) 1, minicomputer
参考正确回答:
11C
12B
13A
14D
15C
16B
17A
18D #define f(x) (1+(x)+3*(x)*(x)) 更好
19D
20D