鱼C论坛

 找回密码
 立即注册
查看: 1867|回复: 4

C语言求帮助

[复制链接]
发表于 2016-1-2 14:10:18 | 显示全部楼层 |阅读模式
10鱼币
输入两个数码的英文,求其和值。

Sample Input  

5
zero one
two three
four five
six seven
eight nine


  

Sample Output  

1
5
9
13
17


  
只需要思路就好

最佳答案

查看完整内容

这样可以吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-1-2 14:10:19 | 显示全部楼层
这样可以吗
#include<stdio.h>
#include <string.h>

typedef struct
{
        char string [10];
        char value;
} TAB;

void dispose_string (TAB tab[], //需要tab的地址 
        char *a, char *b, //a b 字符串的地址
        int *x, int *y); //x y 为返回的对应的数字

int main()
{
        TAB tab[10] = {{ "zero", 0 }, { "one", 1 }, { "two", 2 },{ "three", 3 } ,{ "four", 4 } ,{ "five", 5 } ,{ "six", 6 } ,{ "seven", 7 } ,{ "eight", 8 } ,{ "nine", 9 } };
        char a[10], b[10]; //加数和被加数
        int x = 0, y = 0; //转换后的加数和被加数


        printf ("请输入:");
        scanf ("%s %s", &a, &b);
        //这里应该检查a b的值


        dispose_string (tab, a, b, &x, &y);

        printf ("%s和%s的和为:%d\n", a, b, x + y);

        return(0);
}

void dispose_string(TAB tab[], //需要tab的地址 
        char *a, char *b, //a b 字符串的地址
        int *x, int *y) //x y 为返回的对应的数字
{
        int i, k;

        for (i = 0; i < 10; i++)
        {
                if (strcmp (tab[i].string,a) == 0)
                {
                        *x = tab[i].value;
                }
        }//应该处理一下没有找到的情况

        for (k = 0; k < 10; k++)
        {
                if (strcmp(tab[k].string, b) == 0)
                {
                        *y = tab[k].value;
                }
        }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-1-2 16:43:11 | 显示全部楼层
只有10以内的吗?10以内的话就用map映射一下就好了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2016-1-2 22:53:42 | 显示全部楼层
真6 ,谢谢你,不过以后思路就可以啦
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-1-5 07:23:31 From FishC Mobile | 显示全部楼层
全部宏定义不就完了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-26 16:52

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表