




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【程序61】题目:打印出杨糠三角形(要求打印出10行如下图)1•程序分析:TOC\o"1-5"\h\z121133114641151010512.程序源代码:main(){inti,j;inta[10][10];printfCAn11);for(i=0;i<10;i++){a[i][0]=l;a[i][>]=l;}for(i=2;i<10;i++)forG=l;j<i;j++)a[i]U]=a[>-l]U-l]+a[i-l]Dl;for(i=0;i<10;i++){for(j=0;j<=i;j++)printf(”%5d",a[i][j]);printf("\n");}}【程序62】题13:学习putpixel画点。程序分析:程序源代码:#includeMstdio.hu#inelude"graphics.h”main(){intijzdriver=VGAzmode=VGAHI;initgraph(&driver;&modez,,M);setbkcolor(YELLOW);for(i=50;i<=230;i+=20)for(j=50;j<=230;j++)putpixel(iji);for(j=50;j<=230;j+=20)for(i=50;i<=230;i++)putpixel(iji);}【程序63]题目:画椭圆ellipse程序分析:程序源代码:#include"stdio.h”#inelude"graphics.h”#include”conio.h”main(){intx=360,y=160/driver=VGAzmode=VGAHI;intnum=20,i;inttop,bottom;initgraph(&driver;&modez,,M);top=y-30;bottom=y-30;for(i=0;i<num;i++){ellipse(250/250/0,360/top,bottom);top-=5;bottom+=5;}getch();}【程序64]题13:利用ellipseandrectangle画图。程序分析:程序源代码:#include"stdio.h”#inelude"graphics.h”#include”conio.h”main(){intdriver=VGAzmode=VGAHI;inti/num=15/top=50;intleft=2O,right=5O;initgraph(&driver;&modez,,M);for(i=0;i<num;i++){ellipse(250/250/0z360/right,left);ellipse(250/250/0,360/20/top);rectangle(20-2*i,20-2*iz10*(i+2),10*(i+2));right+=5;left+=5;top+=10;}getch();}【程序65]题目:一个最优美的图案。程序分析:程序源代码:#inelude"graphics.h”#include”math.h”#include"dos.h"#include”conio.h”#include”stdlib.h”#includeMstdio.hu#includeMstdarg.hM#defineMAXPTS15#definePI3.1415926structPTS{intx,y;};doubleAspectRatio=0.85;voidLineToDemo(void){structviewporttypevp;structPTSpoints[MAXPTS];inti,j,h,w,xcenter;ycenter;intradius,angle,step;doublerads;printf(HMoveTo/LineToDemonstration*');getviewsettings(&vp);h=vp.bottom・vp.top;w=vp.right-vp」eft;xcenter=w/2;/*Determinethecenterofcircle*/ycenter=h/2;radius=(h-30)/(AspectRatio*2);step=360/MAXPTS;/*Determine#ofincrements*/angle=0;/*Beginatzerodegrees*/for(i=0;i<MAXPTS;++i){/*Determinecircleintercepts*/rads=(double)angle*PI/180.0;/*Convertangletoradians*/points[i].x=xcenter+(int)(cos(rads)*radius);points[i].y=ycenter・(int)(sin(rads)*radius*AspectRatio);angle+=step;/*Movetonextincrement*/}circle(xcenter;ycenter;radius);/*Drawboundingcircle*/for(i=0;i<MAXPTS;++i){/*Drawthecordstothecircle*/for(j=i;j<MAXPTS;++j){/*Foreachremainingintersect*/moveto(points[i].x,points[i].y);/*Movetobeginningofcord*/lineto(points[j].x,points[j].y);/*Drawthecord*/}}}main(){intdriver;mode;driver=CGA;mode=CGACO;initgraph(&driver;&modez,,M);setcolor(3);setbkcolor(GREEN);LineToDemo();}_【程序66]题13:输入3个数a,b,c.按大小顺序输出。程序分析:利用指针方法。程序源代码:/*pointer*/main(){intnI,n2,n3;int*pointerl,*pointer2,*pointer3;printf(Hpleaseinput3number:nl,n2,n3:”);scanf(”%dz%d,%d:&nI,&n2,&n3);pointerl=&nl;pointer2=&n2;pointer3=&n3;if(nl>n2)swap(pointerl/pointer2);if(nl>n3)swap(pointerl/pointer3);if(n2>n3)swap(pointer2,pointer3);printf(Hthesortednumbersare:%d/%d/%d\n",nl/n2zn3);}swap(pl,p2)int*plz*p2;{intp;p=*pl;*pl=*p2;*p2=p;}【程序67]题13:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。程序分析:谭浩强的书中答案有问题。程序源代码:main(){intnumber[10];input(number);max_min(number);output(number);}input(number)intnumber[10];{inti;for(i=0;i<9;i++)scanf("%d/,/&number[i]);scanf("%dM/&number[9]);}max_min(array)intarray[10];{int*max,*min,k,l;int水Pf*arr_end;arr_end=array+10;max=min=array;for(p=array+l;p<arr_end;p++)if(*p>*max)max=p;elseif(*pmin=p;k=*max;*p=array[O];array[O]=l;l=*p;*p=array[9];array[9]=k;k二*p;return;}output(array)intarray[10];{int*p;for(p=array;p<array+9;p++)printf(M%d;\*p);printf(H%d\nHzarray[9]);}【程序68]题目:有n个整数,使其前而各数顺序向后移m个位置,最后m个数变成最前而的m个数程序分析:程序源代码:main(){intnumber[20]八m);printf(Hthetotalnumbersis:J;scanf(,,%d,,z&n);printf(Hbackm:H);scanf(,,%dHz&m);for(i=0;i<n-l;i++)scanf("%d/,/&number[i]);scanf(,,%dl,z&number[n-l]);move(number)n’m);for(i=0;i<n-l;i++)printf("%d,;number[i]);printf(”%d;number[n・l]);}move(arra沁m)intnzmzarray[20];{int*pzarray_end;array_end=*(array+n・i);for(p=array+n-l;p>array;p-)*p=*(p-l);*array=array_end;m—;if(m>0)move(arramm);}【程序69】题目:有n个人用成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。程序分析:程序源代码:#definenmax50main(){intikn\i\num[nmaxb*p;printf(Hpleaseinputthetotalofnumbers:'1);scanf(M%du,&n);p二num;for(i=0;i<n;i++)*(p+i)=i+l;i=0;k=0;m=0;while(m<n-l){if(*(p+i)!=O)k++;if(k==3)<*(p+i)=0;k=0;m++;}i++;if(i==n)i=0;}while(*p==O)p++;printf(H%disleft\nHz*p);}【程序70]题目:写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。程序分析:程序源代码:main(){intlen;char*str[20];printf(Hpleaseinputastring:\nH);scanf(”%s:str);len=length(str);printf(Hthestringhas%dcharacters.'Jen);}length(p)char*p;{intn;n=0;while(*p!=,\0,){n++;P++;}returnn;}【程序71】题目:编写input()和output。函数输入,输出5个学生的数据记录。程序分析:程序源代码:#defineN5structstudent{charnum[6];charname[8];intscore[4];}stu[N];input(stu)structstudentstu[];{inti,j;for(i=0;i<N;i++){printf("\npleaseinput%dof%d\n"/i+l,N);printf(Hnum:”);scanf(”%s:stu[i].num);printf(Hname:");scanf(”%s:stu[i].name);for(j=0;j<3;j++){printf(Hscore%d・:j+l);scanf(”%d:&stu[i].score[j]);}printf("\n");}}print(stu)structstudentstu[];{inti,j;printf(H\nNo.NameScolSco2Sco3\nu);for(i=0;i<N;i++){printf(,,%-6s%-10s,,/stu[i].num,stu[i].name);for(j=0;j<3;j++)printf(,,%-8d,,/stu[i].score[j]);printf("\n");}}main(){input();print();}【程序72】题目:创建一个链表。程序分析:程序源代码:/*creatalist*/#include"stdlib.h”#includeMstdio.hustructlist{intdata;structlist*next;};typedefstructlistnode;typedefnode*link;voidmain(){linkpt^head;intnum);ptr=(link)malloc(sizeof(node));ptr=head;printf(Hpleaseinput5numbers==>\rT);for(i=0;i<=4;i++){scanf(H%dMz&num);ptr->data=num;ptr->next=(link)malloc(sizeof(node));if(i==4)pt「>next=NULL;elseptr=ptr->next;}ptr=head;while(ptr!=NULL){printf("Thevalueis==>%d\nu,ptr->data);ptr=ptr->next;}}【程序73]题目:反向输出一个链表。程序分析:程序源代码:/*reverseoutputalist*/#include”stdlib.h”#include"stdio.h”structlist{intdata;structlist*next;};typedefstructlistnode;typedefnode*link;voidmain(){linkptr;headztail;intnum,i;tail=(link)malloc(sizeof(node));tail->next=NULL;ptr=tail;printf(M\npleaseinput5data==>\nH);for(i=0;i<=4;i++){scanf(”%d:&num);ptr->data=num;head=(link)malloc(sizeof(node));head-〉next=ptr;ptr=head;ptr=ptr->next;while(ptr!=NULL){printf(HThevalueis==>%d\n,,,ptr->data);ptr=ptr->next;}}【程序74]题目:连接两个链表。程序分析:程序源代码:★includeMstdlib.hM#includeMstdio.hustructlist{intdata;structlistext;};typedefstructlistnode;typedefnode*link;linkdelete_node(linkpointerjinktmp){if(tmp==NULL)/*deletefirstnode*/returnpointer->next;else{if(tmp->next->next==NULL)/*deletelastnode*/tmp->next=NULL;else/*deletetheothernode*/tmp->next=tmp->next?>next;returnpointer;}}voidselection_sort(linkpointepintnum){linktmpzbtmp;intizmin;for(i=0;i<num;i++){tmp=pointer;min=tmp->data;btmp=NULL;while(tmp->next){if(min>tmp->next->data){min=tmp->next->data;btmp=tmp;}tmp=tmp->next;}printf(H\40:%d\n:min);pointer=delete_node(pointer;btmp);}}linkcreatejist(intarray[],intnum){linktmpl,tmp2/pointer;inti;pointer=(link)malloc(sizeof(node));pointer->data=array[0];tmpl=pointer;for(i=l;i<num;i++){tmp2=(link)malloc(sizeof(node));tmp2->next=NULL;tmp2->data=array[i];tmpl->next=tmp2;tmpl=tmpl->next;}returnpointer;}linkconcatenate(linkpointerljinkpointer2){linktmp;tmp=pointerl;while(tmp->next)tmp=tmp->next;tmp->next=pointer2;returnpointer1;}voidmain(void){intarrl[]={3,12/8/9zll};linkptr;ptr=create_list(arrl,5);selection_sort(ptr;5);}【程序75]题13:放松一下,算一道简单的题目。程序分析:程序源代码:main(){inti,n;for(i=l;i<5;i++){n=0;if(i!=l)n=n+l;if(i==3)n=n+l;if(i==4)n=n+l;if(i!=4)n=n+l;if(n==3)printf("zhuhaoshideshi:%c:64+i);}}【程序76]题目:编写一个函数,输入n为偶数时,调用函数求l/2+1/4+...+l/n,当输入n为奇数时,调用函数l/l+l/3+...+l/n(利用指针函数)程序分析:程序源代码:main()#include"stdio.h”main(){floatpeven(),podd(),dcall();floatsum;intn;while(1){scanf(“%d;&n);if(n>l)break;}if(n%2==0){printf(”Even=”);sum=dcall(peven,n);}else{printf("Odd=M);sum=dcall(poddfn);}printf(”%f:sum);}floatpeven(intn)floats;inti;s=l;for(i=2;i<=n;i+=2)s+=l/(float)i;return(s);}floatpodd(n)intn;{floats;inti;s=0;for(i=l;i<=n;i+=2)s+=l/(float)i;return(s);}floatdcall(fp,n)float(*fp)();intn;{floats;s=(*fp)(n);return(s);}【程序77]题目:填空练习(指向指针的指针)程序分析:程序源代码:main(){char*s[]={”manTwomanTgirlTboyTsisterJ;char**q;intk;for(k=0;k<5;k++){;/*这里填写什么语句*/printf(,,%s\n,,/*q);}}【程序78]题目:找到年龄最大的人,并输出。请找出程序中有什么问题。程序分析:程序源代码:#defineN4#includeMstdio.hustaticstructman{charname[20];i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人教版数学学习强化训练计划
- 食品检验中心质量保障工作计划
- 水务合作开发协议书范文
- 五年级语文下册语文竞赛组织计划
- 2025年小学德育校园文化活动计划
- 东坑公园景观设计分析
- 动漫美型眼睛绘制技法教学课件
- 科技公司创新型育人计划
- 小学校本课程《健康饮食》教学计划
- 幼儿社会教育与指导过新年
- 2024年广东大亚湾开发区招聘公办学校教师笔试真题
- 江苏交控笔试试题及答案
- JJF1033-2023计量标准考核规范
- 三对三篮球赛记录表
- 被执行人财产线索提供书(模板)
- HP系列培训手册
- 毕业论文-原油电脱水方法与机理的研究
- 陕西省2022年普通高中学业水平考试(真题)
- 事故池管理的有关规定
- 2021-2022学年甘肃省天水市第一中学高一下学期第二阶段考物理试题(原卷版)
- GE全球供应链的管理与实践
评论
0/150
提交评论