2020 程序设计基础(C语言)(江汉大学)1450753627 最新满分章节测试答案

2025年3月17日 分类:免费网课答案 作者:网课帮手
文章目录[隐藏]

本答案对应课程为:点我自动跳转查看
本课程起止时间为:2020-02-17到2020-07-15
本篇答案更新状态:已完结

第5周和第6周——无处不在的抉择 第5周测验

1、 问题:程序代码如下:#include
int main()
{
int a,b;
printf(“please input a and b:”);
scanf(“%d%d”,&a,&b);
printf(“the output data is %d”,a7<回车>则程序输出为
选项:
A:the output data is 7
B:the output data is 2
C:the output data is 1
D:the output data is 0
答案: 【the output data is 7

2、 问题:以下程序运行后的输出结果是#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

3、 问题:从键盘输入三角形的三边长为a,b,c,按下面公式计算并输出三角形的面积。程序代码如下,但程序运行后输出结果不正确,请找出有问题的语句。#include

include

int main()
{
float a, b, c;
float s, area;
printf(“Input a,b,c:”);
scanf(“%f,%f,%f”,&a,&b,&c);
if (a+b>c && b+c>a && a+c>b)
{
s = 1/2 * (a + b + c);
area = sqrt(s * (s – a) * (s – b) * (s – c));
printf(“area=%.2f”, area);
}
else
{
printf(“It is not a triangle”);
}
return 0;
}
选项:
A:第11行: s = 1/2 * (a + b + c);
B:第9行: if (a+b>c && b+c>a && a+c>b)
C:第12行: area = sqrt(s * (s – a) * (s – b) * (s – c));
D:第8行: scanf(“%f,%f,%f”,&a,&b,&c);
答案: 【第11行: s = 1/2 * (a + b + c);

4、 问题:编程设计一个简单的计算器程序,要求用户从键盘输入如下形式的表达式: 操作数1 运算符op 操作数2然后,计算并输出表达式的值指定的运算符为: 加(+) 减(-) 乘() 除(/)代码如下,所给程序是否存在错误,若有,找出错误所在并改正。#include
int main()
{
float data1, data2;
char op;
printf(“Please enter the expression:”);
scanf(“%f %c%f”, &data1, &op, &data2); /
%c前有一个空格 /
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 #define EPS 1e-6
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 #define EPS 1e-6

5、 问题:若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|<10的是
选项:
A:(x-y)<-10||!(y-x)>10
B: fabs(x-y)<10
C:x-y>-10 && x-y<10
D:(x-y)*(x-y)<100
答案: 【(x-y)<-10||!(y-x)>10

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

8、 问题:以下程序运行后的输出结果是#include
int main()
{
int a=5,b=4,c=3,d;
d=(a>b>c);
printf(“%d”,d);
return 0;
}
选项:
A:0
B:1
C:5
D:4
E:3
答案: 【0

9、 问题:执行以下程序后的输出结果为#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;

本门课程剩余章节答案为付费内容
本文章不含期末不含主观题!!
本文章不含期末不含主观题!!
支付后可长期查看
有疑问请添加客服QQ 2356025045反馈
如遇卡顿看不了请换个浏览器即可打开
请看清楚了再购买哦,电子资源购买后不支持退款哦
请输入手机号或商家订单号
打不开请联系客服QQ 2356025045 商家订单号在哪里?点此了解

商家订单号查看步骤

打开支付宝
方法一:我的 > 账单 > 账单详情 > 更多>复制商家订单号
方法二:我的 > 账单 >搜索关键字【网课小帮手】
> 账单详情 > 更多>复制商家订单号
方法三:联系客服QQ 2356025045
微信支付
我 > 支付 > 钱包 > 账单 > 账单详情

继续阅读