免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1564 | 回复: 3
打印 上一主题 下一主题

[C] 帮忙看下c语言的题目(急要答案) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-07-06 09:12 |只看该作者 |倒序浏览
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
2 [报告]
发表于 2007-07-06 09:52 |只看该作者
作业贴

论坛徽章:
0
3 [报告]
发表于 2007-07-06 13:20 |只看该作者
第一个自己运行一下就知道了,第二个最好自己去解答。
不能指望别人什么都替你完成。

论坛徽章:
0
4 [报告]
发表于 2007-07-06 13:24 |只看该作者
版主快来锁之
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP