C语言 输入一个整数a(a不为-1),求如下表达式的值,结果保留小数点后2位精度。 cos(50°)+√37.5 a+1 【输入】 输入一个整数a。【输出】 输出表达式的值,结果保留小数点后2位精度。
时间: 2023-05-15 16:05:47 浏览: 191
【答案】
首先,我们需要将50°转换为弧度制,即50° * π / 180 ≈ 0.87。
然后,我们可以使用C语言中的数学库函数cos()和sqrt()来计算cos(50°)和√37.5。
最后,将这些值与a和1代入表达式中,计算出结果并保留小数点后2位精度即可。
以下是代码实现:
#include <stdio.h>
#include <math.h>
int main()
{
int a;
double result, cos50, sqrt37_5;
printf("请输入整数a:");
scanf("%d", &a);
cos50 = cos(0.87);
sqrt37_5 = sqrt(37.5);
result = cos50 * sqrt37_5 * a * 1;
printf("表达式的值为:%.2f\n", result);
return 0;
}
相关问题
C语言,输入若干整数,以-1结束,去掉最大值和最小值,求平均值,保留小数点后两位
以下是C语言的代码实现:
```c
#include <stdio.h>
int main() {
int num, max = -2147483647, min = 2147483647, sum = 0, count = 0;
while (1) {
scanf("%d", &num);
if (num == -1) {
break;
}
if (num > max) {
max = num;
}
if (num < min) {
min = num;
}
sum += num;
count++;
}
double avg = (double)(sum - max - min) / (count - 2);
printf("%.2f", avg);
return 0;
}
```
代码中定义了变量`num`用于输入整数,`max`和`min`用于记录最大值和最小值,`sum`用于累加输入的数的和,`count`用于记录输入的数的个数。
使用while循环不断输入整数,直到输入-1为止。在输入的过程中,对于每个输入的数,如果它比当前的最大值还要大,则更新最大值,如果它比当前的最小值还要小,则更新最小值,同时累加输入的数的和并且统计输入的数的个数。
最后,计算去掉最大值和最小值后的平均值,并使用`printf`函数输出结果,保留小数点后两位。
c语言输入2个实数,模拟加减乘除计算器,结果保留小数点后4位
好的,我可以帮你写一个简单的程序来实现这个功能。以下是代码:
```c
#include <stdio.h>
int main() {
double num1, num2;
char op;
printf("请输入两个实数和运算符,以空格分隔:\n");
scanf("%lf %lf %c", &num1, &num2, &op);
switch(op) {
case '+':
printf("%.4lf + %.4lf = %.4lf\n", num1, num2, num1+num2);
break;
case '-':
printf("%.4lf - %.4lf = %.4lf\n", num1, num2, num1-num2);
break;
case '*':
printf("%.4lf * %.4lf = %.4lf\n", num1, num2, num1*num2);
break;
case '/':
printf("%.4lf / %.4lf = %.4lf\n", num1, num2, num1/num2);
break;
default:
printf("无效的运算符\n");
}
return 0;
}
```
程序中使用 `scanf` 函数从标准输入读取两个实数和一个运算符,然后使用 `switch` 语句根据运算符进行相应的计算,并使用 `printf` 函数将结果输出到标准输出,保留小数点后 4 位。
注意,这个程序只是一个简单的示例,没有考虑输入错误的情况,比如输入的不是实数或者运算符不合法等。在实际的应用中,需要根据具体的需求进行相应的改进和完善。