免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3589 | 回复: 12

[C] 急!会的帮下做两个c语言的题目 [复制链接]

论坛徽章:
0
发表于 2007-07-06 09:22 |显示全部楼层
1可用积分
1、        写出以下程序的输出结果:
main()
{
char str[]="7654321";
char *pstr;
pstr=str;
printf("%c",*pstr++);
printf("%c",*pstr);
printf("%c",*++pstr);
printf("%c",++*pstr);
}
2、阅读下列程序说明和C代码,将应填入__(n)__处的字句写出。
[程序说明]
设 M 叉树采用列表法表示,即每棵子树对应一个列表,列表的结构为:子树根结点的值部分 (设为一个字符) 和用"( )",括起来的各子树的列表 (如有子树的话) ,各子列表间用",",分隔。例如下面的三叉树可用列表 a( b( c,d ),e,f( g,h,i ))表示。
本程序输入列表,生成一棵 M 叉树,并由 M 叉树将子节点方向输出列表。假定输入无错误。
[程序]
#include〈stdio.h〉
#include〈stdlib.h〉
#define M 3

typedef struct node{
char val;
struct node *subTree[M];
} NODE;

char buf[255] ,*str = buf;
NODE *d = NULL;

NODE *makeTree( ) /*由列表生成M叉树*/
{
int k; NODE *s ;
s = __(1)__;
s -> val = *str++ ;
for ( k = 0 ; k < M ; k++ ) s-> subTree[k] = NULL ;
if(*str=='('){
k = 0;
do
{
str++;
s -> subTree[k] = __(2)__ ;
if ( *str == ')' ) { str++; break ; }
k = k+1 ;
        } while ( __(3)__ );
}
return s ;
}

void walkTree( NODE *t ) /*由 M 叉树反向输出列表*/
{
int i ;
if ( t != NULL)
{
__(4)__;
if ( t -> subTree[0] == NULL ) return ;
putchar ( '( ' ) ;
for ( i = M-1 ; i >=0 ; i--)
{
if (t->subTree != NULL )
{
__(5)__;
if ( i != 0 )
__(6)__ ;
}
}
putchar ( ') ' ) ;
}
}

void main( )
{
printf( "Enter exp:" ) ;
scanf( "%s" , str ) ;
d = makeTree() ;
walkTree( d ) ; putchar( '\n') ;

论坛徽章:
0
发表于 2007-07-06 11:11 |显示全部楼层
1结果
7656

论坛徽章:
0
发表于 2007-07-06 14:09 |显示全部楼层
哈哈,重赏之下必有勇夫,不过俺不想要这个~

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
发表于 2007-07-06 14:39 |显示全部楼层
原帖由 cugb_cat 于 2007-7-6 14:09 发表
哈哈,重赏之下必有勇夫,不过俺不想要这个~

这种悬赏贴就应该直接把分扣了,然后再关贴。

论坛徽章:
0
发表于 2007-07-06 14:57 |显示全部楼层
原帖由 MMMIX 于 2007-7-6 14:39 发表

这种悬赏贴就应该直接把分扣了,然后再关贴。

以后谁发这种帖子,就直接把分扣光

论坛徽章:
0
发表于 2007-07-06 16:39 |显示全部楼层
第一题,有人不要分就会告诉你,编译器!

论坛徽章:
0
发表于 2007-07-06 16:47 |显示全部楼层
垃圾帖
这种问题这里不会有人回答的

论坛徽章:
1
15-16赛季CBA联赛之四川
日期:2016-02-15 17:12:32
发表于 2007-07-06 19:38 |显示全部楼层
像南京某单位的面试题

论坛徽章:
0
发表于 2007-07-09 06:38 |显示全部楼层
强烈抵制现在的教育,这种题,问他自己去吧,
要不给个电脑考试

论坛徽章:
0
发表于 2007-07-09 10:57 |显示全部楼层
第2题的程序有问题,解决不了问题。

首先程序建立树的过程中没有就subTree的val进行赋值,可想而知当walkTree的时候得不到想要的结果(walkTree部分我没看...)。

其次,程序只能处理a(b,e,f),不能处理a(b(c,d),e,f(g,h,i))这样带有递归性质的输入。并且如果按照输入顺序建立树,那么只能是纵向(或者说深度优先)建立。

其他没怎么看,不能处理递归性质输入是程序的致命伤。

说的不对,请大家拍砖
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP