3)编程测试下列语句的输出: printf("%d\n",1/3*10000); printf("%d\n",10000*1/3); printf ("%d\n",1./3*10000); printf ("%d\n",1/3.*10000); printf ("%f\n",1./3*10000); printf ("%f\n",1/3*10000);C语言
时间: 2024-03-23 20:42:57 浏览: 11
好的,以下是 C 语言的代码实现:
```c
#include <stdio.h>
int main() {
printf("%d\n", 1/3*10000); // 输出结果为 0
printf("%d\n", 10000*1/3); // 输出结果为 3333
printf("%d\n", 1./3*10000); // 输出结果为 3333
printf("%d\n", 1/3.*10000); // 输出结果为 3333
printf("%f\n", 1./3*10000); // 输出结果为 3333.333333
printf("%f\n", 1/3*10000); // 输出结果为 0.000000
return 0;
}
```
这段代码通过 printf 函数输出了六个表达式的结果。第一个表达式中 1/3 的结果是 0,所以最终结果也是 0;第二个表达式中先计算 10000*1 的结果再除以 3,结果为 3333;第三个表达式中 1./3 的结果是 0.333333,再乘以 10000,结果为 3333;第四个表达式中 1/3. 的结果是 0.333333,再乘以 10000,结果为 3333;第五个表达式中 1./3 的结果是 0.333333,输出时按浮点数类型输出,结果为 3333.333333;第六个表达式中 1/3 的结果是 0,输出时按浮点数类型输出,结果为 0.000000。
相关问题
#include<stdio.h> int main() { int a; float b; printf("1:%d\n",1064/(24*3)); printf("2:%f\n",b=1064/(24*3)); printf("3:%f\n",1064/(24*3)); printf("4:%f\n",23.582/(7.96/3.67)); printf("5:%d\n",a=23.582/(7.96/3.67)); printf("6:%d\n",23.582/(7.96/3.67)); system("pause"); } 比较1、2、3条输出语句的输出结果有何不同,为什么? 比较4、5、6条输出语句的输出结果有何不同,为什么?
1、2、3条输出语句的输出结果不同,1输出的是整数结果,2和3输出的是浮点数结果。原因是2和3中的1064/(24*3)都是整数除法运算,结果也是整数,但2中使用了%f格式输出,将整数结果转化为浮点数输出,而3中直接使用%f格式输出,因此也输出了浮点数结果。
4、5、6条输出语句的输出结果不同,4输出的是浮点数结果,5和6输出的是整数结果。原因是4中的23.582/(7.96/3.67)是浮点数除法运算,结果是浮点数,而5和6中的23.582/(7.96/3.67)都是浮点数除以浮点数,结果也是浮点数,但5中使用了%d格式输出,将浮点数结果转化为整数输出,因此输出了整数结果,而6中直接使用%d格式输出,因此输出了浮点数的整数部分。
c语言编程实现简单的计算器功能,要求用户按如下格式从键盘输入算式: 操作数1 运算符op 操作数2 计算并输出表达式的值,其中算术运算符包括:加(+)、减(-)、乘(*)、除(/)。 **输入格式要求:"%d%c%d" 提示信息:"Please enter an expression:" **输出格式要求:"%d + %d = %d \n" "%d - %d = %d \n" "%d * %d = %d \n" "%d / %d = %d \n" "Division by zero!\n"
下面是实现简单计算器功能的C语言代码:
```c
#include <stdio.h>
int main()
{
int num1, num2, result;
char op;
printf("Please enter an expression:\n");
scanf("%d%c%d", &num1, &op, &num2);
switch (op) {
case '+':
result = num1 + num2;
printf("%d + %d = %d \n", num1, num2, result);
break;
case '-':
result = num1 - num2;
printf("%d - %d = %d \n", num1, num2, result);
break;
case '*':
result = num1 * num2;
printf("%d * %d = %d \n", num1, num2, result);
break;
case '/':
if (num2 == 0) {
printf("Division by zero!\n");
} else {
result = num1 / num2;
printf("%d / %d = %d \n", num1, num2, result);
}
break;
default:
printf("Invalid operator!\n");
break;
}
return 0;
}
```
在程序中,我们使用了 `switch` 语句根据输入的运算符选择相应的计算方法,同时也判断了除数为零的情况。最后输出计算结果或错误提示信息。