计算及答案.docx
- 文档编号:23418501
- 上传时间:2023-05-16
- 格式:DOCX
- 页数:37
- 大小:26.01KB
计算及答案.docx
《计算及答案.docx》由会员分享,可在线阅读,更多相关《计算及答案.docx(37页珍藏版)》请在冰豆网上搜索。
计算及答案
第二套
1.程序填空
给定程序中已建立一个带有头结点的单向链表,链表中的各结点按数据域递增有序连接。
函数fun的功能是:
删除链表中数据域值相同的结点,使之只保留一个。
第一处free(q);
第二处q=p->next;
第三处q=q->next;
2.程序修改p=j;p=i;
3.程序设计
voidfun(intm,int*a,int*n)
{
inti;
*n=0;
for(i=7;i<=m;i++)
if((i%7==0)||(i%11==0))
a[(*n)++]=i;
}
第四套
1.程序填空
给定程序中,函数fun的功能是:
在带有头结点的单向链表中,查找数据域中值为ch的结点。
找到后通过函数值返回该结点在链表中所处的顺序号:
若不存在值为ch的结点,函数值返回0.
第一处while(p!
=0)
第二处if(p->data==ch)returnn;
第三处k=fun(head,ch);
2.程序修改
for(i=0,t=0;p[i];i++)c[t]=’\0’;
3.程序设计
voidfun(char*ss)
{
inti;
for(i=1;i {if(ss[i]>=’a’&&ss[i]<=’z’) ss[i]-=32; } } 第五套 1程序填空 给定程序中,函数fun的功能是: 计算下式前n项的和作为函数值返回。 例如: 当形参n的值为10的时,函数返回: 9.6125588。 第一处s=0; 第二处for(i=1;i<=n;i++) 第三处s=s+(2.0*i-1)*(2.0*i+1)/(t*t); 2.程序修改 for(i=0;str[i];i++)if(substr[k+1]==’\0’) 3.程序设计 doublefun(doubleeps) {doubles=1,t=1./3; intn=1; while(t>=eps) {s+=t;n++;t=t*n/(2.0*n+1) ;} return(s*2.0); } 第六套 1.程序填空 给定程序中,函数fun的功能是: 将形参s所指定字符串中所有的字母字符顺序前移,其他字母顺序后移,处理后字符串的首地址作为函数值返回。 第一处t[j]=s[i];j++; 第二处for(i=0;i t[j+i]=p[i]; 第三处t[j+k]=0; 2.程序修改 while(*w)if(*r==*p) 3.程序设计 voidfun(char*s,chart[]) {inti,j=0; for(i=0;i if(s[i]%2==0)t[j++]=s[i]; t[j]=0; } 第十二套 1.程序填空 给定程序中,函数fun的功能是: 将自然数1—10以及它们的平方根写到名为myfile3.txt的文本文件中,然后再顺序读出显示在屏幕上。 第一处fprintf(fp,”%d%f\n”,i,sqrt((double)i)); 第二处fclose(fp); 第三处if((fp=fopen(fname,”r”))==NULL) 2.程序修改for(i=j+1;i 3.程序设计 #include voidfun(inta,intb,long*c) { *c=(b%10)*1000+(a%10)*100+(b/10)*10+(a/10);} 第十五套 1.程序填空 给定程序中,函数的功能是: 把形参s所指字符串下标为奇数的字符右移到下一个奇书位置,最右边呗移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动(注: 字符串的长度大于等于2)。 例如,形参s所指的字符串为: abcdefgh,执行结果为: ahcbedg。 第一处if(n%2==0)k=n-1; 第二处c=s[k]; 第三处s[1]=c; 2.程序修改longs=0,t=0;t=t/10; 3.程序设计 voidfun(char*tt,intpp[]) { char*p=tt; inti; for(i=0;i<26;i++) pp[i]=0; while(*p) {if(*p>=’a’&&*p<=’z’) pp[*p-‘a’]+=1; p++; }} 第十七套 1.程序填空 给定程序中,函数fun的功能是: 统计形参s所指字符串中数字字符出现的次数,并存放在形参t所指的变量中,最后在主函数中输出。 例如,形参s所指的字符串为: abcdef35adgh3kjsdf7。 输出结果为: 4。 第1处for(i=0;s[i]! =NULL;i++) 第2处if(s[i]>=’0’&&s[i]<=’9’) n++; 第3处*t=n; 2.程序修改t=*x;*x=y;return(t); 3.程序设计 #include viodfun(int*a,int*n) {inti; *n=0; for(i=7;i<1000;i++) if(((i%7)==0││(i%11)==0 &&(i%77)! =0)a[(*n)++]=i; } 第十八套 1.程序填空 给定程序中,函数fun的功能是: 有N×N矩阵,根据给定的m(m<=n)值,将每行元素中的值均右移m个位置,左边值为0. 第1处for(i=0;i 第2处t[i][j+m]=t[i][j]; 第3处for(j=0;j 2.程序修改 while((2<=high)&&(n<10))yes=0;break; 3.程序设计 floatfun() { floatx0,x1=0.0; do{ x0=x1; x1=cos(x0); }while(fabs(x0-x1)>0.000001); returnx1; } 第十九套 1.程序填空 给定程序中,函数fun的功能是: 将a所指的3×5矩阵中第k列的元素左移到第0列,第k列以后的每列元素行依次左移,原来左边的各列依次绕到右边。 第1处for(p=1;p<=k;p++) 第2处for(j=0;j a[i][j]=a[i][j+1]; 第3处a[i][N-1]=temp; 2.程序修改fun(inta[][M],intm) a[j][k]=(k+1)*(j+1); 3.程序设计 voidfun(inta,intb,int*c) { *c=(a%10)*1000+(b%10)*100 +(a/10)*10+(b/10); } 第二十套 1.程序填空 给定程序中,函数fun的功能是: 对形参s所指字符串中下标为奇数的字符ASCII码大小递增排序,并将排序后的下标为奇数的字符取出,形成一个新串。 第1处t=i; 第2处for(j=i+2;j 第3处p[j]=0; 2.程序修改while((fabs(t))>=num) t=s/n 3.程序设计 viodfun(chara[],char b[],intn) { strncpy(b,a,n); b[n]=0; strcat(b,a+n+1); } 第二十二套 1.程序填空 给定程序中,函数fun的功能是: a所指4×3矩阵中第k行的元素与第0行元素交换。 例如: 有下列矩阵 123 456 789 101112 若k为2,程序执行结果为 789 456 123 101112 第一处voidfun(int(*a)[N],intk) 第二处for(i=0;i 第三处a[0][i]=a[k][i]; 2.程序修改for(i=strlen(t)-1;i;i--) if(t[j]>t[j+1]) 3.程序设计 voidfun(char*ss) { char*p=ss; inri=0; while(*p){ if((i%2)&&(*p>=’a’&&*p<=’z’)) *p-=32; p++; i++; } } 第二十三套 1.程序填空 给定程序的功能是: 调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数的返回值是1,失败是返回值是0.在复制的过程中,把复制的内容输出到终端屏幕。 主函数源文件名放在变量sfname中,目标文件放在变量tfname中。 第一处 if((fs=fopen(source,”r”))==NULL) 第二处while(! feof(fs)) 第三处fputc(ch,ft); 2.程序修改if(d%2==0)s/=10; 3.程序设计 voidfun(inta,intb,long*c) { *c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10); 第二十九套 1.程序填空 给定程序中,函数fun的功能是: 有N*N矩阵,将矩阵的外围元素顺时针旋转。 操作的顺序是: 首先将第一行元素的值存入临时数组r,然后使第一列成为第一行,最后一行成为第一列,最后一列成为第一行,临时数组中和元素成为最后一列。 第一处t[0][N-j-1]=t[j][0]; 第二处for(j=N-1;j>=0;j--) 第三处t[j][N-1]=r[j]; 2.程序修改doublef(doublex) returns; 3.程序设计 doublefun(intm) { doubles=0.0; inti; for(i=0;i<=m;i++) s+=log(1.0*i); s=sqrt(s); returns; } 第三十二套 1程序填空 给定程序中已建立一个带头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。 函数fun的功能是: 把形参x的值放入一个新结点并插入到链表中,插入后各结点数据域的值仍保持递增有序。 第一处s->data=x; 第二处q=p; 第三处q->next=s; 2.程序修改longk=1;num/=10 3.程序设计 floatfun(float*a,intn) { inti; floatave=0.0; for(i=0;i ave=ave+a[i]; ave=ave/n; returnave; } 第三十五套 1.程序填空 给定程序中,函数fun的功能是: 统计出带有头结点的单向链表中结点的个数,存放在形参n所指的存储单元中。 第一处*n=0; 第二处p=p->next; 第三处fun(head,&num); 2.程序修改a=NULL;if(*r==*p) 3.程序设计 voidfun(char*s,chart[]) { inti,j=0; for(i=0;i if(s[i]%2==0)t[j++]=s[i]; t[j]=0; } 第三十八套 1.程序填空 给定程序中,函数fun的功能是: 利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排列,并输入排序结果。 ss所指定字符串数组中共有N个字符串,且串长小于M。 第一处k=i 第二 if(strlen(ps[k]) ps[j]))k=j; 第三处tp=ps[i];ps[i]=ps[k];ps[k]=tp; 2.程序修改 doublefun(intn) returnsum; 3.程序设计 doublefun(doublex,intn) {doubles=1.0,y=x; inti; for(i=1;i<=n;i++) { s+=y/(double)jc(i); y*=x; } returns; } 第四十套 1.程序填空 给定程序中,函数fun的功能是: 将s所指字符串所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的先后次序。 第一处j++; 第二处s[i]=t1[i]; 第三处for(i=0;i 2程序修改for(j=i+1;j<6;j++) *(pstr+i)=*(pstr+j); 3.程序设计 intfun(char*ss,charc) { intcnt=0; char*p=ss; while(*p){ if(*p==c)cnt++; p++; } returncnt; } 第四十一套 1.程序填空 给定程序中,函数fun的功能是: 将形参s所指定字符串中的数字字符转换成对应的数值,计算出这些数值的累加和作为函数值返回。 第1处 if(isdigit(*s))sum+=*s-48; 第2处s++; 第3处returnsum; 2.程序修改 if((k%13==0││(k%17==0)) } 3.程序设计 doublefun(intn) { doublesum=0.0; inti; for(i=21;i<=n;i++) if((i%3==0)&&(i%7==0))sum +=i; returnsqrt(sum); } 第四十二套 1程序填空 给定程序中,函数fun的功能是: 将不带头结点的单向链表结点数据域中的数据从小到大排序。 即若原链表节点数据域从头到位的数据为10、4、2、8、6,排序后链表结点数据域从头至尾的数据为2、4、6、8、10. 第1处q=p->next; 第2处while(q) 第3处p=p->next; 2程序修改while(*s)s++; 3程序设计 voidfun(int*w,intp,intn) { inti,j=0,b[N]; for(i=p+1;i for(i=0);i<=p;i++) b[j++]=w[i]; for(i=0;i w[i]=b[i]; } 第四十四套 1程序填空 给定程序中,函数fun的功能是: 将N乘以N矩阵中元素的值按列右移一个位置,右边被移出矩阵的元素绕回左边。 第1处for(i=0;i 第2处x=t[i][N-1]; 第3处t[i][0]=x; 2程序修改s=s+(n+1.0)/n;returnt; 3程序编写 intfun(intt) { intf0=0,f1=1,f; do {f=f0+f1; f0=f1; f1=f; }while(f returnf; } 第四十五套 1程序填空 给定程序中,函数fun的功能是将带头结点的单向链表逆置。 即若原链表中从头至尾结点数据域依次为: 2、4、6、8、10,逆置后,从头至尾结点数据域依次为: 10、8、6、4、2.。 第1处p=h->next; 第2处if(p==0)return; 第3处p=q;q=r; 2程序修改r=t;if(*r==0) 3程序设计 voidfun(chara[M][N]),char*b) {inti;*b=0; for(i=0;i } 第四十六套 1程序填空 给定程序中,函数fun的功能是: 将形参s所指字符串所有ASCII码小于97的字符存入形 第1处*(t+n)=*s;n++;} 第2处s++; 第3处returnn; 2程序修改intj,c=0;floatxa=0.0; if(x[j]>=xa) 3程序设计 p=m! /(n! *(m-n)! ) floatfun(intm,intn) { floatp; p=1.0*jc(m)/jc(n)/jc(m-n); returnp; } 第四十八套 1程序填空 给定程序中,函数fun的功能是: 计算出带有头节点的单向链表中各节点数据域中值之和作为函数值带回。 第1处s+=p->data; 第2处p=p->next; 第3处printf(“\nsum=%d\n”,fun(head)); 2程序修改while(*r)*a=*r;a++;r++; 3程序设计 voidfun(char*s,chart[]) { inti,j=0; for(i=1;i t[j++]=s[i]; t[j]=0; } 第四十九套 1程序填空 给定程序中,函数fun的功能是: 把形参s所知字符串中最左边的n个字符复制到形参t所指字符数组中,形成一个新串,若s所指字符串的长度小于n,则将整个字符串复制到形参t所指字符数组中。 第1处if(n>=len)strcpy(t,s); 第2处t[j++]=s[i]; 第3处t[j]=0; 2程序修改if(i%k==0)if(k>=i) 3程序设计 voidfun(intx,intpp[],int*n) { inti; *n=0; for(i=1;i<=x;i++) if((x%i==0)&&(i%2))pp[(*n)++]=i; } 第五十一套 1程序填空 给定程序中,函数fun的功能是: 计算下式s=1/22+3/42+5/62…+(2×n-1)/(2×n)2直到︱(2×n-1)/(2×n)2︱《10-3并把计算结果作为函数值返回。 例如,若形参e的值le-3,函数值的返回值为2.735678。 第1处i=0; 第2处i++; 第3处x=(2.0*i-1)/((2.0*i)*(2.0*i)); 2程序修改voidfun(char*s,char*t) t[2*d]=’\0’; 3程序设计 viodfun(char*s,chatt[]) { inti,j=0; for(i=1;i if(s[i]%2) t[j++]=s[i]; t[j]=0; } 第五十二套 1程序填空 给定程序中,函数fun的功能是: 在3×4的矩阵中找出在行上最大,列上最小的那个元素,若没有符合条件的元素则输出相应信息。 第1处max=a[i][j];c=j;} 第2处find=0; 第3处i++; 2程序修改for(i=2;i<=m;i++) y-=1.0/(i*i); 3程序设计 intfun(intscore[],intm,intbelow[]) { floatav=0.0; inti,j=0; for(i=0;i av+=score[i]; av/=m; for(i=0;i if(av>score[i]) below[j++]=score[i]; returnj; } 第五十五套 1程序填空 给定程序中,函数fun的功能是: 判断形参s所指字符串是否是“回去”(Palindrome)若是,函数返回值为1;不是,函数返回值为0,“回文”是正读和反读都是一样的字母串(不区分大小写字母)。 第1处1p=s; 第2处1p++;rp--;} 第3处if(1p
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算 答案