哈尔滨工业大学2012-2009计算机研究生考试机试编程带答案(6)

本站小编 半岛在线注册/2016-02-06


    {
        c=1;
        for(i=1;i<11;i++)   //数组b[i]记录i的出现次数,初始化为0,b[0]未用
            b[i]=0;

        for(i=0;i<20;i++)   //统计各个数(1~10)的个数
        {
            b[a[i]]+=1;
        }

        for(i=1;i<11;i++)   //求出现次数最多且最小的那个数
        {
            if(b[c]<b[i])
                c=i;
        }

        printf("%d\n",c);

    }

    return 0;
}


哈尔滨工业大学复试编程试题(2012)

题目描述:
一个百万富翁遇到一个陌生人,陌生人找他谈了一个换钱的计划。该计划如下:我每天给你10 万元,你第一天给我1 分钱,第二天2 分钱,
第三天4 分钱……
这样交换 30 天后,百万富翁交出了多少钱?陌生人交出了多少钱?(注意一个是万元,一个是分)
输入:
该题没有输入
输出:
输出两个整数,分别代表百万富翁交出的钱和陌生人交出的钱,富翁交出的钱以万元作单位,陌生人交出的钱以分作单位。

参考答案:
#include<stdio.h>
#include<math.h>
void main()
{
int sum_a=0, per_day_1=10;   //富人总共得到的money
long sum_b=0, per_day_2=1;
int i ;
for(i=0; i<30; i++)
{
  sum_a+=per_day_1;
  sum_b+=per_day_2;
  per_day_2 *= 2;
}
printf("%d %ld\n",sum_a,sum_b);
}

题目描述:
不用strcat 函数,自己编写一个字符串链接函数MyStrcat(char dstStr[],charsrcStr[])
输入:
两个字符串,字符串由小写字母组成。
输出:
链接后的字符串
样例输入:
hello world
good morning
样例输出:
helloworld
goodmorning

参考答案:
#include<stdio.h>
#include<string.h>


void MyStrCat(char dstStr[], char srcStr[])
{
    int i,j;
    for(i=0; dstStr[i]!=0; i++);
    for(j=0; srcStr[j]!=0; j++)
    {
        dstStr[i++] = srcStr[j];
    }
    dstStr[i] = 0;
}

int main()
{
    char a[25],b[25];

    while(scanf("%s",a)!=EOF&&scanf("%s",b)!=EOF)
    {
        MyStrCat(a,b);

        printf("%s\n",a);

    }

    return 0;
}

题目描述:
计算两个矩阵的乘积,第一个是2*3,第二个是3*2
输入:
输入为两个矩阵,其中一个为2*3的矩阵,另一个为3*2的矩阵
输出:
一个2*2的矩阵(每一个数字后都跟一个空格)
样例输入:
1 2 3
3 4 5
6 7
8 9
10 11
样例输出:
52 58
100 112

参考答案:
    #include<stdio.h>

    int main()
    {
        int a1, b1, c1;
        int d1, e1, f1;

        int a2, b2;
        int c2, d2;
        int e2, f2;

        int a, b;
        int c, d;

        while(scanf("%d%d%d%d%d%d",&a1,&b1,&c1,&d1,&e1,&f1)!=EOF&&
        scanf("%d%d%d%d%d%d",&a2,&b2,&c2,&d2,&e2,&f2)!=EOF)
        {
            a = a1*a2 + b1*c2 + c1*e2;
            b = a1*b2 + b1*d2 + c1*f2;
            c = d1*a2 + e1*c2 + f1*e2;
            d = d1*b2 + e1*d2 + f1*f2;

相关话题/计算机