用c语言编程输入若干个角度的值,输出它们的正弦值和余弦值。 输入格式: 若干角度值,以空格分隔。 输出格式: 对于每个角度,在一行中输出它的正弦值和余弦值,以一个空格分隔。 输入样例: 10 20 30 60 45 输出样例: 0.173648 0.984808 0.342020 0.939693 0.500000 0.866025 0.866025 0.500000 0.707107 0.707107
时间: 2024-02-25 22:56:00 浏览: 132
以下是使用C语言编写的代码实现:
```c
#include <stdio.h>
#include <math.h>
int main()
{
double angle;
while (scanf("%lf", &angle) != EOF) {
double radian = angle * M_PI / 180; // 将角度转换为弧度
double sin_value = sin(radian); // 计算正弦值
double cos_value = cos(radian); // 计算余弦值
printf("%.6lf %.6lf\n", sin_value, cos_value); // 输出结果,保留6位小数
}
return 0;
}
```
解释如下:
首先,使用 `scanf()` 函数读入若干个角度值,以空格分隔。由于数据格式不确定,我们使用 `while` 循环来不断读入数据,直到输入流结束(即遇到文件结尾符 `EOF`)。
接着,对于每个角度,将其转换为弧度,并使用 `sin()` 函数和 `cos()` 函数分别计算其正弦值和余弦值。
最后,使用 `printf()` 函数输出结果,保留6位小数,并在两个值之间添加一个空格。
相关问题
用C语言编程输入若干个角度的值输出它们的正弦值和余弦值
在C语言中,你可以使用math.h库提供的sin()和cos()函数来计算角度的正弦和余弦值。首先,你需要从用户那里获取角度值,然后通过这些函数进行计算。以下是一个简单的示例程序:
```c
#include <stdio.h>
#include <math.h>
int main() {
float angle, sin_value, cos_value;
const int MAX_ANGLE = 90; // 限制角度范围防止溢出
printf("请输入角度值(0到%d度),按q退出:", MAX_ANGLE);
while (scanf("%f", &angle) == 1 && angle <= MAX_ANGLE) { // 循环读取直到用户输入q
if (angle >= 0 && angle <= 90) { // 只保留0-90度的范围
sin_value = sin(M_PI * angle / 180); // 将角度转换为弧度并计算正弦值
cos_value = cos(M_PI * angle / 180); // 同样计算余弦值
printf("角度 %f 度的正弦值是 %.4f,余弦值是 %.4f\n", angle, sin_value, cos_value);
} else {
printf("无效的角度值,请重新输入。\n");
}
}
return 0;
}
```
在这个程序中,用户可以逐次输入角度,程序会计算对应的正弦和余弦值,并打印出来。如果你想要输入多个角度,可以循环读取,直到用户选择退出。
c语言 三角函数 编程输入若干个角度的值,输出它们的正弦值和余弦值。 输入格式: 若干角度值,以空格分隔。 输出格式: 对于每个角度,在一行中输出它的正弦值和余弦值,以一个空格分隔。 输入样例: 10 20 30 60 45
好的,以下是C语言的代码实现:
```c
#include <stdio.h>
#include <math.h>
int main() {
double angle;
while (scanf("%lf", &angle) != EOF) {
double radian = angle * M_PI / 180.0;
printf("%.6lf %.6lf\n", sin(radian), cos(radian));
}
return 0;
}
```
代码解析:
1. 引入 `<stdio.h>` 和 `<math.h>` 头文件,分别用于输入输出和数学计算。
2. 使用 `double` 类型的变量 `angle` 存储输入的角度值。
3. 使用 `while` 循环读取输入的角度值,直到输入结束。
4. 将角度值转换为弧度值,使用 `sin` 和 `cos` 函数计算正弦值和余弦值。
5. 使用 `printf` 函数输出正弦值和余弦值,保留小数点后六位。
6. 返回 0 表示程序正常结束。
希望我的回答能够帮到您!
阅读全文