机试答案
更新时间:2024-05-31 00:05:01 阅读量: 综合文库 文档下载
【填空】函数fun的功能是计算如下公式。直到,并且把计算结果作为函数值返回。例如,若形参e的值为1e-3,则函数返回值为0.551690。 【答案】【1】3.0【2】>【3】(t+1) 【改错】函数fun的功能是:求出如下分数序列的前n项之和。和值通过函数值返回。例如,若n=5,则应输出8.391667。 【答案】【1】double fun(int n)
【2】s=s+(double)a/b;
【编程】请编写函数fun,其功能是:找出2×M整型二维数组中最大元素的值,并将此值返回调用函数。 【答案】
int fun (int a[ ][M]) {
int i,j,max=a[0][0]; for(i=0;i<2;i++) for(j=0;j
◆◆◆◆◆◆宏图教育◆◆◆◆◆
【填空】函数fun的功能是:计算如下公式前n项的和并作为函数值返回。例如,当形参n的值为10时,函数返回值为9.612558。 【答案】【1】 0【2】 n 【3】 (t*t)
【改错】函数fun的功能是:统计substr所指的子符串在str所指的字符串中出现的次数。例如,若字符串为aaas 1kaaas,子字符串为as,则应输出2。 【答案】
【1】for(i=0;str[i];i++) 【2】if(substr[k+1]== ′\\0′)
【编程】编写函数fun,其功能是:根据以下公式求π的值(要求精度0.0005,即某项小于0.0005时停止迭代)。程序运行后,若输入精度0.0005,则程序应输出为3.14…。 【答案】
Double fun(double eps) {
double s=1.0,s1=1.0; int n=1;
while(s1>=eps) { s1=s1]s=s+s1; n++; }
return 2]
◆◆◆◆◆◆宏图教育◆◆◆◆◆
【填空】函数fun的功能是:统计形参s所指的字符串中数字字符出现的次数,并存放在形参t所指的变量中,最后在主函数中输出。
例如,若形参s所指的字符串为abcdef35adgh3kjsdf7,则输出结果为4。
【答案】 【1】s[i] 【2】 '9' 【3】*t=n 【改错】函数fun的功能是:实现两个变量值的交换,规定不允许增加语句和表达式。例如,变量a中的值原为8,b中的值原为3,程序运行后a中的值为3,b中的值为8。 【答案】【1】t = *x ; *x = y ; 【2】return(t) ;
【编程】编写函数fun,其功能是:求出1到1000之间能被7或11整除,但不能同时被7和11整除的所有整数,并将其放在a所指的数组中,通过n返回这些数的个数。 【答案】
void fun(int *a,int *n) {
int i,j=0;
for(i=1;i<=1000;i++)
if((i%7==0||i==0)&&iw!=0) a[j++]=i; *n=j;
}
◆◆◆◆◆◆宏图教育◆◆◆◆◆
【填空】下列给定程序中,函数fun的功能是:把形参a所指数组中的奇数按原顺序依次存放到a[0]、a[1]、a[2]、……中,把偶数从数组中删除,奇数个数通过函数值返回。例如:若a所指数组中的数据最初排列为:9、1、4、2、3、6、5、8、7,删除偶数后a所指数组中的数据为:9、1、3、5、7,返回值为5。 【答案】 【1】1【2】 j++【3】j
【改错】函数fun的功能是:求两个非零正整数的最大公约数,并作为函数值返回。例如,若num1和num2分别为49和21,则输出的最大公约数为7;若num1和num2分别为27和81,则输出的最大公约数为27。 【答案】【1】t=a;a=b;b=t;
【2】return(b);
【编程】规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:删除字符串中所有的*号。编写函数时,不得使用C语言提供的字符串函数。例如,字符串中的内容为:****A*BC*DEF*G*******,删除后字符串中的内容应当是:ABCDEFG。 【答案】
void fun(char *a) {
int i,j=0;
for(i=0;a[i]!=′\\0′;i++) if(a[i]!=′*′) a[j++]=a[i]; a[j]=′\\0′;
}
◆◆◆◆◆◆宏图教育◆◆◆◆◆
【填空】函数fun的功能是:将形参n中,各位上为偶数的数取出,并按原来从高位到低位相反的顺序组成一个新数,作为函数值返回。例如,输入一个整数27638496,函数返回值为64862。
【答案】【1】 0【2】 10]
【改错】函数fun的功能是:将长整型数中各位上为奇数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。例如,当s中的数为87653142时,t中的数为7531。 【答案】
【1】*t=0; 【2】if(d%2!=0)
【编程】编写函数fun,其功能是:实现两个字符串的连接(不要使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串的后面。例如,分别输入下面两个字符串: FirstString―SecondString程序输出:FirstString--SecondString 【答案】
void fun(char p1[],char p2[]) {
int i,j;
for(i=0;p1[i]!=′\\0′;i++); for(j=0;p2[j]!=′\\0′;j++) p1[i++]=p2[j]; p1[i]=′\\0′;
}
◆◆◆◆◆◆宏图教育◆◆◆◆◆
【填空】函数fun的功能是:把形参a所指数组中的最小值放在元素a[0]中,接着把a所指数组中的最大值放在a[1]元素中;再把a所指数组元素中的次小值放在a[2]中,把a所指数组元素中的次大值放在a[3],以此类推。例如,若a所指数组中的数据最初排列为:9、1、4、2、3、6、5、8、7;则按规则移动后,数据排列为:1、9、2、8、3、7、4、6、5。形参n中存放a所指数组中数据的个数。规定fun函数中的max存放当前所找的最大值,px存放当前所找最大值的下标。 【答案】
【1】a[i] 【2】a[j]【3】a[j]
【改错】函数fun的功能是:用递归算法计算斐波拉契数列中第n项的值。从第1项起,斐波拉契数列为:1、1、2、3、5、8、13、21、……。例如,若给n输入7,则该项的斐波拉契数值为13。
【答案】 【1】去掉分号
【2】case 1:case2:return 1;
【编程】某学生的记录由学号、8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出,请编写函数fun,其功能是:求出该学生的平均分,并放入记录的ave成员中。 例如,学生的成绩85.5,76,69.5,85,91,72,64.5,87.5,则他的平均分应为78.875。 【答案】
void fun(STREC *a) {
int i;
a->ave=0.0;
for(i=0;i a->ave=a->ave+a->s[i]; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是进行数字字符转换。若形参ch中是数字字符'0'~'9',则将'0'转换 成'9','1'转换成'8','2'转换成'7',……,'9'转换成'0';若是其它字符则保持不变;并将转换后的结果作为函数值返回。 【答案】 【1】char 【2】ch<='9' 【3】'0' 【改错】函数fun的功能是:将p所指字符串中的所有字符复制到b中,要求每复制三个字符之后插入一个空格。例如,若给a输入字符串:ABCDEFGKHIJK,调用函数后,字符数组b中的内容为:ABC DEF GHI JK。 【答案】【1】b[k]=*p; 【2】b[k]=′ ′;k++; 【编程】N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun,其功能是:求出平均分,并由函数值返回。例如,若学生的成绩是:85 76 69 85 91 72 64 87,则平均分应当是:78.625。 【答案】 double fun(STREC *h) { double av=0.0; STREC *p=h->next; while(p!=NULL) { av=av+p->s; p=p->next; } } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是:求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指的变量中。ss所指字符串数组中共有M个字符串,且串长 【答案】 【1】M 【2】< 【3】k 【改错】函数fun的功能是:将tt所指字符串中的小写字母全部改为对应的大写字母,其它字符不变。 例如,若输入\,cD\,则输出\,CD\。 【答案】 【1】if(( tt[i]>=′a′)&&( tt[i] <= ′z′) 【2】tt[i]-=32; 【编程】编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k返回。例如,若输入17,则应输出:4 6 8 9 10 12 14 15 16。 【答案】 void fun(int m, int *k, int xx[]) { int i,j,n=0; for(i=4;i *k=n; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是:将s所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的次序。 例如,s所指的字符串为def35adh3kjsdf7,执行后结果为defadhajsdf3537。 【答案】 【1】j++ 【2】s[i]=t1[i] 【3】 j 【改错】函数fun的功能是:用冒泡法对6个字符串进行升序排列。 【答案】 【1】for (j=I+1; j< 6; j++) 【2】(pstrI)=*(pstr+ j); 【编程】编写函数fun,其功能是:求ss所指字符串中指定字符的个数,并返回此值。例如,若输入字符串123412132,输入字符为1,则输出3。 【答案】 int fun(char *ss, char c) { int i=0; for(;*ss!=′\\0′;ss++) if(*ss==c) i++; return i; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】下列给定程序中已建立一个带头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。函数fun的功能是:把形参x的值放入一个新结点并插入链表中,使插入后各结点数据域中的数据仍保持递增有序。 【答案】【1】x【2】p【3】s 【改错】函数fun的功能是:计算正整数num各位上的数字之积。例如,若输入252,则输出应该是20。若输入202,则输出应该是0。 【答案】 【1】long k=1; 【2】num /=10; 【编程】编写函数fun,其功能是:计算n门课程的平均分,结果作为函数值返回。例如:若有5门课程的成绩是:90.5,72,80,61.5,55,则函数的值为:71.80。 【答案】 float fun (float *a, int n) { float av=0.0; int i; for(i=0;i } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是:将形参a所指数组中的前半部分元素中的值与后半部分元素中 动后,字符串中的内容应当是:A*BC*DEF*G***********。在编写函数时,不得使用C语言提供的字符串函数。 【答案】 void fun(char *a) { int i=0,n=0; char *p; p=a; while (*p==′*′) { n++;p++; } while(*p) { a[i]=*p;i++;p++; } while(n!=0) { a[i]=′*′;i++;n--; } a[i]=′\\0′; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】下列给定程序的功能是:从键盘输入若干行字符串(每行不超过80个字符),写入文件myfile4.txt中,用-1作字符串输入结束的标志,然后将文件的内容显示在屏幕上。文件的读写分别由函数ReadText和WriteText实现。 【答案】【1】 *fw【2】 str【3】 str 【改错】函数fun的功能是:从低位开始依次取出长整型变量s中奇数位上的数,构成一个新数存放在t中。高位仍在高位,低位仍在低位。 例如,当s中的数为7654321时,t中的数为7531。 【答案】 【1】void fun(long s,long *t) 【2】s1=s1] 【编程】编写函数fun,其功能是:将两个两位数的正整数a、b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的个位和百位上,b数的十位和个位数依次放在c数的千位和十位上。 例如,当a=45,b=12时,调用该函数后,c=1524。 【答案】 void fun(int a,int b,long *c) { *c=a/10+(b)*10+(a)*100+(b/10)*1000; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是:有N×N矩阵,将矩阵的外围元素做顺时针旋转。操作顺序是: 首先将第一行元素的值存入临时数组r,然后使第一列成为第一行,最后一行成为第一列,最后一列成为最后一行,再使临时数组中的元素成为最后一列。 例如,若N=3,有下列矩阵: 1 2 3 4 5 6 7 8 9 操作后应为: 7 4 1 8 5 2 9 6 3 【答案】【1】0【2】j--【3】j 【改错】函数fun的功能是:计算S=f(-n)+f(-n+1)+…+f(0)+f(1)+f(2)+…+f(n)的值。 例如,当n的值为5时,函数值应为10.407143。f(x)函数定义如下: f(x)=(x+1)/(x-2) x>0且x≠2 f(x) 0 x=0或x=2 (x-1)/(x-2) x<0 【答案】【1】double f(double x) 【2】return s ; 【编程】编写函数fun,其功能是计算:s作为函数值返回。在C语言中可调用log(n)函数求ln(n)。log函数的引用说明为:double log(double x)。例如,若m的值为20,则fun函数值为6.506583。 【答案】 double fun(int m) { int i; double s=0.0; for(i=1;i<=m;i++) s=s+log(i); return sqrt(s); } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是:在形参ss所指字符串数组中,查找含有形参substr所指子串的所有字符串,并输出,若没找到则输出相应信息。ss所指字符串数组中共有N个字符串,且串长小于M。程序中库函数strstr(s1,s2)的功能是在s1串中查找s2子串,若没有,函数值为0,若有,函数值为非0。 【答案】【1】 N【2】 substr【3】 0 【改错】函数fun的功能是:求三个数的最小公倍数。例如,若给主函数中的变量x1、x2、x3分别输入15 11 2,则输出结果应当是330。 【答案】【1】fun(int x,int y, int z) 【2】return j; 【编程】规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:只删除字符前导和尾部的*号,串中字母间的*号都不删除。形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中尾部*号的个数。在编写函数时,不得使用C语言提供的字符串函数。 【答案】 void fun (char *a,int n ,int h , int e) { int i,j=0; for(i=h;i a[j]=′\\0′; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是:计算一个带头结点的单向链表中各结点的数据域中数值之和,结果作为函数值返回。 【答案】【1】data【2】 next【3】 head 【改错】函数fun的功能是:将s所指字符串中出现的与t1所指字符串相同的子串全部替换为t2所指字符串,所形成的新串放在w所指的数组中。要求t1和t2所指字符串的长度相同。例如,当s所指字符串中的内容为\,t1所指子串中的内容为\,t2所指子串中的内容为\时,在w所指的数组中的内容应为\。 【答案】【1】while( *r)【2】r++; 【编程】函数fun的功能是:将s所指字符串中下标为偶数的字符删除,剩余字符形成的新串放在t所指数组中。例如,当s所指字符串中的内容为\时,在t所指数组中的内容应是:\。 【答案】 void fun(char *s,char t[]) { int i,j=0,k=strlen(s); for(i=1;i t[j++]=s[i]; ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。函数fun的功能是:将形参a所指结构体变量s中的数据进行修改,并把a的地址作为函数值返回主函数,从主函数中输出修改的数据。 例如,a所指变量s中的学号、姓名和三门课的成绩依次是:10001、\、95、80、88,修改后输出t中的数据应为:10002、\、96、81、89。 【答案】【1】struct student * 【2】 a->score[i] 【3】 a 【改错】函数fun的功能是:从N个字符串中找出最长的串,并将其地址作为函数值返回。各字符串在主函数中输入,并放入一个字符串数组中。 【答案】【1】char *fun(char (*sq)[M]) 【2】return sp; 【编程】编写函数fun,其功能是:将a、b中的两个两位正整数合并成一个新的整数放在c中。合并的方式是:将a中的十位和个位数依次放在变量c的百位和个位上,b中的十位和个位数依次放在变量c的十位和千位上。例如,当a=45,b=12,调用该函数后c=2415。 【答案】 void fun(int a,int b,long *c) { *c=a+(b/10)*10+(a/10)*100+(b)*1000; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是:将N×N矩阵主对角线元素的值与反向对角线对应位置上元素的值进行交换。 例如,若N=3,有下列矩阵: 1 2 3 4 5 6 7 8 9 交换后为: 3 2 1 4 5 6 9 8 7 【答案】【1】t[][N]【2】i=0;i 【改错】由N个有序整数组成的数列已放在一维数组中,下列给定程序中函数fun的功能是:利用折半查找法查找整数m在数组中的位置。若找到,返回其下标值;否则,返回-1。 折半查找的基本算法是:每次查找前先确定数组中待查的范围low和high(low void fun(char *a,char *p) { char *t=a; for(;t<=p;t++) if(*t!=′*′) *(a++)=*t; for(;*t!=′\\0′;t++) *(a++)=*t; *a=′\\0′; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是:找出100~999之间(含100和999)所有整数中各位上数字之和为x(x为正整数)的整数,并输出;符合条件的整数个数作为函数值返回。例如,当x值为5时,100~999之间各位上数字之和为5的整数有:104、113、122、131、140、203、212、221、230、302、311、320、401、410、500,共有15个。当x值为27时,各位数字之和为27的整数是:999,只有1个。 【答案】【1】 999【2】 t/10【3】 x 【改错】函数fun的功能是:从低位开始依次取出长整型变量s中偶数位上的数,构成一个新数放在t中。高位仍在高位,低位仍在低位。例如,当s中的数为7654321时,t中的数为642。 【答案】【1】void fun(long s,long *t) 【2】while(s>0) 【编程】学生的记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组s中,请编写函数fun,其功能是:按分数降序排列学生的记录,高分在前,低分在后。 【答案】 void fun (STREC a[]) { int i,j; STREC t; for(i=1;i for(j=0;j ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。函数fun的功能是:对形参b所指结构体变量中的数据进行修改,并在主函数中输出修改后的数据。例如,若b所指变量t中的学号、姓名和三门课的成绩依次是:10002、\、93、85、87,修改后输出t中的数据应为:10004、\、93、85、87。 【答案】【1】 ->sno【2】 ->name 【3】 &t 【改错】函数fun的功能是:用递归算法求形参a的平方根。求平方根的迭代公式如下:例如,a为2时,平方根值为:1.414214。 【答案】【1】double fun(double a,double x0) 【2】if(fabs(x1-x0)>=0.00001) 【编程】学生的记录由学号和成绩组成。N名学生的数据已放入主函数中的结构体数组s中,请编写函数fun,其功能是:把高于等于平均分的学生数据放在b所指的数组中,高于等于平均分的学生人数通过形参n传回,平均分通过函数值返回。 【答案】 double fun (STREC *a,STREC *b, int *n) { int i; double av=0.0; *n=0; for(i=0;i { b[*n]=a[i];*n=*n+1;} return av; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】下列给定程序中已建立了一个带头结点的单向链表,链表中的各结点按数据域递增有序链接。函数fun的功能是:删除链表中数据域值相同的结点,使之只保留一个。 【答案】【1】 q【2】 next【3】 next 【改错】函数fun的功能是:用选择法对数组中的n个元素进行升序排列。 【答案】【1】p=j ;【2】p=i; 【编程】编写函数fun,其功能是:将1到m之间(含m)能被7或11整除的所有整数放在数组a中,并通过n返回这些数的个数。例如,若传给m的值为50,则程序输出: 7 11 14 21 22 28 33 35 42 44 49 【答案】 void fun(int m, int *a, int *n) { int i,j=0; for(i=1;i<=m;i++) if(i%7==0||i==0) a[j++]=i; *n=j; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是:有N×N矩阵,以主对角线为对称线,对称元素相加并将结果存放在左下三角元素中,右上三角元素置为0。 例如,若N=3,有下列矩阵: 1 2 3 4 5 6 7 8 9 计算后结果为 1 0 0 6 5 0 10 14 9 【答案】【1】 [N]【2】 t[i][j] 【3】 t[j][i] 【改错】函数fun的功能是:计算函数F(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值。其中x和y的值不相等,z和y的值不相等。 例如,当x的值为9,y的值为11,z的值为15时,函数值为-3.50。 【答案】【1】#define FU(m,n) (m)/(n) 【2】return (value); 【编程】规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:将字符串中的前导*号全部删除,中间和尾部的*号不删除。 例如,字符串中的内容为:*******A*BC*DEF*G****,删除后字符串中的内容应当是:A*BC*DEF*G****。编写函数时,不得使用C语言提供的字符串函数。 【答案】 void fun (char *a) { char *p=a; while(*p==′*′) p++; for(;*p!=′\\0′;p++,a++) *a=*p; *a=′\\0′; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。所有学生数据均以二进制方式输出到student.dat文件中。函数fun的功能是:从文件中找出指定学号的学生数据,读入此学生数据,对该学生的分数进行修改,使每门课的分数加3分,修改后重写文件中学生的数据,即用该学生的新数据覆盖原数据,其它学生数据指定不变;若找不到,则不做任何操作。 【答案】【1】fp 【2】 ==【3】 fp 【改错】函数fun的功能是:用插入排序法对字符串中的字符进行升序排列。插入法的基本算法是:先对头两个字符进行排序,然后把第三个字符插入到前两个字符中,插入后前三个字符依然有序;再把第四个字符插入到前三个字符中,……。待排序的字符串已在主函数中赋予。 【答案】【1】n=strlen( aa ) ; 【2】ch=aa[i]; 【编程】N名学生的成绩已在主函数中放入一个带有头节点的链表结构中,h指向链表的头节点。请编写函数fun,其功能是:找出学生的最高分,并由函数值返回。 【答案】 double fun(STREC *h) { double max=h->s; while(h!=NULL) { if(max return max; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是:计算下式前n项的和,并作为函数值返回。 例如,若主函数从键盘给n输入50后,则输出为S=1.960784。? 【答案】【1】 double 【2】 j 【3】1.0/t 【改错】函数fun的功能是:判断一个整数是否为素数,若是素数返回1,否则返回0。 在main()函数中,若fun返回1输出YES,若fun返回0输出NO!。 【答案】【1】正确:k++ ; 【2】正确:if(m==k) 【编程】请编写函数fun,其功能是:找出一维整型数组元素中最大的值及其所在的下标,并通过形参传回。数组元素中的值已在主函数中赋予。 主函数中x是数组名,n是x中的数据个数,max存放最大值,index存放最大值所在元素的下标。 【答案】 void fun(int a[],int n, int *max, int *d) { int i; *max=a[0]; *d=0; for(i=0;i if(*max {*max=a[i];*d=i;} } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是计算下式 直到,并将计算结果作为函数值返回。例如,若形参e的值为1e-3,函数的返回值为2.985678。 【答案】【1】 0 【2】 i++ 【3】2.0] 【改错】函数fun的功能是:将s所指字符串的正序和反序进行连接,形成的新串放在t所指的数组中。 例如,当s所指字符串为:\时,t所指字符串中的内容应为:\。 【答案】【1】void fun ( char *s , char *t ) 【2】t[2] 【编程】编写函数fun,其功能是:将s所指字符串中除了下标为奇数同时ASCII值也为奇数的字符之外,其余的所有字符全部删除,串中剩余字符所形成的一个新串放在t所指的数组中。例如,若s所指字符串的内容为:\,其中字符A的ASCII码值为奇数,但所在元素的下标为偶数,因此需要删除;而字符1的ASCII码值为奇数,所在数组中的下标也为奇数,因此不应当删除,其它依此类推。最后t所指数组中的内容应为:\。 【答案】 void fun(char *s,char t[]) { int i,j=0,n; n=strlen(s); for(i=0;i if(i%2!=0&&s[i]%2!=0) { t[j]=s[i]; j++; } t[j]=′\\0′; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是:在形参s所指字符串中的每个数字字符之后插入一个*号。例如,形参s所指的字符串为def35adh3kjsdf7,执行后结果为def3] 【答案】【1】 && 【2】 0【3】 s[j] 【改错】函数fun的功能是:根据整型形参m,计算如下公式的值。 例如,若m的值为5,则应输出1.463611。 【答案】【1】for(i=2;i<=m;i++) 【2】y+=1.0/(i*i);或y+=(double)1.0/(i*i) 【编程】编写函数fun,其功能是:实现B=A+A',即将矩阵A加上A的转置,存放在矩阵B中。计算结果在main函数中输出。例如,输入下面的矩阵:其转置矩阵为: 程序输出: 2 6 10 6 10 14 10 14 18 【答案】 void fun (int a[3][3], int b[3][3]) { int i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) b[i][j]=a[i][j]+a[j][i]; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】请补充函数fun,该函数的功能是:把数组aa中的偶数元素按原来的先后顺序放在原数组后面。 例如,若输入\,输出结果为\。 【答案】【1】 aa[i]%2==0【2】 i 【答案】【1】void fun(int *x, int *y) 【2】t=*x; *x=*y; *y=t; 【编程】请编写函数fun,该函数的功能是:统计各年龄段的人数。N个年龄通过调用随机函数获得,并放入主函数的age数组中。要求函数把0至9岁年龄段的人数放在d[0]中,把10至19岁年龄段的人数放在d[1]中,把20至29岁年龄段的人数放在d[2]中,依此类推,把100岁(含100岁)以上年龄的人数都放在d[10]中。结果在主函数中输出。 【答案】 void fun(int *a, int *b) { int i,j; for(j=0;j } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。函数fun的功能是:将形参a中的数据进行修改,把修改后的数据作为函数值返回主函数进行输出。 例如,若传给形参a的数据中学号、姓名和三门课的成绩依次是:10001、\、95、80、88,修改后的数据应为:10002、\、96、81、89。 【答案】 【1】 struct student 【2】 a.name 【3】 a.score[i] 【改错】假定整数数列中的数不重复,并存放在数组中。下列给定程序中函数fun的功能是:删除数列中值为x的元素。变量n中存放数列中元素的个数。 【答案】【1】if(p==n) return -1; 【2】a[i]=a[i+1]; 【编程】学生记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组中,请编写函数fun,其功能是:把分数最低的学生数据放入b所指的数组中,注意:分数最低的学生可能不止一个,函数返回分数最低的学生人数。 【答案】 int fun(STREC *a,STREC *b) { int i,j=0,n=0,min; min=a[0].s; for(i=0;i { *(b+j)=a[i];j++;n++; } return n; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】请补充main函数,该函数的功能是:将字符串str中的字符向前移动一位,原来在第一个位置上的字符移动到字符串尾,结果仍然保存在原字符串中。例如,输入\do?\,则结果输出\?h\。 【答案】【1】 str[i+1] 【2】 str[i]=ch 【改错】函数fun实现的功能是:统计一个无符号整数中各位数字值为0的个数,通过形参传回主函数,并把该整数中各位上最大的数字值作为函数值返回。例如,若输入无符号整数30800,则数字值为0的位的个数为3,各位上数字值最大的是8。 【答案】【1】if(t==0) 【2】*zero=count; 【编程】请编写函数fun,该函数的功能是:移动字符串中的内容,移动的规则是把第1~m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。例如,字符串中原有的内容为ABCDEFGHIJK,m的值为3,移动后,字符串中的内容应该是DEFGHIJKABC。 【答案】 void fun (char *w,int m) { int i,j; char t; for(i=1;i<=m;i++) { t=w[0]; for(j=1;w[j]!=′\\0′;j++) w[j-1]=w[j]; w[j-1]=t; } } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是:将形参s所指字符串中下标为奇数的字符取出,并按ASCII码 int i,j=0; for(i=0;s[i]!=′\\0′;i++) if(i%2==0&&s[i]%2==0) t[j++]=s[i]; t[j]=′\\0′ } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】下列给定程序的功能是调用fun函数建立班级通讯录。通讯录中记录每位学生的编号、姓名和电话号码。班级人数和学生信息从键盘读入,每个人的信息作为一个数据块写到名为myfile5.dat的二进制文件中。 【答案】【1】 STYPE 【2】 FILE 【3】 fp 【改错】函数fun的功能是:先将字符串s中的字符按正序存放到字符串t中,然后把s中的字符按逆序连接到字符串t的后面。例如,当s中的字符串为\时,则t中的字符串应为:\。 【答案】【1】for ( i=0; i 【编程】函数fun的功能是:将两个两位数的正整数 a、b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。 例如,当a=45,b=12时,调用该函数后c=4152。 【答案】 void fun(int a,int b,long *c) { *c=b+(a)*10+(b/10)*100+(a/10)*1000; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】程序通过定义学生结构体数组,存储若干名学生的学号、姓名和3门课的成绩。函数fun的功能是:将存放学生数据的结构体数组,按姓名的字典序(从小到大)排序。 【答案】【1】struct student 【2】n-1【3】 a[i].name,a[j].name 【改错】函数fun的功能是:从p所指字符串中找出ASCII码值最大的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动。 例如,调用fun函数之前给字符串输入:ABCDeFGH,调用后字符串中的内容应为:eABCDFGH。 【答案】【1】q=p+i; 【2】while(q>p) 【编程】学生的记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组s中,请编写函数fun,其功能是:把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。 例如,输入的分数是60 69,则应当把分数在60~69的学生数据输出,包含60分和69分的学生数据。主函数中把60放在low中,把69放在heigh中。 【答案】 int fun (STREC *a, STREC *b, int l, int h ) { int i,j=0; for(i=0;i if(a[i].s>=l&&a[i].s<=h) b[j++]=a[i]; return j; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】给定程序的功能是:求二分之一的圆面积,函数通过形参得到圆的半径,函数返回二分之一的圆面积(注:圆面积公式为:S=餽2,在程序中定义的变量名要与公式的变量相同)。例如,输入圆的半径值:19.527,输出为:s=598.949991。 【答案】【1】r*r 【2】&x【3】x 【改错】fun函数的功能是:根据形参m,计算下列公式的值: t=1+1/2+1/3+1/4+…+1/m 例如,若输入5,则应输出2.283333。 【答案】【1】t+=1.0/i; 【2】return t; 【编程】请编写一个函数int fun(int *s,int t,int *k),用来求出数组的最大元素在数组中的下标并存放在k所指向的存储单元中。 例如,输入如下整数: 876 675 896 101 301 401 980 431 451 777则输出结果为6,980。 【答案】 int fun(int *s,int t,int *k) { int i; *k=0; for(i=0;i } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】请补充main函数,该函数的功能是:计算两个自然数n和m(m<10000)之间所有数的和(n和m从键盘输入)。例如,当n=1,m=100时,sum=5050;当n=100,m=1000时,sum=495550。 【答案】【1】 sum=0 【2】 sum+=n【3】 ld 【改错】函数fun的功能是:分别统计字符串中大写字母和小写字母的个数。例如,给字符串s输入:AaaaBBb123CCccccd,则应输出结果:upper=5,lower=9。 【答案】【1】void fun(char *s, int *a, int *b) 【2】(*a)++;【3】 (*b)++; 【编程】请编写函数fun,其功能是:计算并输出当x<0.97时,如下多项式的值,直到|Sn-Sn-1|<0.000001为止。例如,若主函数从键盘给x输入0.21后,则输出为S=1.100000。 【答案】 double fun(double x) { double s1=1.0,p=1.0,sum=0.0,s0,t=1.0; int n=1; do { s0=s1; sum+=s0; t*=n; p*=(0.5-n+1)*x; s1=p/t; n++; }while(fabs(s1-s0)>=1e-6); return sum; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】从键盘输入一组无符号整数并保存在数组xx[N]中,以整数0结束输入,要求这些数的最大位数不超过4位,其元素的个数通过变量num传入函数fun。请补充函数fun,该函数的功能是:从数组xx中找出个位和十位的数字之和大于5的所有无符号整数,结果保存在数组yy中,其个数由函数fun返回。 例如,当xx[8]={123,11,25,222,42,333,14,5451}时,bb[4]={25,42,333,5451}。 【答案】【1】 xx[i] 【2】 bb[n++]=xx[i]【3】 n 【改错】函数fun的功能是:计算并输出k以内最大的10个能被13或17整除的自然数之和。k的值由主函数传入,若k的值为500,则函数的值为4622。 【答案】【1】if((k==0)||(k==0)) 【2】加 } 【编程】编写函数fun,它的功能是:根据以下公式求p的值,结果作为函数值返回。m与n为两个正数且要求m>n。 p=m!/(n!(m-n)!) 例如,m=12,n=8时,运行结果为 495.000000。 【答案】 float fun (int m, int n) { int i; double p=1.0; for(i=1;i<=m;i++) p=p*i; for(i=1;i<=n;i++) p=p/i; for(i=1;i<=m-n;i++) p=p/i; return p; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】请补充函数fun,该函数的功能是:把ASCII码为偶数的字符从字符串str中删除,结果仍然保存在字符串str中,字符串str从键盘输入,其长度作为参数传入函数fun。例如,输入\,输出\。 【答案】 【1】 void fun(char s[],int n) 【2】 j=0 【3】 s[j]=′\\0′ 【改错】函数fun()的功能是:根据整型形参m的值,计算如下公式的值: t=1-1/(2×2)-1/(3×3)-…-1/(m×m) 【答案】【1】for(i=2;i<=m; i++) 【2】y-=1.0/(i*i); 【编程】请编写函数fun,函数的功能是:求出二维数组周边元素之和,作为函数值返回。二维数组中的值在主函数中赋予。 例如,若二维数组中的值为 1 3 5 7 9 2 9 9 9 4 6 9 9 9 8 1 3 5 7 0 则函数值为61。 【答案】 int fun( int a[M][N]) { int i,j,sum=0; for(i=0;i for(j=0;j if(i==0||i==M-1||j==0||j==N-1) sum=sum+a[i][j]; return sum; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】请补充函数fun,该函数的功能是:判断某一个年份是否为闰年。例如,1900年不是闰年,2004是闰年。 【答案】【1】 n0!=0或n0 【2】 n@0==0 【3】 flag 【改错】函数fun的功能是:求出数组中最大数和次最大数,并把最大数和a[0]中的数对调、次最大数和 a[1] 中的数对调。 【答案】【1】void fun(int *a, int n) 【2】m=i; 【编程】请编写函数fun,该函数的功能是:判断字符串是否为回文,若是则函数返回1,主函数中输出\,否则返回0,主函数中输出\。回文是指顺读和倒读都一样的字符串。例如,字符串LEVEL是回文,而字符串123312就不是回文。 【答案】 int fun(char *str) { int i,n=0,fg=1; char *p=str; while { n++; p++; (*p) } for(i=0;i if(str[i]==str[n-1-i]) ; else { fg=0; break; } return fg; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】给定程序的功能是:计算score中m个人的平均成绩aver,将低于aver的成绩放在below中,并返回人数。例如,当score={10,20,30,40,50,60,70,80,90},m=9时,函数返回的人数应该是4,below={10,20,30,40}。 【答案】【1】 score[i]或*(score+i) 【2】 below【3】 below[i] 【改错】函数fun的功能是:首先将b所指字符串中的字符按逆序存放,然后将a所指字符串中的字符和b所指字符串中的字符,按排列的顺序交叉合并到c所指数组中,过长的剩余字符接在c所指数组的尾部。例如,当a所指字符串中的内容为abcdefg,b所指字符串中的内容为1234,c所指数组中的内容应该为a4b3c2d1efg;而当a所指字符串中的内容为1234,b所指字符串中的内容为abcdefg,c所指数组中的内容应该为1g2f3e4dcba。 【答案】【1】while(i 【2】*c=′\\0′; 【编程】编写函数int fun(int lim, int aa[MAX]),该函数的功能是求出小于或等于lim的所有素数并放在aa数组中,该函数返回所求出的素数的个数。 【答案】 int fun(int lim, int aa[MAX]) { int i,j,k=0; for(i=2;i<=lim;i++) { for(j=2;j=i) aa[k++]=i; } return k; } ◆◆◆◆◆◆宏图教育◆◆◆◆◆ 【填空】函数fun的功能是:统计长整数n的各位上出现数字1、2、3的次数,并用外部(全局)变量c1、c2、c3返回主函数。例如,当n=123114350时,结果应该为:c1=3 c2=1 c3=2。 【答案】【1】 n 【2】 break 【3】 break 【改错】函数fun的功能是:实现两个整数的交换。例如,给a和b分别输入60和65,输出为:a=65 b=60 【答案】【1】void fun(int *a,int *b) 【2】t=*b;*b=*a;*a=t;
正在阅读:
机试答案05-31
高层建筑结构试题题目 - 图文10-28
环境工程施工组织设计 - 图文04-06
徽州区洽舍乡环境综合整治工程项目可行性研究报告 - 图文01-07
幼儿园师幼互动中存在的问题及对策11-02
2004年高级工鉴定电工应知试题04-29
感动中国的观后感12-11
【毕业论文】酒店人才流失的原因与对策分析07-10
数学建模习题及答案课后习题04-06
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 答案
- 中国小铁花铲行业市场前景分析预测年度报告(目录) - 图文
- 华为中级认证路由题库
- 湖北省荆州市公安一中2016届高三12月月考历史试卷
- 人教版八年级语文下册全套教案
- 等离子体推动器 - 图文
- 2016年度中施企协科学技术奖科技创新成果获奖名单
- 关于如何更好地服务青年干部成长发展
- 中国银监会关于印发《商业银行资本充足率信息披露指引》的通知
- 课前《自主学习任务单》的设计
- 物业小区消防演习方案88
- 生活中发现的有趣现象
- 第九章 整式
- 铁路地基处理总结
- 毕业论文参考文献的标准格式
- 2015-2016学年七年级数学下册期初检测试题
- 一年级文明礼仪儿歌
- 北师大版小学六年级上册数学期末试题答案
- 雅江三号特大桥连续钢构施工方案
- 关于证券公司年度工作总结
- 5.2任意角三角比2 - -教师版