欢迎来到天天文库
浏览记录
ID:14923977
大小:53.50 KB
页数:31页
时间:2018-07-31
《算法设计五章习题答案》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、算法设计五章习题答案算法设计与分析(第二版)习题答案(第五章)主编:吕国英习题答案第五章1.#include#include#includestructs_node{chardata;structs_node*next;};typedefstructs_nodes_list;typedefs_list*link;linkstack=NULL;voidprint_stack(){linktemp=NULL;temp=stack;if(temp==NULL)printf("Th
2、estackisempty!!");else{while(temp!=NULL)//意思是如果temp=NULL的时候就不循环了{printf("[%d]",temp->data);temp=temp->next;}printf("");}}intis_empty(){if(stack==NULL)return1;elsereturn0;}voidpush(charvalue){linknewnode;//printf("Thestackcontentbefore(top->bottom):");//print_sta
3、ck();newnode=(link)malloc(sizeof(s_list));newnode->data=value;newnode->next=stack;stack=newnode;}intpop(){linktop;inttemp;//printf("Thestackcontentbefore(top->bottom):");//print_stack();if(stack!=NULL){top=stack;stack=stack->next;temp=top->data;free(top);returntemp;
4、}elsereturn-1;}intis_op(charch){if(ch=='+'
5、
6、ch=='-'
7、
8、ch=='*'
9、
10、ch=='/')return1;elsereturn0;}intis_num(charch){if(ch<='9'&&ch>='0')return1;return0;}voidtest(char*buf){intlen;inti;len=strlen(buf);for(i=0;i11、ak;}elsepush(buf[i]);}if(is_op(buf[i])){if(buf[i+1]==')'){printf("无效的表达式");break;}}if(is_num(buf[i])){if(buf[i+1]=='('){printf("无效的表达式");break;}}if(buf[i]==')'){if(pop()==-1){printf("无效的表达式");break;}}}if(is_empty()){printf("正确的表达式");}elseprintf("无效的表达式");}in12、tmain(){charbuf[100];printf("输入代数表达式");scanf("%s",buf);test(buf);return0;}2.#include#defineN5//N个数字#defineM2//M个加号charbuf[N];inta[N];charb[M+1][N];intc[M+1];inttry(intt);voidswap(intt1,intt2);intadd();voidoutput();intmin=99999;intmain(){inti;for(i=0;i13、){scanf("%c",&buf[i]);}a[0]=0;for(i=1;i<=M;i++){a[i]=1;}for(;i=N){sum=add();if(sum14、intf("");*/}else{for(j=t;j
11、ak;}elsepush(buf[i]);}if(is_op(buf[i])){if(buf[i+1]==')'){printf("无效的表达式");break;}}if(is_num(buf[i])){if(buf[i+1]=='('){printf("无效的表达式");break;}}if(buf[i]==')'){if(pop()==-1){printf("无效的表达式");break;}}}if(is_empty()){printf("正确的表达式");}elseprintf("无效的表达式");}in
12、tmain(){charbuf[100];printf("输入代数表达式");scanf("%s",buf);test(buf);return0;}2.#include#defineN5//N个数字#defineM2//M个加号charbuf[N];inta[N];charb[M+1][N];intc[M+1];inttry(intt);voidswap(intt1,intt2);intadd();voidoutput();intmin=99999;intmain(){inti;for(i=0;i13、){scanf("%c",&buf[i]);}a[0]=0;for(i=1;i<=M;i++){a[i]=1;}for(;i=N){sum=add();if(sum14、intf("");*/}else{for(j=t;j
13、){scanf("%c",&buf[i]);}a[0]=0;for(i=1;i<=M;i++){a[i]=1;}for(;i=N){sum=add();if(sum14、intf("");*/}else{for(j=t;j
14、intf("");*/}else{for(j=t;j
此文档下载收益归作者所有