回 帖 发 新 帖 刷新版面

主题:入门必做的题

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

161 楼


既然大家都参加了!!
那我也来了^^^^^

162 楼

哈哈
比较难
不过还是来看一下^_^

163 楼

第七题用vb 做的
Option Base 1
Dim temp As String
Dim filenum As Integer

Private Sub Command1_Click()
filenum = FreeFile
Open "d:\f1.txt" For Output As #filenum
      Print #filenum, Text1.Text
      Text1.Text = ""
      MsgBox "文件己写入", 48, "文件写入"
Close #filenum
End Sub

Private Sub Command2_Click()
Dim t As String, n As Integer, msg As String
Dim c As String, msg1 As String, whole As String, whold As String
filenum = FreeFile

Open "d:\f1.txt" For Input As #filenum
Do While Not EOF(filenum)
      Line Input #filenum, temp
      whole = whole + temp
Loop
Close #filenum


Open "d:\f2.txt" For Output As #2
      n = Len(whole)
For i = 1 To n + 1
    c = Mid(whole, i, 1)
     If c <> " " And i <> n + 1 Then
       msg = msg + c
    Else
       If Left(msg, 1) <> "a" And Right(msg, 1) <> "n" Then
           whold = whold + msg + Space(1)
       Else
           For j = Len(msg) To 1 Step -1
               msg1 = msg1 + Mid(msg, j, 1)
           Next j
               whold = whold + msg1 + Space(1)
               msg1 = ""
        End If
        msg = ""
    End If
Next i
Print #2, whold
Close #2

Open "d:\f2.txt" For Input As #3
 Do While Not EOF(3)
         Line Input #3, temp
 Loop
Text2.Text = temp
Close #3
End Sub

Private Sub Command3_Click()
Open "d:\f1.txt" For Input As #1
      Input #1, temp
Close #1
Text1.Text = temp
End Sub

Private Sub Form_Load()
Text1.Text = ""
Text2.Text = ""
End Sub

164 楼

用VC写的
// 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
#include <iostream>
#define n 5
using namespace std;

void display(int m[],int p)
{for (int i=0;i<p;i++)
      cout<<m[i]<<" ";
      cout<<endl;
}

int main()
{int a[n],t;
 for (int i=0;i<n;i++)
     cin>>a[i];
 for (i=0;i<n;i++)
      cout<<a[i]<<" ";
      cout<<endl;
 for (int count=0;count<n-1;count++)
 {t=a[0];
     for (i=0;i<n-1;i++)
           a[i]=a[i+1];
           a[n-1]=t;
           display(a,n);
 }
 return 0;
}

165 楼

这么多啊

166 楼

第二题  c语言
#include<stdio.h>
int judge_1(int *a)
{
    if(a[0]==1 && a[1]==1) return 1;
    return 0;
}/*第一条件*/




int judge_2(int *a)
{
    if(a[1]!=a[2]) return 1;
    return 0;
}

/*第二条件*/

int judge_3(int *a)
{
    if(a[2]==a[3]) return 1;
    return 0;
}
/*第三条件*/


int judge_4(int *a)
{
    if(a[3]+a[4]!=0) return 1;
    return 0;
}
/*第四条件*/

int judge_5(int *a)
{
    if(a[0]*a[3]*a[4]==1) return 1;
    return 0;
}
/*第五条件*/

int judge(int *a)
{       int s=1;
    if(a[0]==1) s*=judge_1(a);
    s*=judge_2(a);
    s*=judge_3(a);
    s*=judge_4(a);
    if(a[4]==1)
        s*=judge_5(a);
    return s;
}
/*判断条件*/


print(int *a)
{
    int i;
    for (i=0;i<5;i++)
        printf("%d",a[i]);
    printf("\n");
    return (0);
}
/*打印*/


main ()
{    int a[5]={0};
    int i,n,s,j;
    for (i=0;i<32;i++)
    {    n=0;s=i;
        while(s!=0)
        {
            a[n++]=s%2;s/=2;

        }
        while(n<5) a[n++]=0;
        s=judge(a);
        if(s==1) print(a);
    }  getch();
}

167 楼

第三题
#include <stdio.h>
void print_1(int n,int m)                              /*打印中间部分,n控制列*/
{
    int i;
    for(i=0;i<n;i++)
        if(m>0) printf("%d",m);
        else if(m==0) printf("J");
        else  printf("T");
}
void print_2(int n,int m,int flag)                              /*打印两边部分,n控制列*/
{
    int i;
    for(i=0;i<n;i++) {
        if(flag==1)         /*后半部分*/
        {    m--;
            if(m>0) printf("%d",m);
            else if(m==0) printf("J");
            else  printf("T");

        }
        else               /*前半部分*/
        {
            if(m>0) printf("%d",m);
            else if(m==0) printf("J");
            else  printf("T");
            m++;
        }
    }
}
main()
{
    int n,i,j=0,m;
    printf("please put in NO:");
    scanf("%d",&n);
    for(i=-1;i<((n-1)/2+(n-1)%2);i++)
    {
        print_2(j,-1,0);
        print_1(n-2*j,i);
        print_2(j,i,1);
        j++;
        printf("\n");
    }
    i-=3;j-=2;
    for(;i>=-1;i--)
    {
        print_2(j,-1,0);
        print_1(n-2*j,i+1);
        print_2(j,i+1,1);
        printf("\n");
        j--;
    }
    printf("\n");
    getch();
}

168 楼

第四题
#include <stdio.h>
int num,count=0;
void print(int n)
{
    int i;
    for(i=0;i<num;i++)
    {
        if(n>num) n=1;
        printf("%d",n);
        n++;count++;
    }
    printf("\n");
}
main()
{
    int i;
    printf("please put in NO:");
    scanf("%d",&num);
    for(i=1;i<=num;i++)
        print(i);
    printf("count=%d\n",count);
    getch();
}

169 楼

会的都做做啊,再把答案发出来.让我们参考一下.不过,入门题是不是太难了?

170 楼

   [em13][em13][em13][em13]

我来回复

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