搜索
查看: 912|回复: 8
打印 上一主题 下一主题

计算器

[复制链接]
跳转到指定楼层
楼主
发表于 2014-3-22 10:01:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
大家好:不全显示,只显示我们输入的加法或者减法等分类显示。
请高手指点

沙发
发表于 2014-3-22 11:34:04 | 只看该作者
/*这行不?*/
#include <stdio.h>
#include <string.h>                             
#include <stdlib.h>
#include <ctype.h>
#define STR "Enter the operation of your choice"

float first(void);
float second (void);
void star (char ch, int num);
void temp (float num);
int main (void)
{
        float add,subtract,multiply,divide;
        float num,num1;
        char ch;

        begin:                         // goto 跳转
        star ('-' ,strlen(STR));       // 程序头
        printf("%s \n",STR);
        printf(" a) add         b) subtract \n");
        printf(" c) multiply    d) divide \n");
        printf(" q) quit \n");
        star('-',strlen(STR));
        while ((ch = getchar())  != 'q')
        {
         if (isalnum(ch))             // 调用isalnum() 函数
                 switch(ch)
           {
                         case 'a':
                                num = num1 = 0;
                                num = first();
                                num1 = second();
                                printf ("%.2f + %.2f = %.2f \n",num,num1,num+num1);
                           goto begin;
                                break;

                         case 'b':
                                num = num1 = 0;
                                num = first();
                                num1 = second();
                                printf ("%0.2f - %0.2f = %0.2f \n",num,num1,num-num1);
                           goto begin;
                                break;

                         case 'c':
                                num = num1 = 0;
                                num = first();
                                num1 = second();
                                printf ("%0.2f * %0.2f = %0.2f \n",num,num1,num*num1);
                           goto begin;
                                break;

                          case 'd':
                                num = num1 = 0;
                                num = first();
                                while (num == 0)
                                  num = first();
                                num1 = second();
                                while (num1 == 0)
                                   num1 = second();
                                printf ("%0.2f / %0.2f = %0.2f \n",num,num1,num/num1);
                           goto begin;
                                break;

                          default:
                                printf ("你的输入有错误,请重新输入 \n");
                                goto begin;
                                break;
                }
           }
        printf ("程序退出 \n");
        system("PAUSE");
        return 0;
}



void star (char ch, int num)
{
   int temp;
   for (temp = 0; temp < num; temp++) {
           putchar(ch);
   }
   printf ("\n");
}

float first (void)
{
        float fir;
        char ch;

        printf ("Enter first number :  ");
        while (scanf("%f",&fir) != 1)
        {
                while ((ch = getchar()) != '\n')
                        putchar(ch);
                printf (" is not an nubmer \n");
                printf (" Please enter a number, such as 2.5 . -1.78E8 or 3 \n");
                printf ("Enter first number :  ");
        }
   return fir;
}

float second (void)
{
         float sec;
         char ch;

         printf ("Enter second number : ");
         while (scanf ("%f",&sec) != 1)
         {
                 while ((ch = getchar()) != '\n')
                        putchar(ch);
                printf (" is not an nubmer \n");
                printf (" Please enter a number, such as 2.5 . -1.78E8 or 3 \n");
                printf ("Enter first number : ");
         }
         return sec;
}

评分

参与人数 1啊哈币 +3 收起 理由
李掌柜 + 3 赞一个!

查看全部评分

板凳
发表于 2014-3-22 12:34:28 | 只看该作者
( ^_^ )不错嘛
地板
发表于 2014-3-22 12:46:53 | 只看该作者
谁能解释一下楼主在说什么……
5#
发表于 2014-3-23 10:18:34 | 只看该作者
rosynirvana 发表于 2014-3-22 12:46
谁能解释一下楼主在说什么……

我也想知道。。。
6#
发表于 2014-4-1 20:44:20 | 只看该作者
谁能解释一下楼主在说什么……

同感,楼主语文没学好吧
7#
发表于 2014-4-3 20:21:14 | 只看该作者
#include <stdio.h>
#include <stdlib.h>
int main()
{
        int a,b,c;
    scanf("%d",&a);
    scanf("%d",&b);
    scanf("%d",&c);
    if(b==1)
    {
                printf("%d+%d=%d",a,c,a+c);
    }
    if(b==2)
    {
                printf("%d-%d=%d",a,c,a-);
    }
    if(b==3)
    {
                printf("%d*%d=%d",a,c,a*c);
    }
    if(b==4)
    {
                printf("%d/%d=%d",a,c,a+c);
    }
        system("pause");
        return 0;
}
8#
发表于 2014-4-3 20:22:00 | 只看该作者
Ezreal5678 发表于 2014-4-3 20:21
#include
#include
int main()

1加 2减 3 乘 4除
9#
发表于 2014-4-10 20:14:19 | 只看该作者
我破格把我的“金山词爸计算器”给你啊!别盗版。
开方和平方.c (9.14 KB, 下载次数: 5)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表