| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2019 人关注过本帖
标题:两个让我抓狂的C语言编程题目,我搞了半天也没有搞定,不知道有高手能编出来 ...
只看楼主 加入收藏
wwbbqq
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-10-10
收藏
 问题点数:0 回复次数:13 
两个让我抓狂的C语言编程题目,我搞了半天也没有搞定,不知道有高手能编出来 !!
1. A、B、C、D、E五名学生有可能参加计算机竞赛,根据下列条件判断哪些
  人参加了竞赛:

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

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

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

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

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



  2. 打印一个 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
原来自己这么笨啊  
谢谢各位的帮助!!你们让我知道没有困难解决不了的,只是自己没有去动脑。有不多看别人的编程思想。
以后要好好练习

[[it] 本帖最后由 wwbbqq 于 2008-4-15 20:52 编辑 [/it]]
搜索更多相关主题的帖子: C语言 抓狂 计算机 
2008-04-14 15:43
lnhaing
Rank: 1
等 级:新手上路
帖 子:111
专家分:0
注 册:2008-1-30
收藏
得分:0 
这是LZ给大家的作业题?

我来自偶然! bitter C
2008-04-14 15:51
luozhibruce
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2008-4-12
收藏
得分:0 
LZ自己做吧,不难的
2008-04-14 16:11
bianfeng
Rank: 1
等 级:新手上路
帖 子:199
专家分:0
注 册:2007-11-28
收藏
得分:0 
来个没有技术含量的
#include "stdio.h"
int main()
{
   printf("TTTTTTTTTTTTTTT
           TJJJJJJJJJJJJJT
           TJ11111111111JT
           TJ12222222221JT
           TJ12333333321JT
           TJ12344444321JT
           TJ12345554321JT
           TJ12345654321JT
           TJ12345554321JT
           TJ12344444321JT
           TJ12333333321JT
           TJ12222222221JT
           TJ11111111111JT
           TJJJJJJJJJJJJJT
           TTTTTTTTTTTTTTT");
  retrun 0;
}
2008-04-14 17:27
bianfeng
Rank: 1
等 级:新手上路
帖 子:199
专家分:0
注 册:2007-11-28
收藏
得分:0 
够简单吧..效率高
2008-04-14 17:29
wwbbqq
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-10-10
收藏
得分:0 
我狂晕!!!!
难道没人知道 ???
2008-04-14 19:30
闪闪4521
Rank: 1
等 级:新手上路
帖 子:196
专家分:0
注 册:2007-11-30
收藏
得分:0 
都蛮简单的,
自己做
2008-04-14 19:37
303770957
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:838
专家分:2125
注 册:2005-9-10
收藏
得分:0 
#include<stdio.h>
   #define min(a,b) (((a)<(b))?(a):(b))
   #define MinOfFour(a,b,c,d) min( (min(a,b)), (min(c,d)) )
   int main(void)
   {
   char Charactor[] = "TJ123456789";
   int n,mid;
   int i,j;
   scanf("%d",&n);
   mid = n/2;
   for(i=0; i<n; ++i)
   {
   for(j=0; j<n; ++j)
   {
   putchar(Charactor[MinOfFour(i,j,n-i-1,n-j-1)]);
   }
   putchar('\n');
   }
   getch();
   return 0;
   }

♂ 死后定当长眠,生前何须久睡。♀
2008-04-14 21:29
303770957
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:838
专家分:2125
注 册:2005-9-10
收藏
得分:0 
#include <stdio.h>
main()
   { int a,b,c,d,e; /*其中值1为参加,0为不参加*/
   for(a=0;a<=1;a++)
   for(b=0;b<=1;b++)
   for(c=0;c<=1;c++)
   for(d=0;d<=1;d++)
   for(e=0;e<=1;e++)
   
   if(((b&&!c)||(!b&&c))&&((c&&d)||(!c&&!d))&&(!(!d&&!e))&&(!(!d&&!e)))
  /*分别代表条件2~4*/
     
   if((a&&b||!a)&&(e&&(a&&d)||!e))/*代表条件1和5,特别注意a,e不一定参加*/
   printf("\n\na=%d b=%d c=%d d=%d e=%d\n",a,b,c,d,e);
   getch();
   return 0;
   }

♂ 死后定当长眠,生前何须久睡。♀
2008-04-14 21:36
303770957
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:838
专家分:2125
注 册:2005-9-10
收藏
得分:0 
#include<stdio.h>
#define TestBit(number,bit) (((number)&(1<<(bit)))!=0)
int main(void)
   {
   int i,j;
   for(i=0; i<32; ++i)
   {
   if( TestBit(i,0) && !TestBit(i,1) ) /*  A参加但B不参加,不符合第一条 */
   continue;
   if( TestBit(i,1) && TestBit(i,2) ) /*  B和C都参加,不符合第二条 */
   continue;
   if( TestBit(i,2) != TestBit(i,3) ) /*  C和D只有一个参加,不符合第三条 */
   continue;
   if( !TestBit(i,3) && !TestBit(i,4) ) /*  D和E都没参加,不符合第四条 */
   continue;
   if( TestBit(i,4) && !(TestBit(i,0)&&TestBit(i,3)) )
   /*  D参加,但A和D不全参加,不符合第五条 */
   continue; printf("参加竞赛的人是:\n");
   for(j=0;j<5;++j)
   if(TestBit(i,j))
   putchar('A'+j);
   printf("\n");
   }
   getch();
   return 0;
   }

♂ 死后定当长眠,生前何须久睡。♀
2008-04-14 21:37
快速回复:两个让我抓狂的C语言编程题目,我搞了半天也没有搞定,不知道有高手能 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021463 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved