C语言上机100套题

发布时间 : 星期三 文章C语言上机100套题更新完毕开始阅读

j++; }

return sum; }

71◆◆◆◆◆◆◆◆◆◆◆◆◆◆

【填空】函数fun的功能是:统计所有小于等于n(n>2)的素数的个数,素数的个数作为函数值返回。 【答案】【1】j=2【2】i【3】j

【改错】数列中,第一项为3,后一项都比前一项的值增5。下列给定程序中,函数fun的功能是:计算前n(4≤n≤50)项的累计和。在累加过程中把那些被4除后余2的当前累加值放入数组中,符合此条件的累加值的个数作为函数值返回主函数里。如当n的值为20时,该数列为3,8,13,18,23,28,?,93,98。符合此条件的累加值应为42,126,366,570,1010。 【答案】【1】int i,j=0,k,sum; 【2】if(sum%4==2) 【3】return j++;

【编程】请编写函数fun,其功能是:计算并输出下列多项式值, S=(1-1/2)+(1/3-1/4)+?+(1/(2n-1)-1/2n)

例如,若主函数从键盘给n输入8后,则输出为S= 0.662872。 【答案】

double fun(int n) {

int i;

double s=0.0;

for(i=1;i<=n;i++) s=s+(1.0/(2] return s; }

72◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】函数fun的功能是:统计长整数n的各位上出现数字1、2、3的次数,并用外部(全局)变量c1\\c2\\c3返回主函数。例如,当n=123114350时,结果应该为:c1=3 c2=1 c3=2 【答案】【1】n【2】break 【3】break

【改错】下列给定程序中函数fun实现的功能是:统计一个无符号整数中各位数字值为0的个数,通过形参传回主函数,并把该整数中各位上最大的数字值作为函数值返回。例如,若输入无符号整数30800,则数字值为0的位的个数为3,各位上数字值最大的是8。 【答案】【1】if(t==0) 【2】*zero=count;

【编程】请编写函数fun,其功能是:计算并输出下列多项式的值。 S=1+1/(1*2)+1/(1*2*3)+?+1/(1*2*3*?*n)

例如,若主函数从键盘给n输入50后,则输出为S=1.718282。 【答案】

double fun(int n) { double s=0,m=1; int i;

for(i=1;i<=n;i++) { m=m*i; s+=1/m; } return s; }

73◆◆◆◆◆◆◆◆◆◆◆◆◆◆

【填空】用筛选法可得到2~n(n<10000)之间的所有素数,方法是:首先从素数2开始,将所有2的倍数的数从数表中删去(把数表中相应位置的值置0)????这样会得到一个序列:2,3,5,7,11,13??. 【答案】【1】a[i]【2】a[i]【3】0

【改错】下列给定函数中函数fun的功能是:为一个偶数寻找两个素数,这两个素数之和等于该偶数,并将这两个素数通过形参指针传回主函数。 【答案】【1】y=1;【2】d=a-i;

【编程】请编写函数fun,它的功能是:计算并输出n(包括n)以内所有能被5或9整除的自然数的倒数之和。例如,若主函数从键盘给n输入20后,则输出为s= 0.583333。 注意:n的值要求不大于100。 【答案】

double fun(int n) {

int i;

double sum=0.0; for(i=1;i<=n;i++) if(i%5==0||i%9==0) sum+=1.0/i; return sum; }

74◆◆◆◆◆◆◆◆◆◆◆◆◆◆

【填空】甲乙丙丁4人同时开始放鞭炮,甲每隔t1s放一次,乙每隔t2s放一次???第一声响是在第0秒。

例如,t1=7,t2=5,t3=6,t4=4,n=10,则总共可听到28次鞭炮声。 【答案】【1】i【2】t++【3】count

【改错】下列给定程序中函数fun的功能是根据输入的3个边长(整型值),判断能否构成三角形:若能构成等边三角形,则返回3,若是等腰三角形,则返回2,若能构成三角形则返回1,若不能,则返回0。 【答案】

【1】return 3;【2】return 1;

【编程】请编写函数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; }

75◆◆◆◆◆◆◆◆◆◆◆◆◆◆

【填空】函数fun的功能是:从三个形参啊a、b、c中找出中间的数,并作为函数返回值。 例如a=3,b=5,c=4时,中间数为4 【答案】【1】a【2】a【3】b

【改错】下列给定程序中,函数fun的功能是:将大写字母转换为对应小写字母之后的第5个字母,若小写字母为v~z,则使小写字母的值减21。转换后的小写字母作为函数值返回。例如,若形参字母A,则转换为f;形参字母W,则转换为b。 【答案】 【1】c=c+32;【2】c=c+5;

【编程】请编写函数fun,该函数的功能是:计算并输出???????例如,若主函数从键盘给n输入20后,则输出为S=534.188884。 【答案】

double fun(int n) {

int i;

double s=0.0,s1=0.0; for(i=1;i<=n;i++)

{ s1=s1+pow(i,0.5); s=s+s1; }

return s; }

76◆◆◆◆◆◆◆◆◆◆◆◆◆◆

【填空】程序通过定义学生结构体变量,存储了学生的学号、姓名、和三门课的成绩。所有学生的数据均以二进制方式输入到文件中。函数fun的功能是重写形参filename所指文件中最后一个学生的数据,即用新的学生数据覆盖该学生原来的数据,其他学生的数据不变。 【答案】【1】filename 【2】fp【3】fp

【改错】下列给定程序中的函数Creatink()的功能是创建带头结点的单向链表,并为各结点数据域赋0到m-1的值。 【答案】【1】p=(NODE*)malloc(sizeof(NODE)); 【2】return h;

【编程】请编写函数fun,其功能是:统计一行字符串中单词的个数,作为函数值返回。字符串在主函数中输入,规定所有单词由小写字母组成,单词之间有若干个空格隔开,一行开

始没有空格。 【答案】

int 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; }

77◆◆◆◆◆◆◆◆◆◆◆◆◆◆

【填空】给定程序中,函数fun的功能是:计算形参x所指数组中的N个数的平均值(规定所有数均为正数),作为函数值返回,并将大于平均值的数放在形参y所指数组中,在主函数中输出。例如,有10个正数。46.30.32.40.6.17.45.15.48.26.其平均值为30.500000 主函数中输出:46,32,40,45,48 【答案】【1】0.0【2】x[i]/N【3】j++

【改错】下列给定程序中,函数fun的功能是:根据整型参数m,计算如下公式的值。 y=1/(100×100)+1/(200×200)+1/(300×300)+?+1/(m×m)例如,若m=2000,则应输出0.000160。 【答案】【1】double fun(int m) 【2】for(i=100;i<=m;i+=100)

【编程】已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,该函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)。已给出函数的首部,请完成该函数。 【答案】

fun(STU a[], STU *s) {

int i; *s=a[0];

for(i=0;is>a[i].s) *s=a[i]; }

78◆◆◆◆◆◆◆◆◆◆◆◆◆◆

【填空】给定程序中,函数fun的功能是:计算x所指数组中n个数的平均值(规定所有书均为整数),平均值通过形参返回给主函数,将小于平均值且最接近平均值的书作为函数值返回,在主函数中输出。例如,有10个正数:46.30.32.40.6.17.45.15.48.26,平均值为30.500000 主函数中输出m=30.0 【答案】【1】*av【2】i【3】x[j]

【改错】下列给定程序中函数fun的功能是:根据整型形参n,计算如下公式的值。 A1=1,A2=1/(1+A1),A3=1/(1+A2),?,An=1/(1+A(n-1)) 例如,若n=10,则应输出0.617977。 【答案】【1】float fun(int n) 【2】for(i=2;i<=n;i++)

【编程】下列程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数fun(int

联系合同范文客服:xxxxx#qq.com(#替换为@)