主题:入门必做的题
GCC
[专家分:14380] 发布于 2006-04-14 11:53:00
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个回复)
151 楼
lisy [专家分:390] 发布于 2006-05-08 00:13:00
第四题:
#include <stdio.h>
#define N 4
int x[N][N];
int count=0;
void display();
int panduan(int m)
{
int i;
if (m/N>0) //如果垂直重复
{
for(i = 0;i<(m/N);i++)
{
if (x[i][m%N]==x[m/N][m%N])
{
return 1;
}
}
}
if (m%N>0)//如果水平重复
{
for(i = 0;i<(m%N);i++)
{
if (x[m/N][i]==x[m/N][m%N])
{
return 1;
}
}
}
return 0;
}
void jishuan(int m)
{
for(x[m/N][m%N]=1;x[m/N][m%N]<=N;x[m/N][m%N]++)
{
if (panduan(m)) // 如果重复继续循环
continue;
if(m<N*N-1)
{
jishuan(m+1);
}
else
{
display();
}
}
}
void display()
{
int i;
for(i=0;i<N*N;i++)
{
printf(" %d",x[i/N][i%N]);
if (i%N==N-1)
printf("\n");
}
printf("\n");
count++;
}
void main()
{
jishuan(0);
printf("all is %d",count);
}
第五题
#include <stdio.h>
#define N 2
main()
{
int out[100];
int count=0;
int i=1234;
do
{
out[count++]=i%N;
i=i/N;
} while(i>0);
do
{
printf(" %d" , out[--count]);
}while (count>0);
}
152 楼
海鸟 [专家分:0] 发布于 2006-05-08 09:01:00
做完这些题目才入门,那我干脆死了算了,没几个能入门的
153 楼
godzhang1 [专家分:30] 发布于 2006-05-08 17:02:00
这些题要怎么做啊?太难了。能把算法给出来么?
154 楼
lufeng [专家分:70] 发布于 2006-05-08 18:09:00
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
#include <iostream.h>
void main()
{
char a[15][15];
int i,j,n=12,g=2,f=49;
for(i=0;i<15;i++)
for(j=0;j<15;j++)
{
a[0][j]=a[14][j]='t';
a[i][0]=a[i][14]='t';
}
for(i=1;i<14;i++)
for(j=1;j<14;j++)
{
a[1][j]=a[13][j]='j';
a[i][1]=a[i][13]='j';
}
while(g<13)
{
for(i=g;i<=n;i++)
for(j=g;j<=n;j++)
{
a[g][j]=a[n][j]=f;
a[i][g]=a[i][n]=f;
}
n--;
f++;
g++;
}
int k=0;
for(i=0;i<15;i++)
for(j=0;j<15;j++)
{
cout<<a[i][j]<<" ";
k++;
if(k==15)
{
cout<<endl;
k=0;
}
}
}
看到第七题,目前只会做这个。
请问要想找到一个月薪3000元左右的工作,这些题要做多少才行?还是必须都会做啊?
155 楼
dardream [专家分:0] 发布于 2006-05-08 20:56:00
请问什麽是 算术计算竖式。???告訴我一下呗。[em18]
156 楼
self [专家分:40] 发布于 2006-05-09 10:07:00
看了才知道,自己连门都没入呀。努力呀。
157 楼
西门半月 [专家分:40] 发布于 2006-05-09 10:42:00
不知楼主可否行行好,给出这些题的答案,让我们这些菜鸟在做题的过程中可以参考一下
我是真的菜鸟啊,菜鸟被人欺呀。
159 楼
feitianlvying [专家分:0] 发布于 2006-05-10 00:06:00
能否将你的程序给写上注释??
那将非常感谢!~!!
160 楼
ywy25616 [专家分:60] 发布于 2006-05-10 11:23:00
不错,顶一下```
我来回复