回 帖 发 新 帖 刷新版面

主题:入门必做的题

1.  给定等式  A B C D E     其中每个字母代表一个数字,且不同数字对应不
                    D F G     同字母。编程求出这些数字并且打出这个数字的
             +      D F G     算术计算竖式。

             ───────

                X Y Z D E



  2. A、B、C、D、E五名学生有可能参加计算机竞赛,根据下列条件判断哪些
  人参加了竞赛:

   (1)A参加时,B也参加;

   (2)B和C只有一个人参加;

   (3)C和D或者都参加,或者都不参加;

   (4)D和E中至少有一个人参加;

   (5)如果E参加,那么A和D也都参加。



  3. 打印一个 N*N 的方阵,N为每边           N=15  打印出下面图形
 字符的个数(3<N<20), 要求最               TTTTTTTTTTTTTTT
 外一层为"T", 第二层为"J", 从第三层               TJJJJJJJJJJJJJT
 起每层依次打印数字 1,2,3,...                     TJ11111111111JT
 (右图以N为15为例)                           TJ12222222221JT
                                                  TJ12333333321JT
                                                  TJ12344444321JT
                                                  TJ12345554321JT
                                                  TJ12345654321JT
                                                  TJ12345554321JT
                                                  TJ12344444321JT
                                                  TJ12333333321JT
                                                  TJ12222222221JT
                                                  TJ11111111111JT
                                                  TJJJJJJJJJJJJJT
                                                  TTTTTTTTTTTTTTT



  4. 在N行N列的数阵中, 数K(1〈=K〈=N)在每行和每列中出现且仅
  出现一次,这样的数阵叫N阶拉丁方阵。例如下图就是一个五阶拉丁方阵。
  编一程序,从键盘输入N值后,打印出所有不同的N阶拉丁方阵,并统计个数。

        1  2  3  4  5
        2  3  4  5  1
        3  4  5  1  2
        4  5  1  2  3
        5  1  2  3  4


  5. 输入一个十进数,将其转换成 N 进制数(0<N<=16)。

回复列表 (共635个回复)

401 楼

这些题挺面熟的-,-

402 楼

第一题:
不过时间代价好像太多了点吧.有没有简单的解法?
#include <iostream.h>
#include <stdlib.h>
void main()
{
    int a,b,c,d,e,f,g,x,y,z;
    for (a=1;a<=9;a++)
        for (b=0;b<=9;b++)
            for (c=0;c<=9;c++)
                for (d=1;d<=9;d++)
                    for (e=0;e<=9;e++)
                        for (f=0;f<=f;c++)
                            for (g=0;g<=9;g++)
                                for (x=1;x<=9;x++)
                                    for (y=0;y<=9;y++)
                                        for (z=0;z<=9;z++)
                                        {
                                            if ((c<=9)&&(a*10000+b*1000+c*100+d*10+e+d*200+f*20+2*g-x*10000-y*1000-z*100-d*10-e)==0)
                                            {
                                                //cout<<c<<endl;
                                                cout<<a<<'\t'<<b<<'\t'<<c<<'\t'<<d<<'\t'<<e<<'\t'<<f<<'\t'<<g<<'\t'<<x<<'\t'<<y<<'\t'<<z<<'\n'<<endl;
                                                continue;
                                            }
                                        }
}

403 楼

这些题绝对不是初学C/C++的人可以完成的。鉴定完毕。

(用pascal参加过ACM/NOI,转学C/C++者除外)

404 楼


请问哪里能够给答案呢谢谢

405 楼

我都马上做拉~~但有难度啊~~

406 楼

好想去学啊~~好羡慕你们啊~我不知道从何学起啊~~~我才高2~有人教教不?>

407 楼

我在ACCP4.0培训C语言半年了,自以为学得应该还可以了.可是看到这些题目之后才发现,我一个题目都不会做啊,真是不好意思,我打印的题目出来研究了好久还是不会,各位大哥大姐有强人的还是把答案贴出来吧!谢谢

408 楼

有没有答案啊,一个晚上做了两道题还是错的啊

409 楼


果然好贴,准备 试试

410 楼

确实是不错的题

我来回复

您尚未登录,请登录后再回复。点此登录或注册