(1)t-=1.0/i; (2)return t;
3.请编写函数fun,其功能是:计算并输出3到n之间所有素数的平方根之和。 例如,若主函数从键盘给n输入100后,则输出为sum=148.874270。 double fun(int n) {
int m,k,i; double s=0.0;
for(m=3;m<=n;m++) {
k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0) break; if(i>=k+1)
s+=sqrt(m); }
return s; }
七十四套
1.请补充函数fun,该函数的功能是:依此取出字符串中所有的小写字母以形成新的字符串,并取代原字符串。 (1) *p
(2) i++或++i或i+=1或i=i+1 (3) ′\\0′
2.下列给定程序中,函数fun的功能是:计算整数n的阶乘。 (1)result*=n--; (2)return result;
3.请编写函数fun,该函数的功能是:统计一行字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间有若干个空格隔开,一行的开始没有空格。 nt fun(char *s) {
int i,j=0;
for(i=0;s[i]!=′\\0′;i++)
if(s[i]!=′′ &&(s[i+1]==′ ′||s[i+1]==′\\0′)) /*如果一个字母的下一个字符为空格或者结束标记,则表示一个单词结束*/ j++;
return j; /*返回单词个数*/ 七十五套
1.请补充函数fun,该函数的功能是:判断一个数是否为素数。该数是素数时,函数返回字符串\!\,否则函数返回字符串\!\,并在主函数中输出。 (1) char *fun(int n) (2) 2 (3) n%i==0或!(n%i)
2.下列给定程序中,函数fun的功能是:先从键盘上输入一个3行、3列的矩阵的各个元素
的值,然后输出主对角线元素之和。 (1)sum=0;
(2)scanf(\,&a[i][j]);
3.请编写函数fun,该函数的功能是:删除一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。 例如,若一维数组中的数据是: 2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 10 10 10 删除后,数组中的内容应该是: 2 3 4 5 6 7 8 9 10。 3int fun(int a[], int n) {
int i,j=1;
for(i=1;i if(a[j-1]!=a[i]) /*若该数与前一个数不相同,则要保留*/ a[j++]=a[i]; return j; /*返回不同数的个数*/ } 七十六套 1.给定程序的功能是:将n个人员的考试成绩进行分段统计,考试成绩存到数组a中,各分段的人数存到数组b中:成绩为60到69的人数存到b[0]中,成绩为70到79的人数存到b[l]中,成绩为80到89的人数存到b[2]中,成绩为90到99的人数存到b[3]中,成绩为100的人数存到b[4]中,成绩为60分以下的人数存到b[5]中。 例如,当数组a中的数据是:93、85、77、68、59、43、94、75、98。调用该函数后,数组b中存放的数据应是:l、2、l、3、0、2。 (1) n (2) else (3) a,b 2.下列给定函数中,函数fun的功能是:统计字符串中各元音字母(即A、E、I、O、U)的个数。注意:字母不分大小写。例如,输入THIs is a boot,则应输出是1 0 2 2 0。 (1)void fun(char *s, int num[5]) (2)num[k]=0; (3)switch(*s) 3.请编写函数fun,该函数的功能是:将s所指字符串中ASCII值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。 例如,若s所指字符串中的内容为ABCDEFG12345,其中字符B的ASCII码值为偶数、…、字符2的ASCII码值为偶数、…,都应当删除,其他依此类推,最后t所指的数组中的内容应是 void fun(char *s, char t[]) { int i=0; for(;*s!=′\\0′;s++) /*找出ASCII值为奇数的字符依次存入数组t中*/ if(*s%2==1) t[i++]=*s; t[i]=′\\0′; /*在字符串的末尾加上串结束符*/ } 七十七套 1.str为一个字符序列。请补充函数fun,该函数的功能是:查找str中值为x的元素,返回该字符序列中值为x的元素个数,并把这些值为x的元素下标依此保存在数组bb中。例如,在\中查找'a',结果为:2个\,下标依此为0、6。 (1) *p==t (2) bb[n++]=i (3) n 2.下列给定程序的功能是:读入一个英文文本行,将其中每个单词的第一个字母改成大写,然后输出此文本行(这里\单词\是指由空格隔开的字符串)。例如,若输入I am astudent to take the examination,则应输出I Am A Student To Take The Examination。 (1)void upfst( char *p) 3.请编写函数fun,其功能是:计算并输出下列多项式的值。 S=1+1/(1+2)+1/(1+2+3)+…+1/(1+2+3+…+n) 例如,若主函数从键盘给n输入50后,则输出为S=1.960784。 double fun(int n) { int i; double s=0.0,s1=0.0; for(i=1;i<=n;i++) { s1=s1+i; /*求每一项的分母*/ s=s+1.0/s1; /*求S=1+1/(1+2)+1/(1+2+3)+…+1/(1+2+3+…+n)*/ } return s; } 七十八套 1.请补充函数fun,该函数的功能是:把从主函数中输入的字符串str2接在字符串str1的后面。 例如,str1=\,str2=\?\,结果输出:How do you do? (1) *(p1+i) (2) *p2 (3) *p2++ 2.下列给定程序中,函数fun的功能是:按顺序给s所指数组中的元素赋予从2开始的偶数,然后再按顺序对每5个元素求一个平均值,并将这些值依此存放在w所指的数组中。若s所指数组中元素的个数不是5的倍数,多余部分忽略不计。例如,s所指数组有14个元素,则只对前10个元素进行处理,不对最后的4个元素求平均值。 请改正函数fun中的错误,使它能得出正确的结果。 if((i+1)%5==0) 3.请编写函数fun,该函数的功能是:将M行N列的二维数组中的数据,按列的顺序依此放到一维数组中。一维数组中数据的个数存放在形参n所指的存储单元中。 例如,若二维数组中的数据为: 33 33 33 33 44 44 44 44 55 55 55 55 则一维数组中的内容应是: 33 44 55 33 44 55 33 44 55 33 44 55 void fun(int (*s)[10],int *b,int *n,int mm,int nn) { int i,j; for(j=0;j for(i=0;i b[*n]=*(*(s+i)+j); *n=*n+1; /*通过指针返回元素个数*/ } 七十九套 1.请补充函数fun,该函数的功能是:返回字符数组中指定字符的个数,指定字符从键盘输入。 (1) s[i]或者s[i]!= ′\\0′ (2) s[i]==ch (3) return n 2.下列给定程序中,函数fun的功能是根据输入的3个边长(整型值),判断能否构成三角形:若能构成等边三角形,则返回3,若是等腰三角形,则返回2,若能构成三角形则返回1,若不能,则返回0。 (1)return 3; (2)return 1; 3.请编写一个函数,用来删除字符串中的所有空格。 例如,输入asd af aa z67,则输出为asdafaaz67。 void fun(char *str) { int i=0; char *p=str; while(*p) { if(*p!=' ') /*删除空格*/ { str[i]=*p; i++; } p++; } str[i]=′\\0′; /*加上结束符*/ } 八十套 1.请补充函数fun,该函数的功能是:先将在字符串s中的字符按逆序存放到字符串t中,然后把s中的字符按正序连接到t串的后面。 例如,s中的字符串为ABCDE时,则t中的字符串应为EDCBAABCDE。 (1) s1-i-1或s1-1-i (2) 2*s1或s1*2 2.下列给定程序的功能是:读入一个整数k(2≤k≤10000),输出它的所有质因子(即所有为素数的因子)。例如,若输入整数2310,则应输出:2、3、5、7、 (1)IsPrime(int n) (2)if(!(n%i)) 3.请编写一个函数void fun(int m, int k, int xx[]),该函数的功能是:将大于整数m且紧靠m的k个素数存入所指的数组中。 例如,若输入17,5,则应输出19,23,29,31,37。 void fun(int m, int k, int xx[]) { int i,j,n; for(i=m+1,n=0;n {for(j=2;j if(i%j==0) break; if(j>=i) /*如果是素数,放入数组xx中*/ xx[n++]=i; } 八十一套 1.请补充函数fun,该函数的功能是:求出数组的最大元素在数组中的下标,并存放在k所指的存储单元中。 例如,输入如下整数:876 675 896 101 301 401 980 431 45l 777,则输出结果为:6,980。 (1) *k (2) s[i]>max (3) i 2.下列给定程序中,函数fun的功能是:统计子字符串substr在字符串str中出现的次数。例如,若字符串为aaas lkaaas,子字符串为as,则应输出2。 (1)int fun(char *str, char *substr) (2)for (i=0; str[i]; i++) 3.请编写一个函数fun,它的功能是:将ss所指字符串中所有下标为奇数位置的字母转换为大写(若该位置上不是字母,则不转换)。 例如,若输入abc4Efg,则应输出aBc4EFg。 void fun(char *ss) { int i; for(i=0;ss[i]!=′\\0′;i++) /*将ss所指字符串中所有下标为奇数位置的字母转换为大写*/ if(i%2==1&&ss[i]>=′a′&&ss[i]<=′z′) ss[i]=ss[i]-32; 八十二套 1.请补充main函数,该函数的功能是:如果数组aa的前一个元素比后一个元素小,则把它保存在数组bb中并输出。 例如,输入\,则结果输出\。 (1) N-1 (2) bb[n++]=aa[i] (3) i,bb[i] 2. 下列给定程序中函数fun的功能是:从低位开始取出长整型变量s中奇数位上的数,构成一个新数放在t中,例如,当s中的数为7654321时,t中的数为7531。? (1)void fun(long s,long *t) (2)s1=s1] 3.下列程序定义了N×N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的s。例如,若a 数组中的值为: 0 1 2 7 9 1 9 7 4 5 2 3 8 3 1 4 5 6 8 2 5 9 1 4 1