第5章选择结构作业1参考答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第五章选择结构作业1
一、选择题
1.关系表达式a≤x<b的正确描述是()。
A.a<=x
B.x>=a&&x
C.x>=a||x
D.!(x=b)
2.能正确表示“当x的取值在[1,10]或[200,210]范围内为真,否则为假”的表达式是
()。
A. (x>=1) && (x<=10) && (x>=200) && (x<=210)
B. (x>=1) | | (x<=10) | | (x>=200) | | (x<=210)
C. (x>=1) && (x<=10) | | (x>=200) && (x<=210)
D. (x>=1) | | (x<=10) && (x>=200) | | (x<=210)
3.下述表达式中,可以正确表示x≤0或x≥1的关系。
A)(x>=1) | | (x<=0) B)x>=1 | x<=0
C)x>=1 && x<=0 D)(x>=1) && (x<=0)
4.判断char型变量s是否为小写字母的正确表达式是()。
A.’a’ <= s<=’z’B.(s>=’a’) & (s<=’z’)
C.(s>=’a’) && (s<=’z’) D.(’a’<=s) and (’z’>=s)
5.若希望当x的值为奇数时,表达式的值为“真”,x的值为偶数时,表达式的值为“假”。
则以下不能满足要求的表达式是()。
A.x%2==1 B.!(x%2==0) C.!(x%2) D.x%2
6.若执行下面的程序时从键盘上输入5和6,则输出的是()。
void main()
{ int a,b,s;
scanf("%d%d",&a,&b);
s=a;
if(a
s=s*s;
print("%d\n",s);
}
A.25 B。30 C。36 D。40
7.已知int a=1,b=2,c=3; 以下语句执行后a,b,c的值是()。
if(a>b)
c=a; a=b; b=c;
A.a=1, b=2, c=3 B.a=2, b=3, c=3
C.a=2, b=3, c=1 D.a=2, b=3, c=2
8.对下述程序,是正确的判断是()。
void main ( )
{ int x,y;
scanf(“%d,%d”,&x,&y);
if (x>y)
x=y;y=x;
else
x++;y++;
printf(“%d,%d”,x,y);
}
A)有语法错误,不能通过编译B)若输入3和4,则输出4和5 C)若输入4和3,则输出3和4 D)若输入4和3,则输出4和5
二、把以下条件表示成C语言表达式
1.20 x>20&&x<=30 2.n是大于整数m的奇数 n>m && n%2= =1 3.设a、b是不为0的实数,写出判断a、b同号的表达式 a*b>0 4.设month表示某一月份,写出判断month是合法月份的表达式month>=1 && month<=12 5.设a、b、c是三角形的三边,写出判断该三角形是直角三角形的表达式a*a+b*b= =c*c || a*a+c*c= =b*b || b*b+c*c = = a*a 三、计算表达式的值(设abc为整型,a=3,b=4,c=5) 1.a+b>c && b= =c 0 2. a||b+c && b-c 等价于a || (b+c && b-c) 值为1 3. !(a>b) && !c ||1 1 4.!(x=a) && (y = b) && 0 0 5. !(a+b)+c-1 && b+c/2 1 四、写出运行结果 1、如下程序的运行结果是: void main() { int a=1,b=2,c=3,d=4,m=2,n=2; int s; s=(m=a>b)&& (n=c>d); printf(“%d, %d, %d, %d, %d, %d\n”, a, b, c, d, m, n); printf(“%d\n”,s); } 1,2,3,4,0,2 2、 五、程序设计 1.写一程序求y值 (x值由键盘输入)。 y x x x x x x = + ≥ - < ⎧ ⎨ ⎪ ⎩ ⎪ sin()cos() () sin()cos() () 2 2 参考程序: #include #include int main() { float x,y; printf("please input a float\n"); scanf("%f",&x); x=x*3.14/180; //把角度转换成弧度,因为sin、cos函数要求用弧度 if(x>=0) y=(sin(x)+cos(x))/2; else y=(sin(x)-cos(x))/2; printf("y=%.2f\n",y); return 0; } 2.输入一个数,判断它能否被 3或者被 5整除, 如至少能被这两个数中的一个整除则将此数打印出来,否则不打印,编出程序。 参考答案: #include void main() { int n; //只能用整型,因为后面要用到整除,整除只用于整数 scanf("%f",&n); if(n%3==0||n%5==0) //注意是==判断相等,不是= 赋值 printf("%d",n); } 3.任意输入一个字符,如果是数字字符,则把该字符转换成对应的整数加10后输出。如输入字符‘5’,应该输出15。否则什么也不做。 参考答案: #include