C语言编程实战:计算绝对值与海军节礼炮计数

版权申诉
0 下载量 19 浏览量 更新于2024-07-06 1 收藏 148KB PDF 举报
本资源是一份关于C语言程序设计的结课考试答案文档,包含了两个单选题,涉及编程实践和算法逻辑的理解。 第一个问题是关于计算实数的绝对值。题目要求在不使用C语言内置的绝对值函数的情况下,编写代码实现。根据题目描述,我们需要根据实数x的符号来调整其值,使得其始终为正数。当输入的x为负数时,应该执行 `x = -x` 来取其相反数,因此正确答案是A。完整的代码如下: ```c #include<stdio.h> int main() { float x; printf("Input a float number:"); scanf("%f", &x); if(x < 0) x = -x; printf("Absolute value of x is %f\n", x); return 0; } ``` 第二个问题涉及到三个舰艇鸣放礼炮的同步计数。题目要求计算在海军节开幕式上观众能听到多少次礼炮声,因为A舰每隔5秒放一次,B舰每隔6秒放一次,C舰每隔7秒放一次。考虑到炮声不会重叠,我们可以使用条件判断和循环结构来分别检查每个舰艇的炮声时间是否符合。正确答案是B,代码补充如下: ```c #include<stdio.h> int main() { int n = 0, t; for(t = 0; t <= 20 * 7; t++) { if(t % 5 == 0 && t <= 20 * 5) // A舰 { n++; continue; // 继续下一次循环 } if(t % 6 == 0 && t <= 20 * 6) // B舰 { n++; continue; // 继续下一次循环 } if(t % 7 == 0 && t <= 20 * 7) // C舰 { n++; } } printf("n=%d\n", n); return 0; } ``` 这两个题目考察了C语言的基本语法(如条件语句、循环结构),以及如何根据实际问题需求编写控制流程的代码。理解并熟练运用这些基础知识对于C语言的学习者来说至关重要。