麻烦各位达人帮忙做几条题

以下程序片段执行后的结果是 ( )。
int x=2,y=-1,z=2;
if(x<y)
if(y<0) z=0;
else z+=1;
printf("%d\n",z);
(A)3
(B)2
(C)1
(D)0
设有下列数据定义语句,则数组元素 x [ i ]的值是( )。
int i = 2, x [ 4 ] = { 1 , 2 , 3 };
(A)0
(B)1
(C)2
(D)3
以下能对一维数组a进行正确初始化的语句是 ( )。
(A)int a[10]=(0,1,2,3,4);
(B)int a[10]={ };
(C)int a[ ]={0};
(D)int a[ ]={10*1};
假设字符变量grade的值为 ’ 3 ’,则以下程序片段执行后的结果是( )。
switch(grade)
{
case '1':printf("First\n");
case '2':printf("Second\n");
case '3':printf("Third\n");break;
case '4':printf("Fourth\n");
default:printf("Error\n");
}
(A)Third
(B)Error
(C)Fourth
(D)Second

以下正确的C语言表达式是( )。
(A)5++
(B)(x - y) - -
(C)+ + (a - b)
(D)(a++)+(a++)+(a++)
以下不正确的说法是( )。
(A)在不同函数中可以使用相同名字的变量。
(B)形式参数是全局变量。
(C)在函数内定义的变量只在本函数范围内有效。
(D)在函数内的复合语句中定义的变量只在该复合语句内部有效。
以下有关switch语句的描述不正确的是( )。
(A)每一个case的常量表达式的值必须互不相同
(B)case的常量表达式只起语句标号作用
(C)无论如何default后面的语句都要执行一次
(D)break语句的使用是根据程序的需要
设已定义i和k为int型变量,则以下for循环语句( )。
for(i=0,k=-1;k=1;i++,k++)
printf("****\n");
(A)判断循环结束的条件不合法 (B)是无限循环
(C)循环一次也不执行 (D)循环只执行一次
以下概念正确的是( )。
(A)数组名的命名规定与变量名不相同
(B)数组名后面的常量表达式用一对圆括号括起来
(C)数组下标的数据类型为整型常量或整型表达式
(D)在C语言中,一个数组的下标从1开始
设有下列数据定义语句,则数组元素 x [ i ]的值是( )。
int i = 3, x [ 4 ] = { 1 , 2 , 3 };
(A)0 (B)1 (C)2 (D)3
若有定义int *p[5],则下面叙述正确的是( )。
(A)p是指向int型变量的指针
(B)p是int型数组
(C)p是指针数组
(D)p是数组指针
以下有关switch语句的描述不正确的是( )
(A)每一个case的常量表达式的值必须互不相同
(B)case的常量表达式只起语句标号作用
(C)无论如何default后面的语句都要执行一次
(D)break语句的使用是根据程序的需要
判断
( ) C语言程序的变量必须先定义再使用。
( )如果x>y为真或a<b为真,表达式(x>y)&&(a<b)就为真。
( )do-while语句构成的循环不能用其他语句构成的循环来代替。
( )C语言认为名为Student和student的变量是不同变量。
( )do-while循环允许从循环体外部跳到循环体内部。
( )C语言规定,函数的实参应与其对应的形参类型一致。
( )函数调用可以出现在一个语句中。
( )C语言中的逻辑真是用非零表示的。
( )switch语句不能用if语句来替代。
( )建立函数的目的之一是提高程序的可读性。
( )同一数组可以存储不同类型的值。
( )在switch-case语句中,不是每个case后都要使用break语句。
( )声明为void型的指针可以间接引用。
( )地址运算符(&)仅能应用于常量和表达式。
( )不同结构的成员可以有相同的名称。

应该没什么错的:)

以下程序片段执行后的结果是 ( B )。
int x=2,y=-1,z=2;
if(x<y)
if(y<0) z=0;
else z+=1;
printf("%d\n",z);
(A)3
(B)2
(C)1
(D)0
设有下列数据定义语句,则数组元素 x [ i ]的值是( D )。
int i = 2, x [ 4 ] = { 1 , 2 , 3 };
(A)0
(B)1
(C)2
(D)3
以下能对一维数组a进行正确初始化的语句是 ( A )。
(A)int a[10]=(0,1,2,3,4);
(B)int a[10]={ };
(C)int a[ ]={0};
(D)int a[ ]={10*1};
假设字符变量grade的值为 ’ 3 ’,则以下程序片段执行后的结果是( A )。
switch(grade)
{
case '1':printf("First\n");
case '2':printf("Second\n");
case '3':printf("Third\n");break;
case '4':printf("Fourth\n");
default:printf("Error\n");
}
(A)Third
(B)Error
(C)Fourth
(D)Second

以下正确的C语言表达式是( D )。
(A)5++
(B)(x - y) - -
(C)+ + (a - b)
(D)(a++)+(a++)+(a++)
以下不正确的说法是( B )。
(A)在不同函数中可以使用相同名字的变量。
(B)形式参数是全局变量。
(C)在函数内定义的变量只在本函数范围内有效。
(D)在函数内的复合语句中定义的变量只在该复合语句内部有效。
以下有关switch语句的描述不正确的是( C )。
(A)每一个case的常量表达式的值必须互不相同
(B)case的常量表达式只起语句标号作用
(C)无论如何default后面的语句都要执行一次
(D)break语句的使用是根据程序的需要
设已定义i和k为int型变量,则以下for循环语句( B )。
for(i=0,k=-1;k=1;i++,k++)
printf("****\n");
(A)判断循环结束的条件不合法 (B)是无限循环
(C)循环一次也不执行 (D)循环只执行一次
以下概念正确的是( C )。
(A)数组名的命名规定与变量名不相同
(B)数组名后面的常量表达式用一对圆括号括起来
(C)数组下标的数据类型为整型常量或整型表达式
(D)在C语言中,一个数组的下标从1开始
设有下列数据定义语句,则数组元素 x [ i ]的值是( A )。
int i = 3, x [ 4 ] = { 1 , 2 , 3 };
(A)0 (B)1 (C)2 (D)3
若有定义int *p[5],则下面叙述正确的是( C )。
(A)p是指向int型变量的指针
(B)p是int型数组
(C)p是指针数组
(D)p是数组指针
以下有关switch语句的描述不正确的是( C )
(A)每一个case的常量表达式的值必须互不相同
(B)case的常量表达式只起语句标号作用
(C)无论如何default后面的语句都要执行一次
(D)break语句的使用是根据程序的需要
判断
( 对 )C语言程序的变量必须先定义再使用。
( 错 )如果x>y为真或a<b为真,表达式(x>y)&&(a<b)就为真。
( 错 )do-while语句构成的循环不能用其他语句构成的循环来代替。
( 对 )C语言认为名为Student和student的变量是不同变量。
( 错 )do-while循环允许从循环体外部跳到循环体内部。
( 对 )C语言规定,函数的实参应与其对应的形参类型一致。
( 对 )函数调用可以出现在一个语句中。
( 对 )C语言中的逻辑真是用非零表示的。
( 错 )switch语句不能用if语句来替代。
( 对 )建立函数的目的之一是提高程序的可读性。
( 错 )同一数组可以存储不同类型的值。
( 对 )在switch-case语句中,不是每个case后都要使用break语句。
( 对 )声明为void型的指针可以间接引用。
( 错 )地址运算符(&)仅能应用于常量和表达式。
( 对 )不同结构的成员可以有相同的名称。
温馨提示:答案为网友推荐,仅供参考