程序Cmody031.c的功能是:从键盘上输入两个整数,及一个运算符(+、-、*、/或%),进行相应的运算后输出运算的结果。请改正错程序中的错误。如输入:1+2将输出:1+2=3

题目
程序Cmody031.c的功能是:从键盘上输入两个整数,及一个运算符(+、-、*、/或%),进行相应的运算后输出运算的结果。请改正错程序中的错误。如输入:1+2将输出:1+2=3


相似考题
更多“程序Cmody031.c的功能是:从键盘上输入两个整数,及一个运算符(+、-、*、/或%),进行相应的运算后输出运算的结果。请改正错程序中的错误。如输入:1+2将输出:1+2=3 ”相关问题
  • 第1题:

    阅读以下说明和代码,填写程序中的空(1)-(5),将解答写入答题细的对应栏内。【说明】下面程序运行时,对输入的表达式进行计算并输出计算结果。设表达式由两个整数和一个运算符(+或-)构成,整数和运算符之间以空格分隔,运算符可以出现在两个整数之前、之间或之后,整数不超过4位,输入的两个整教和运算符都用字符串表示 例如,输入分别为 “25+7”、“+257”、“257+”时,输出均为“25+7=32”。【C 代码】

    #include Int strain (char*s); //将数字字符串转换为整数 Int isOperator(char*str); //判断字符串的开头字符是否为运算符 void cal (char op, char a[ ], charb[ ]); //将数字串转化为对应证书后进行所要求的计算 int main ( ) { char a[ 10] ,b[10 ],c[10]; scanf ("%s%s%s, a, b, c); //输入数据的有效性检测略,下面假设输入数据有效、正确 Solve(a, b, c); Retune ( ) } int strain (char*s);{ Int val=0 while(*s) val= (1)+(*s-’0’); ∥将数字字符串转换为十进制整数 (2) //令字符指针指向下一个数字字符 } Return val; } int isoperator(char* str) { return (*str==’+’II*str==’-’): }Void cal ( char op,char a [ ],char b[ ]){switch(op) { case ‘+’: printf("%s+%s=%d", a, b, straint(a)+straint(b)); break. case ‘-’: printf("%s-%s=%d", a, b, strain(a)-straint(b)); Break; }}void solve(char a[ ], char b[ ], char c [ ]){//解析输入的3 个字符串,输出表达式及计算结果 if (seperator(a)){ ∥运算符在两个整数之前 ca(( 3 ); } else if(opErator(b)){ ∥运算符在两个整数之间 ca(( 4 ); else { ∥运算符在两个整数之后 ca(( 5 );}}


    答案:
    解析:
    (1)val*10(2)S++(3)*a,b,c(4)*b,a,c(5)*c,a,b
    【解析】

    1、2 空将数字字符申进行全部转化为数字,例如“1234”转化为数字1234,分别用指针s 依次取字符,val将数字保留,之前是’1’,val=1;然后s=’2’,val=12,然后s=’3’,Val=123,然后s=’4’,Val=1234,因此val=val*10+*S-’0’。每次循环后s 向后移动一个。3、4、5 考查的都是函数调用的问题,首先判断运算符的位置,用 isOperator 来进行判定,如果字符串a 就是运算符,那么操作数就是b和c,调用cal函数进行计算。实参传递的时候,第一个参数要传递字符,后面两个参数传递字符数组或者字符指针,(3)填写的是*a,b,C,依次类推,(4)答案是*b,a,C,(5) 的答家是*c,a,b。

  • 第2题:

    随机产生两个数,从键盘上输入一个运算符(,-,*,/,%),输出这两个数的运算结果(可以使用switch 语句, 或者if else 语句)


    input()

  • 第3题:

    9、请编写程序实现以下功能:用户输入两个数据,如果两个数据都是整数(即都由数字组成),则输出其减法运算结果;如果两个数据都不是整数,则将这两个数据作为两个字符串、输出这两个字符串连接的结果;如果一个数据不是整数、另一个数据是整数,则将不是整数的数据作为字符串、输出字符串和整数重复运算的结果。要求判断一个输入数据是否是整数的功能用函数实现。


    D

  • 第4题:

    从键盘输入两个单精度数,然后输入一个运算符号,输出两个单精度数进行运算后的结果。如果用户不是输入的+、-、*、/运算符,则提示用户“请输入正确的运算符”。效果图见附件。


    (1)s>x&&m=0 (2)1-x-L (3)a(i)=a(k+1) (4)m=1 (5)for(i=li<1-s;i++) (1)s>x&&m=0 (2)1-x-L (3)a(i)=a(k+1) (4)m=1 (5)for(i=li<1-s;i++)

  • 第5题:

    5、编写用人机对话形式进行加、减、乘、除运算的程序。用户每输入一次运算数和运算符,系统输出相应的计算结果,当输入的运算符为“#”结束循环。


    菜单式;填表法;应答式