作业帮 > 综合 > 作业

用C语言将两数组里元素按顺序一一对应,用另一个数组将表合并,并转换.求大神!

来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/09/28 17:28:11
用C语言将两数组里元素按顺序一一对应,用另一个数组将表合并,并转换.求大神!
详细题目:
{ 1, 2, 3 }与{ "one", "two", "three" }按顺序一一对应,用{ "three", "four" }与这两个表合并,将转换为{ ["one"]=1, ["two"]=2, ["three"]=3, ["four"]="four" },编写程序执行这个转换.
还有一个题目 望大神指教:
将{ { "a", "b" }, { "c" }, { "a", "d" } } 排序,元素的权重按{ a=1, b=2, c=3, d=4 }累计计算,权重高的排在前面.
用C语言将两数组里元素按顺序一一对应,用另一个数组将表合并,并转换.求大神!
好怪异的题目,表示看的不是很明白
再问: 呵呵,标题不用看,具体看下面详细的两道C语言题目,怎么用C语言编程出来·
再答: 第一个题目看不懂,第二个很简单。我简单写下第二个的代码,因为没装vc,所以可能会有少许错误,你自己改下(字数限制,我分两次贴):#include<stdio.h>

void main()
{
    int a=1, b=2, c=3, d=4;
    int sum1=a+b, sum2=c, sum3=a+d; //sum1,sum2,sum3分别表示{ "a", "b" 

}, { "c" }, { "a", "d" }的权重
    
    printf("{"); //打印出第一个{
    
    //比较大小并打印
    int max, middle, min;
    if(sum1>sum2)
    {
        if(sum1>sum3)
        {
            max=sum1;
            if(sum2>sum3)
            {
                middle=sum2;
                min=sum3;
            }
        }
        else
        {
            max=sum3;
            middle=sum1;
            min=sum2;
        }
    }
    else
    {
         if(sum2>sum3)
         {
            max=sum2;
            if(sum1>sum3)
            {
                middle=sum1;
                min=sum3;
            }
            else
            {
                middle=sum3;
                min=sum1;
            }
         }
        else
        {
            max=sum3;
            middle=sum2;
            min=sum1;
         }
    }
再问: 第一个题目就是:A:{1,2,3}, B:{“one”,"two","three"} 1对应one,2对应two,3对应three,C:{ "three", "four" } A,B,C合并到一个集合,最后输出的结果是:{ ["one"]=1, ["two"]=2, ["three"]=3, ["four"]="four" }.大神请教!
再答: 先把第一个贴完:    switch(max)
    {
    case sum1:
        printf("{ "a", "b" },");
        break;
    case sum2:
        printf("{ "c" }, ");
        break;
    case sum3:
        printf(" { "a", "d" },");
        break;
    } 
    
    switch(middle)
    {
    case sum1:
        printf("{ "a", "b" },");
        break;
    case sum2:
        printf("{ "c" }, ");
        break;
    case sum3:
        printf(" { "a", "d" },");
        break;
    } 
    switch(min)
    {
    case sum1:
        printf("{ "a", "b" },");
        break;
    case sum2:
        printf("{ "c" }, ");
        break;
    case sum3:
        printf(" { "a", "d" },");
        break;
    } 
   printf("}");
}