回 帖 发 新 帖 刷新版面

主题:入门必做的题

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个回复)

491 楼

int a,b,c;
    printf("a :\n");
    scanf("%d",&a);
    printf("enter the sc :\n");
    scanf("%d",&b);
    c=a+b;
    printf("the result is %d",c);
    return 0 ;
当我用这个C程序时候,如果是8010000+99999999,得出的结果就是错误的,希望帮我,

492 楼

好难呀   有答案吗   

493 楼

GCC大哥,有没有简单一点的题?这些我都不会啊!(而且还没有答案)

494 楼


这个关于猴子当大王的题  该如何设计啊望予以帮助

495 楼

我的天啊。。。我连入门都困难啊。。。

496 楼

高酬寻编程高手,软件制作,小型游戏开发.
各种游戏外挂制作,有意者联系QQ:742050747
加我请注名,外挂字样.

497 楼

第四题答案:
#include<iostream.h>
#define MAX 100
int main()
{
    int  n, i, j;
    cout << " input a integer number: ";
    cin >> n;
    int a[ MAX ];
    for( i = 0; i <  n; i ++ )
    {
        a[ i ] = i + 1;
    }
    for(  i = 0; i < n; i ++ )
    {
    
        for(  j = 0; j < n; j++ )
        {
            if( ( i + j ) < n)
            cout << a[ i + j ] << ' ';
            else 
               cout << a[i + j - n] << ' ';
        }
    
        
        cout << endl;
        
    }
    return 0;
}

498 楼

自己做了几个觉得简单的  第8题
// rumen.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#define max_lenth 17

int main(int argc, char* argv[])
{
    int x1=0,x2=0;
    bool xx1[max_lenth],xx2[max_lenth];//共17位 最高位作符号位(xx1[max_lenth-1])  后边16位为数据 
    int i=0;

    for (i=0;i<=max_lenth-1;i++)
    {
        xx1[i]=xx2[i]=0;
    }

    cout<<"intput two numbers必须是正整数"<<endl;
    cin>>x1>>x2;

//转换x1
    i=0;
    if (x1>=0)
        xx1[max_lenth-1]=0;
    else
    {
        xx1[max_lenth-1]=1;
        x1*=(-1);
    }
    while (x1!=0)
    {
        xx1[i]=x1%2;
        x1/=2;
        i++;
    }

    

//转换x2
    i=0;
    if (x2>=0)
        xx2[max_lenth-1]=0;
    else
    {
        xx2[max_lenth-1]=1;
        x2*=(-1);
    }
    while (x2!=0)
    {
        xx2[i]=x2%2;
        x2/=2;
        i++;
    }    

//显示转化之后的x1  x2  显示符号位了
    for (i=max_lenth-1;i>=0;i--)
        cout<<xx1[i];
    cout<<endl;
    for (i=max_lenth-1;i>=0;i--)
        cout<<xx2[i];
    cout<<endl;
    
    bool xx3[max_lenth];//储存运算结果
    for (i=0;i<max_lenth;i++)
        xx3[i]=0;


//加法运算

    
    bool flag_carry=0;//进位  0为不需要进位    
    int     flag_of=0,//溢出   0为没有溢出
        a=0,b=0;//用于位和位之间的运算
    
    if (xx1[max_lenth-1]==0&&xx2[max_lenth-1]==0)//如果两个数都是正数
    {
        flag_of=0;
        for (i=0;i<max_lenth-2;i++)
        {
            a=xx1[i];    b=xx2[i];
            if (a+b+flag_carry==0)
            {
                xx3[i]=0;
                flag_carry=0;
            }
                
            else if (a+b+flag_carry==1)
            {
                xx3[i]=1;
                flag_carry=0;
            }
                
            else if(a+b+flag_carry==2)
            {
                xx3[i]=0;
                flag_carry=1;
            }
            else if (a+b+flag_carry==3)
            {
                xx3[i]=1;
                flag_carry=1;
            }
            
        }
        if (a+b+flag_carry>1)
            flag_of=1;
        xx3[max_lenth-1]=0;
    }

    else if (xx1[max_lenth-1]==1&&xx2[max_lenth-1]==1)//如果两个数都是负数
    {
        flag_of=0;
        for (i=0;i<max_lenth-2;i++)
        {
            a=xx1[i];    b=xx2[i];
            if (a+b+flag_carry==0)
            {
                xx3[i]=0;
                flag_carry=0;
            }
                
            else if (a+b+flag_carry==1)
            {
                xx3[i]=1;
                flag_carry=0;
            }
                
            else if(a+b+flag_carry==2)
            {
                xx3[i]=0;
                flag_carry=1;
            }
            else if (a+b+flag_carry==3)
            {
                xx3[i]=1;
                flag_carry=1;
            }
            
        }
        if (a+b+flag_carry>1)
            flag_of=1;
        xx3[max_lenth-1]=1;
    }

    else if (xx1[max_lenth-1]==1&&xx2[max_lenth-1]==0)
    {
    }

    for (i=max_lenth-1;i>=0;i--)
    {
        cout<<xx3[i];
    }
    cout<<endl;

//减法运算
    // 先求出负数的补码
//减法 乘除没做
    
    
    
    


    return 0;
}

499 楼

第10题
#include "iostream.h"

#define min(a,b) (((a)<(b))?a:b)

int main(int argc, char* argv[])
{
    int x=10,y=10;//方块的长度和高度
    int r=0;//储存结果
    for(int i=1;i<=x;i++)
    {
        for(int j=1;j<=y;j++)
        {
            //r+= min(j,i);
            r+=min(j,i);
        }
    }
    cout<<"result="<<r<<endl;
    return 0;
}

500 楼

我想自杀,我只是一个刚入门的小孩,能看一半就很不错了,你这不是要孩子命了么》??有时间给个答案好么》?/

我来回复

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