第四章测试1.若x=3,y=z=4,则下列表达式的值分别为( )。 (1)z>=y>=x?1:0 (2)z>=y&& y>=x
A: 0 0 B: 1 1 C: 0 1 D: 1 0
答案:C
2.在嵌套使用if语句时,C语言规定else总是( )。
A:和之前与其最近的if配对 B:和之前与其最近的且不带else的if配对 C:和之前与其具有相同缩进位置的if配对 D:和之前的第一个if配对 3.判断字符型变量ch为大写字母的表达式是( )。
A:(ch>=’A’)AND(ch<=’Z’) B:(ch>=’A’)&&(ch<=’Z’) C: ’A’<=ch<=’Z’ D:(ch>=’A’)||(ch<=’Z’) 4.逻辑运算符的运算对象的数据类型( )。
A:任何类型的数据 B:只能是整型或字符型 C:只能是0或1 D:只能是.T.或.F. 5.以下是if语句的基本形式: if(表达式) 语句 其中“表达式”( )。
A:必须是逻辑表达式 B:必须是逻辑表达式或关系表达式 C:可以是任意合法的表达式 D:必须是关系表达式 6.下列条件语句中,功能与其他语句不同的是( )。
A:if(a==0) printf("%d",x); else printf("%d",y); B:if(a==0) printf("%d",y); else printf("%d",x); C:if (a!=0) printf("%d",x); else printf("%d",y); D:if(a) printf("%d",x); else printf("%d",y); 7.以下程序段中与语句“k=a>b?(b>c?1:0):0;”功能等价的是( )。
A:if(a>b) k=1; else if(b>c) k=1; else k=0; B:if((a>b)&&(b>c)) k=1;else k=0; C:if(a<=b) k=0; else if(b<=c) k=1; D:f((a>b)||(b>c)) k=1; else k=0; 8.下面程序的输出结果是( )。#include "stdio.h"main( ){ int x=40,y=4,z=4; x=y==z; printf("%d ",x); x=x==(y-z); printf("%d ",x);}
A:4 0 B:1 1 C:4 1 D:1 0 9.下列各语句序列中,能够将变量u和s中的较大值赋值到变量t中的是( )。
A:t=u ; if(u>s)t=s; B:if(u>s)t=u ; t=s; C:t=s ; if(u>s)t=u; D:if(u>s)t=s ; else t=u; 10.以下程序执行后的输出结果是( )。#include "stdio.h"main( ){int a=5,b=4,c=3,d=2; if(a>b>c) printf("%d",d); else if ((c-1>=d)==1) printf("%d",d+1); else printf("%d",d+2); }
A:4 B:2 C:3 D:编译时有错误,无结果 11.以下程序执行后的输出结果是( )。#include "stdio.h"main( ){ char x='d'; x=(x>='a'&&x<='z')?(x-32):x; printf("%c", x);}
A:a B:d C:z D:D 12.若有定义:float x=1.5; int a=1, b=3, c=2;,则正确的switch语句是( )。
A:switch(x) { case 1.0: printf("*"); case 2.0: printf("**");} B:switch(a+b){ case 1: printf("*"); case 1+2: printf("**");} C:switch((int)x);{ case 1: printf("*"); case 2: printf("**");} D:switch(a+b){ case 1: printf("*"); case c: printf("**");} 13.以下程序的输出结果是( )。#include "stdio.h"main(){ int a=2,b=2,c; c=a>=b; printf("c=%d",c);}
A:c=1 B:不确定 C:c=0 D:c=2 14.下列程序执行后的输出结果是( )。#include "stdio.h"main( ){ int n=0,m=1,x=2; if(!n) x-=1; if(m) x-=2; if(x) x-=3; printf("%d",x);}
A:-3 B:1 C:-1 D:-4 15.以下程序执行后的输出结果是( )。#include "stdio.h"main( ){ int p,a=5; if(p=a!=0) printf("%d",p); else printf("%d",p+2);}
A:5 B:3 C:1 D:0 16.以下程序的运行结果是( )。#include "stdio.h"main( ){ int a=2,b=3,c ; c=a; if(a>b) c=1; else if(a==b) c=0; else c=-1; printf("%d",c);}
A:2 B:-1 C:0 D:1 17.有以下程序#include "stdio.h"main( ){int x;scanf("%d",&x);if(x>15) printf("%d ",x-5);if(x>10) printf("%d ",x);if(x>5) printf("%d\n",x+5);} 若程序运行时从键盘输入12<回车>,则输出结果为( )。
A:17 B:12 C:12 17 D:7 18.若有表达式(p)?(--x):(++y),则其中与w等价的表达式是( )。
A:p!=0 B:p!=1 C:p==0 D:p==1 19.有以下程序#include "stdio.h"main( ){ int a, b, c; a=10; b=50; c=30; if (a>b) a=b, b=c; c=a; printf("a=%d b=%d c=%d", a,b,c); } 程序的输出结果是( )。
A:a=10 b=30 c=10 B:a=50 b=30 c=50 C:a=10 b=50 c=30 D:a=10 b=50 c=10 20.有以下程序#include "stdio.h"main( ){ int x=1, y=2, z=3; if(x>y) if(y<z) printf("%2d", z+1); else printf("%2d", y+1); printf("%2d", x+1);} 程序的运行结果是( )。
A:4 2 B:2 C:3 2 D:1
温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!