以下程序的功能是:通过指针操作,找出三个整数中的最小值并输出,请填空。 include“stdlib.h”
第1题
以下程序的功能是找出三个字符串中的最大串。 【 】 include<stdio.h> main() { int i; char string[20],str[3][20]; (i=0;i<3;i++)gets(【 】 ); if(strcmp(str,str[0],str[1]>0)strcpy(string,str[0]); else strcpy(string,str[1]); if(strcmp(str[2],string)>【 】 )srtcpy(string,str[2]); printf("The largest string is\n%s\n",string); }
第2题
以下程序中函数scmp的功能是返回形参指针s1和s2所指字符串中较小字符串的首地址 #include<stdio.h> #include<string.h> char *scmp(char *s1,char *s2) { if(strcmp(s1,s2)<0) return(s1); else return(s2); } main() { int i;char string[20],str[3][20]; for(i=0;i<3;i++)gets(str[i]); strcpy(string,scmp(str[0],str[1]));/*库函数strcpy对字符串进行复制*/ strcpy(string,scmp(string,str[2])); printf("%s\n",string); } 若运行时依次输入:abcd、abba和abc三个字符串,则输出结果为
A.abcd
B.adba
C.abc
D.abca
第3题
函数void fun(float*sn,int n)的功能是:根据以下公式计算S,计算结果通过形参指针sn传回;n通过形参传入,n的值大于等于0。请补全程序。 S=1-1/3+1/5-1/7+…+1/(2n+1) void fun(float*sn,int n) { float s=0.0,w,f=-1.0; int i=0; for(i=0;i<=n;i++) { f= 【 】*f; w=f/(2*i+1); s+=w; } 【 】 =s; }
第4题
函数void fun(float*sn,int n)的功能是:根据以下公式计算S,计算结果通过形参指针sn传回;n通过形参传入,n的值大于等于0。请补全程序。 S=1-1/3+1/5-1/7+…+1/(2n+1) void fun(float*sn,int n) { float s=0.0,w,f=-1.0; int i=0; for(i=0;i<=n;i++) { f= 【 】*f; w=f/(2*i+1); s+=w; } 【 】 =s; }
第5题
以下程序中给指针P分配三个double型动态内存单元,请填空: include<stdio.h> main() {double*p; p=(double*)malloc 【 】; p[0]=1.5;p[1]=2.5;p[2]=3.5; printf("%f%f%f\n",p[0],p[1],p[2]); }
第6题
以下程序段的功能是统计链表中结点的个数,其中first为指向第一个结点的指针(链表带头结点)。请在下划线内填入正确内容。 struct link { char data; struct link*next;}; … struct link*p,*first; int c=0; p=first; while(【 】) { c++; p=【 】;}
第7题
下面的程序实现的是从指针p所指向的地址的n个数中,找出最大的和最小的数据,请填空。 fun(int *p,int n) { int *q; int max,min; max=min=*p; for(q=p;【 】;q++) if(*q>max)max=*q; else if(*q<min )min=*q; }
第8题
第9题
A.scanf("%d",&p);
B.printf("%d/n",p);
C.*p=&n;
D.int n,*p=NULL;
第10题
以下程序通过函数指针p调用函数fun,请在填空栏内,写出定义变量p的语句。 void fun (int*x,int*y) {……} main() { int a=10,b=20; ______;严定义变量p*/ p=fun;p(&a,&b); ……}