一道c语言填空题,程序没看懂 求详细解释!
一道c语言填空题,程序没看懂求详细解释!阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。【程序】#include<stdio.h>main(){in...
一道c语言填空题,程序没看懂 求详细解释!阅读下列程序并回答问题,在每小题提供的若干可选答案中挑选一个正确答案。
【程序】
#include <stdio.h>
main()
{int op1,op2,res;
char opertor;
scanf ("%d",&op1);
opertor=getchar();
while(opertor!='=')
{
scanf ("%d",&op2);
switch(opertor)
{
case '+':res=op1+op2;break;
case '-':res=op1-op2;break;
case '*':res=op1*op2;break;
case '/':res=op1/op2;break;
default:res=0;
}
op1=res;
opertor=getchar();
}
printf("%d\n",res);
}
(13)程序运行时,输入2*3-2=,输出 。
A、6 B、2
C、0 D、4 答案:D
(14)、程序运行时,输入15+2/3=,输出 。
A、16 B、15
C、6 D、5 答案:D
(15)、程序运行时,输入1+2*10-10/2=,输出 。
A、10 B、16
C、15 D、25 答案:A
4、程序运行时,输入1+3*5/2-7=,输出 。
A、3 B、1
C、-2 D、-3 答案:A 展开
【程序】
#include <stdio.h>
main()
{int op1,op2,res;
char opertor;
scanf ("%d",&op1);
opertor=getchar();
while(opertor!='=')
{
scanf ("%d",&op2);
switch(opertor)
{
case '+':res=op1+op2;break;
case '-':res=op1-op2;break;
case '*':res=op1*op2;break;
case '/':res=op1/op2;break;
default:res=0;
}
op1=res;
opertor=getchar();
}
printf("%d\n",res);
}
(13)程序运行时,输入2*3-2=,输出 。
A、6 B、2
C、0 D、4 答案:D
(14)、程序运行时,输入15+2/3=,输出 。
A、16 B、15
C、6 D、5 答案:D
(15)、程序运行时,输入1+2*10-10/2=,输出 。
A、10 B、16
C、15 D、25 答案:A
4、程序运行时,输入1+3*5/2-7=,输出 。
A、3 B、1
C、-2 D、-3 答案:A 展开
展开全部
#include <stdio.h>
main()
{
int op1,op2,res;//定义操作数1,操作数2,结果
char opertor;//定义运算符号
scanf ("%d",&op1);//输入操作数1
opertor=getchar();//输入运算符
while(opertor!='=')//如果运算符不是等号,继续运算
{
scanf ("%d",&op2);//输入操作数2
switch(opertor)//根据输入的运算符进行运算
{
case '+':res=op1+op2;break;
case '-':res=op1-op2;break;
case '*':res=op1*op2;break;
case '/':res=op1/op2;break;
default:res=0;
}
op1=res;//把结果保存到操作数1,方便继续运算
opertor=getchar();//再次输入运算符号
}
printf("%d\n",res);//打印结果
}
注意:由于是没有区分运算符优先级的,完全是按照输入的先后顺序计算的,
所以上面这4个输入的式子要按从左到右计算,不能按照平常乘除优先于加减的习惯去计算。
main()
{
int op1,op2,res;//定义操作数1,操作数2,结果
char opertor;//定义运算符号
scanf ("%d",&op1);//输入操作数1
opertor=getchar();//输入运算符
while(opertor!='=')//如果运算符不是等号,继续运算
{
scanf ("%d",&op2);//输入操作数2
switch(opertor)//根据输入的运算符进行运算
{
case '+':res=op1+op2;break;
case '-':res=op1-op2;break;
case '*':res=op1*op2;break;
case '/':res=op1/op2;break;
default:res=0;
}
op1=res;//把结果保存到操作数1,方便继续运算
opertor=getchar();//再次输入运算符号
}
printf("%d\n",res);//打印结果
}
注意:由于是没有区分运算符优先级的,完全是按照输入的先后顺序计算的,
所以上面这4个输入的式子要按从左到右计算,不能按照平常乘除优先于加减的习惯去计算。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询