资源描述:
《计算机软件基础课程设计1》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、要求:写出解题思路、程序、程序注释以及运行结果。1、编写程序,计算下列多项式的值并输出,直到最后一项的值小于0.0001I1112!3!/?!解题思路:1)先求阶乘k*=i2)再求阶乘的倒数f=1.0/k3)最后求和s+=f#includemain(){inti,n,k=l;floats=0,f=1.0;i=l;/*最后一•项小于0.0001时跳出/*求阶乘*//*阶乘的倒数*/广求和*/while(f>=le-4){k*=i;f=1.0/k;s+=f;i++;}printf(“s=%f”,s);}运行结果:1.7182142、设二维
2、数组A⑹⑹表示6节点无向图的邻接矩阵,编写程序,从键盘上输入邻接矩阵的数据,求出该无向图的边数以及各个节点的度,输出所求结果。解题思路:1)先输入A[6][6]的无向图的邻接矩阵2)计算无向图的边数if(a[i][j]=l)b+=l;3)求各个节点的度s+二b#includemain(){/*矩阵有6行*/厂矩阵有6列*/厂接收无向图的邻接矩阵*/inta[6][6],i,j,b,s;for(i=0;i<6;i++)for(j=0;j<6;j++)scanfC%d”,&a[i][j]);s=0;for(i=0;i<6;i++){b=0;f
3、or(j=0;j<6;j++)if(a[i][j]=l)b+=l;/*无向图的边数*/printf(H%dnodedegree:%d",i,b);s+=b;}printf("Thesumis%d",s/2);}运行结果:010101101011010111101001011001010001输入0nodedegree:6输出1nodedegree:62nodedegree:63nodedegree:64nodedegree:65nodedegree:6Thesumis183、编写程序,实现対5个整数按由小到大进行交换排序。解题思路:1)n个数需进行
4、n-1趟排序,i从1到n-1变化2)每趟比较次数为j=n-io第一趟,i“,比较次数j=5-l=4;第二趟,匸2,比较次数j=5-2=3;第三趟,43,比较次数j=5-3=2.所以,j从1到n・i变化。3)相邻两数比较,即x【j】和x【j+l】。程序#defineN5Voidbustor(intx[],intn){intl,j,m,k;For(i=l;i<=n-l;i++){k=l;For(j=l;j<=n・l;j++)lf(x[j]>x[j+l]){m=x[j];X[j]=x[j+1];X[j+l]=m;K=0;}If(k==l)break;}}main
5、(){inta[N+1]J;for(i=l;l<=N;i++)scanf("%d〃,&a[I]);bustor(a,N);/*n个数进行n-1趟排序*//*各趟开始假定本趟不会发生数据交换*/广第i趟比较n・i次*/严若前而的数人于示而的数则交换*//*和邻两数交换*//*本趟发牛了数据交换*//*若第i趟发牛数据交换,则排序结束*//*返回main函数中调用语句bustor(a,n);的下一句*//*输入N个数*/广调用冒泡排序函数*/厂程序由此开始*/for(i=l,i<=NJ++)printf(“%4d〃,a[]);}运行情况如下:87596(输入)
6、56789(输出)/*输岀排序后的程序*//*程序到此结束*/以为结束标记,建立头插法单链/*申请头节点*/广头结点链域置空*//*把head的下一个节点地址存入P的链*//*把p节点的地址存入head的链*/3JIJ头插法建立单链表。依次输入一串字符“abc”,表,并插入一个新元素d。structstulO*f811(){chrach;head=(structstulO*)malloc(LEN);head->next二NULL;while((ch=getchar())!='*'){p=(structstulO*)malloc(LEN);p^data=ch
7、;pTnext=head->next;head—next=p;}return(head);}main(){head=f810();s=(structstulO*)malloc(LEN);s->data=,d,;s->next=p->next;p・>next=s;print();}abc*(输入)dabc(输出)5、试编写一算法,在具有n个节点的顺序表小,设置高位监视哨查找值为k的节点。查找思路:设n个数据已存入一维A[l.・・n】的区域中,A[0]作为监视哨,存放要查找的给定值k,整个过程从最后一个数据A5】开始,向前依次k比较,直至A[l],奇关键字和k
8、都不相等吋,则查找失败,返回0;否则查找成功,返回数据的下标位置。