资源描述:
《最新算法概要PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、算法概要(2)main(){chars[6];intn;get(s);if(*s==‘-’)n=-chnum(s+1);elsen=chnum(s);printf(“%d”,n);}chnum(char*p){intnum=0,k,len,j;len=strlen(p);for(;*p!=‘0’;p++){k=*p-’0’;j=(--len);while(j-->0){k=k*10;}num=num+k;}return(num);}输入-3456,输出?(6)以下函数功能?binary(inta[10],intm){i
2、ntlow=0,high=9,mid;while(low<=high){mid=(low+high)/2;if(ma[mid])low=mid+1;elsereturn(mid);}return(-1);}(7)输入19576,输出?voidconvert(intn){inti;if((i=n/10)!=0)convert(i);putchar(n%10+’0’);}main(){intnumber;scanf(“%d”,&number);if(number<0){p
3、utchar(‘-’);number=-number;}convert(number);}(8)输入6425,输出?voidconvert(char*a,intn){inti;if((i=n/10)!=0)convert(a+1,i);*a=n%10+’0’;}main(){intnumber;charstr[10]=“”;scanf(“%d”,&number);convert(str,number);puts(str);}(9)main(){charstring[100]=“acegfddcbag”,*p,*q,*r,c
4、;for(p=string;*p;p++){for(q=r=p;*q;q++)if(*r>*q)r=q;if(r!=p){c=*r;*r=*p;*p=c}}for(p=string;*p;p++){for(q=p;*p==*q;q++);strcpy(p+1,q);}printf(“%s”,string);}(10)longfunc(longnum){longk=1;num=labs(num);do{k*=num%10;num/=10;}while(num);returnk;}voidmain(){longn;scanf(
5、“%ld”,&n);printf(“%ld”,func(n));}输入123456,输出?(11)#includevoidmain(){chars[81],*p1,*p2;intn;gets(s);n=strlen(s);p1=s;p2=s+n-1while(p1voidmain(){char
6、*p,a[]={“Iamhappy.”};intmax=0,l=0;p=a;while(*p!=‘.’){while(((*p<=‘Z’)&&(*p>=‘A’))
7、
8、((*p<=‘z’)&&(*p>=‘a’))){l++;p++;}if(l>max)max=l;l=0;p++;}printf(“max=%d”,max);}(13)#includevoidmain(){charc[80];intd;gets(c);d=check(c);printf(“d=%d”,d);}check(char*s){intl
9、=0,r=0;while(*s!=‘ ’){if(*s==‘(’)l++;elseif(*s==‘)’){r++;if(r>l)return0;}s++;}return(l==r);}(14)两个乒乓球队进行比赛,各队出3人。甲队为A,B,C3人,乙队为X,Y,Z3人。以抽签决定比赛名单。有人向队员打听比赛的名单,A说他不和X比,C说他不和X,Z比。编程找出3对赛手的名单。/**设X,Y,Z三位队员的编号分别为1,2,3。设a,b,c分别表示A,B,C三位队员的对手编号。显然有a,b,c互不相同,因为每个人都有不同的对手
10、,即a!=b&&b!=c&&c!=a,另外依题意有a!=1&&c1=1&&c!=3成立,所以应满足条件a!=b&&b!=c&&c!=a&&a!=1&&c!=1&&c!=3*/#include“stdio.h”main(){inta,b,c;for(a=1;a<=3;a++)for(b=1;b<=3;b+