2020 高级语言程序设计(河北传媒学院) 最新满分章节测试答案
本答案对应课程为:点我自动跳转查看
本课程起止时间为:2020-02-29到2020-06-12
本篇答案更新状态:已完结
第4周——无处不在的抉择 练兵区——单选题——不计入总分
1、 问题:下面程序代码的功能是判断输入整数的正负性和奇偶性,请将第19行和22行标号处缺少的代码填写完整。#include
int main()
{
int m;
printf(“Input m: “);
scanf(“%d”, &m); //输入一个整数
if (m > 0) //是否为正数
{
if (m % 2 == 0) //是正数,且能被2整除,则是正偶数
{
printf(“%d is a positive even”, m);
}
else //不能被2整除,则是正奇数
{
printf(“%d is a positive odd”, m);
}
}
_______________ //判断是否为负数
{
_______________
{
printf("%d is a negative even", m); //是负偶数
}
else
{
printf("%d is a negative odd", m); //是负奇数
}
}
else
{
printf("%d is zero.It is an even", m);
}
return 0;
}
选项:
A:第19行代码: else if(m < 0)第22行代码: if (m % 2 == 0)
B:第19行代码: if(m < 0)第22行代码: if (m % 2 == 0)
C:第19行代码: else if(m < 0)第22行代码: if (m % 2 != 0)
D:第19行代码: if(m < 0)第22行代码: if (m % 2 != 0)
答案: 【第19行代码: else if(m < 0)第22行代码: if (m % 2 == 0)】
2、 问题:执行以下程序后的输出结果为#include
int main()
{
int a=1,b=0;
switch (a)
{
case 1:
switch (b)
{
case 0: printf(“0“);break;
case 1: printf(“1“);break;
}
case 2: printf(“2“);break;
}
return 0;
}
选项:
A:0*2*
B:0
C:0*1*2
D:有语法错误
答案: 【02】
3、 问题:以下程序运行后的输出结果是#include
int main()
{
int a=1,b=2,m=0,n=0,k;
k=(n=b>a)||(m=a1,0】
4、 问题:以下程序运行后的输出结果是#include
int main()
{
int a,b,c;
a=10;
b=20;
c=(a%b<1)||(a/b>1);
printf(“%d,%d,%d”,a%b,a/b,c);
return 0;
}
选项:
A:10,0,0
B:10,1,0
C:10,0,1
D:10,1,1
答案: 【10,0,0】
5、 问题:编程设计一个简单的计算器程序,要求用户从键盘输入如下形式的表达式: 操作数1 运算符op 操作数2然后,计算并输出表达式的值指定的运算符为: 加(+) 减(-) 乘() 除(/)代码如下,所给程序是否存在错误,若有,找出错误所在并改正。#include
int main()
{
float data1, data2;
char op;
printf(“Please enter the expression:”);
scanf(“%f %c%f”, &data1, &op, &data2); /
switch (op)
{
case ‘+’:
printf(“%f + %f = %f”, data1, data2, data1 + data2);
break;
case ‘-‘:
printf(“%f – %f = %f”, data1, data2, data1 – data2);
break;
case ‘‘:
printf(“%f * %f = %f”, data1, data2, data1 * data2);
break;
case ‘/’:
printf(“%f/%f = %f”, data1, data2,data1/data2);
break;
default:
printf(“Invalid operator!”);
}
return 0;
}
选项:
A:第20行语句有错误,改成:if (fabs(data2)<=EPS) printf(“Division by zero!”);else printf(“%f/%f = %f”, data1, data2, data1/data2);同时,第1行语句下方应加入#include
B:default分支缺少break语句
C:没有错误
D:第20行语句有错误,改成:if (data2=0) printf(“Division by zero!”);else printf(“%f/%f = %f”, data1, data2, data1/data2);
答案: 【第20行语句有错误,改成:if (fabs(data2)<=EPS) printf(“Division by zero!”);else printf(“%f/%f = %f”, data1, data2, data1/data2);同时,第1行语句下方应加入#include
6、 问题:下列复合语句中,不能实现两数交换的是
选项:
A:{
a=b;
b=a;
}
B:{
b = a * b;
a = b / a;
b = b / a;
}
C:{
t=a;
a=b;
b=t;
}
D:{
a = a + b;
b = a – b;
a = a – b;
}
答案: 【{
a=b;
b=a;
}】
7、 问题:写出下面程序的输出结果#include
int main()
{
int x=1, y=0, a=0, b=0;
switch(x)
{
case 1:
switch(y)
{
case 0: a++;
case 1: b++;
}
case 2: a++;
b++;
}
printf(“a=%d, b=%d”, a, b) ;
return 0;
}
选项:
A:a=2, b=2
B:a=2, b=1
C:a=1, b=1
D:a=1, b=0
答案: 【a=2, b=2】
本文章不含期末不含主观题!!
本文章不含期末不含主观题!!
支付后可长期查看
有疑问请添加客服QQ 2356025045反馈
如遇卡顿看不了请换个浏览器即可打开
请看清楚了再购买哦,电子资源购买后不支持退款哦