收藏 分销(赏)

C 语言上机题库.doc

上传人:pc****0 文档编号:6769850 上传时间:2024-12-21 格式:DOC 页数:17 大小:125KB
下载 相关 举报
C 语言上机题库.doc_第1页
第1页 / 共17页
C 语言上机题库.doc_第2页
第2页 / 共17页
C 语言上机题库.doc_第3页
第3页 / 共17页
C 语言上机题库.doc_第4页
第4页 / 共17页
C 语言上机题库.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、37给定程序的功能是对指定字符在字符串a中出现的次数进行统计,统计的数据存到b数组中。其中:字符Z出现的次数存放到b0中,字符Y出现的次数存放到b1中,字符X出现的次数存放到b2中,字符W出现的次数存放到b3中,字符V出现的次数存放到b4中,其它字符出现的次数存放到b5中。 例如,当a中的字符串为AYYZXW1Y+ZWVP,调用该函数后,b中存放数据应是:2、3、1、2、1、4。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的blank37.c中。 不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作

2、:内容为for (i=0; i strlen(a); i+) 实际操作结果:内容为for(i=0;i_1_(a);i+)第2 处内容填写有误 第2处操作错误 题面要求操作:内容为else b5+; 实际操作结果:内容为_2_b5+;第3 处内容填写有误 第3处操作错误 题面要求操作:内容为fun(a, b); 实际操作结果:内容为fun(_3_);63在考生文件夹下的给定程序modi63.c中,在主函数中从键盘输入若干个数放入数组中,用0结束输入并放在最后一个元素中。下列程序中,函数fun的功能是:计算数组元素中值为正数的平均值(不包括0)。 例如:数组中元素中的值依次为:39,-47,21,

3、2,-8,15,0,则程序的运行结果为:19.250000。 请改正程序中的错误,使它能得出正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作:内容为double sum=0.0; 实际操作结果:内容为intsum=0.0;第2 处内容填写有误 第2处操作错误 题面要求操作:内容为sum/=c; 实际操作结果:内容为sum=c; 49 函数fun的功能是:将s所指字符串中ASCII值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。 例如,若s所指字符串中的内容为:“ABCDEFG12345”,其中字符B的

4、ASCII码值为偶数、字符2的ASCII码值为偶数、都应当删除,其他依次类推。最后t所指的数组中的内容是:“ACEG135”。 注意:部分源程序存在考生文件夹下的文件prog49.c中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。void fun(char *s, char t) int i,slenth,n=0; slenth=strlen(s); /*统计字符串s中字符的个数*/ /*判断字符si其值的ASCII码值是否为偶数,如果是,则继续下一个字符的判断,否则将字符si复制到t数组中*/ for(i=0;islenth;i+) if(si

5、%2!=0) tn+=si; tn=0;19 给定程序的功能是计算并输出下列级数的前N项之和SN,直到SN+1大于q为止,q的值通过形参传入。 2 3 4 N+1 SN = + + + + 1 2 3 N 例如,若q的值为50.0,则函数值为50.416687。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的blank19.c中。 不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作:内容为while (s=q) 实际操作结果:内容为while(s_1_q)第2 处内容填写有误 第2处操作错误 题面要

6、求操作:内容为n+; 实际操作结果:内容为_2_;第3 处内容填写有误 第3处操作错误 题面要求操作:内容为return s; 实际操作结果:内容为_3_;36在考生文件夹下的给定程序modi36.c中,函数fun的功能是:将m(1m10)个字符串连接起来,组成一个新串,放入pt所指字符串中。 例如:把3个串:abc,CD,EF串连起来,结果是abcCDEF。 请改正程序中的错误,使它能得出正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作:内容为int k,q,i; 实际操作结果:内容为Intk,q,i;第2 处内容

7、填写有误 第2处操作错误 题面要求操作:内容为pti=strki; 实际操作结果:内容为pti=strk,i;188.请编写函数fun,它的功能是:计算并输出n(包括n)以内能被5或9整除的所有自然数的倒数之和。 例如,在主函数中从键盘给n输入20后,输出为:s=0.583333。 注意:要求n的值不大于100。 部分源程序在考生文件夹下的文件prog188.c中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。#include double fun(int n)int i; double sum=0.0; /*将sum定义为双精度型变量,并给其赋初

8、值为0.0*/if(n0&n=100)for (i=1;i=n;i+) if(i%5=0|i%9=0) /*判断i是否能被5或者9整除*/ sum+=1.0/i; /*累加自然数的倒数之和,放入变量sum中*/return sum; /*返回结果*/27.给定程序的功能是将n个人员的考试成绩进行分段统计,考试成绩放在a数组中,各分段的人数存到b数组中:成绩为60到69的人数存到b0中,成绩为70到79的人数存到b1,成绩为80到89的人数存到b2,成绩为90到99的人数存到b3,成绩为100的人数存到b4,成绩为60分以下的人数存到b5中。 例如,当a数组中的数据是:93、85、77、68、5

9、9、43、94、75、98。 调用该函数后,b数组中存放的数据应是:1、2、1、3、0、2。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的blank27.c中。 不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作:内容为for (i=0; in; i+) 实际操作结果:内容为for(i=0;i0) 实际操作结果:内容为while(s0)157.请编写一个函数fun,它的功能是:删除字符串中的数字字符。例如输入字符串:48CTYP9E6,则输出:CTYPE。 注意: 部分源程序存在考生文件夹下的文件

10、prog157.c中。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。#include void fun (char *s) int i,j=0; char str100,*p; p=s; while(*p!=0) if(*p9) /*判断指针相应位上的值是否不为数字字符*/ strj+=*p; /*如果不为数字字符则将此值存放入数组str中*/ p+; strj=0; /*赋以字符串结束标志*/ p=s; for(i=0;ij;i+) pi=stri; pi=0; 7.给定程序的功能是将十进制正整数m转换成k进制(2k9)数的数字输出。 例如,若输

11、入8和2,则应输出1000(即十进制数8转换成二进制表示是1000)。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的blank7.c中。 不得增行或删行,也不得更改程序的结构!1 处内容填写有误 第1处操作错误 题面要求操作:内容为aai = m%k; 实际操作结果:内容为aai=_1_;第2 处内容填写有误 第2处操作错误 题面要求操作:内容为m /= k; 实际操作结果:内容为m/=_2_;第3 处内容填写有误 第3处操作错误 题面要求操作:内容为printf( %d, aa i-1 ); 实际操作结果:内容为printf(%d,

12、_3_i-1); 84. 在考生文件夹下的给定程序modi84.c中,函数fun的功能是:判断一个整数m是否是素数,若是返回1,否则返回0。 在main()函数中,若fun返回1,输出YES,若fun返回0,输出NO!。 请改正程序中的错误,使它能得出正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作:内容为k+; 实际操作结果:内容为k+第2 处内容填写有误 第2处操作错误 题面要求操作:内容为if(m=k) 实际操作结果:内容为if(m=k)74.规定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:删

13、除字符串中的所有的*号。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为:*A*BC*DEF*G*,删除后,字符串中的内容应当是:ABCDEFG。 注意:部分源程序存在考生文件夹下的文件prog74.c中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。void fun(char *a) char b81; int i=0,j=0; while (ai) if (ai!=*) bj=ai;j+;i+; /*将原串中的所有非*字符赋给字符串数组b*/ else i+; bj=0; j=0;i=0; while (bj) /*将字符

14、串b中的所有字符复制到a字符串中覆盖原串*/ ai=bj;i+;j+; ai=0;20.给定程序的功能是求k!(k 0) 实际操作结果:内容为if(k_1_0)第2 处内容填写有误 第2处操作错误 题面要求操作:内容为return (k*fun(k-1); 实际操作结果:内容为return(k*fun(_2_);第3 处内容填写有误 第3处操作错误 题面要求操作:内容为else if ( k=0 ) 实际操作结果:内容为elseif(k_3_0)46. 在考生文件夹下的给定程序modi46.c中,函数fun的功能是:输入两个双精度数,函数返回它们的平方和的平方根值。 例如:输入:22.936和

15、14.121,输出为:y=26.934415。 请改正程序中的错误,使它能得出正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作:内容为double fun(double *a,double *b) 实际操作结果:内容为doublefun(double*a,*b)第2 处内容填写有误 第2处操作错误 题面要求操作:内容为c=sqrt(*a)*(*a)+(*b)*(*b); 实际操作结果:内容为c=sqr(a*a+b*b);请编一个函数float fun(double h),函数的功能是对变量h中的值保留2位小数,并对第

16、三位进行四舍五入 (规定h中的值为正数)。 例如:h 值为 8.32433, 则函数返回 8.32; h 值为 8.32533, 则函数返回 8.33。 注意: 部分源程序存在考生文件夹下的文件prog172.c中。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。float fun ( float h ) long num; h=h+0.005; /*将原数值加上要保留位(第三位)上的位权值的一半*/ h=h*100; /*将h的值扩大100倍*/ num=h; /*将h的数据类型转为长整型*/ h=num; h=h/100; /*将h用100整除,

17、以达到四舍五入的目的*/ return h; /*返回结果*/解法二:/*注:h乘以1000后正好是原小数点后第三位做了新数的个位数,然后再进行加5运算时。如原小数点后第三位为4及以下则加5后还是不能进一位(即四舍),如是5及以上则加5后该位就要向前进一位数(即五入)。进行加5运算后除10再赋给一个整型变量此时就只有原小数点第二位及以前各位保留在整型变量中,最后再对整型变量除100,这样又出现了两位小数。该题中,进行四舍五入后一定要赋给一个整型变量才能将不用部分彻底变成0*/float fun(float h) long t; h=h*1000; t=(h+5)/10; return (flo

18、at)t/100;11. 给定程序的功能是将大写字母转换为对应小写字母之后的第五个字母;若小写字母为vz,使小写字母的值减21。转换后的小写字母作为函数值返回。例如,若形参是字母A,则转换为小写字母f;若形参是字母W,则转换为小写字母b。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的blank11.c中。 不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作:内容为c=c+5; 实际操作结果:内容为c=c+_1_;第2 处内容填写有误 第2处操作错误 题面要求操作:内容为return c; 实际操作

19、结果:内容为return_2_;第3 处内容填写有误 第3处操作错误 题面要求操作:内容为c2=fun(c1); 实际操作结果:内容为c2=fun(_3_); 75. 在考生文件夹下的给定程序modi75.c中,函数fun的功能是:读入一个字符串(长度tj+1) 实际操作结果:内容为if(tjtj+1)41. 函数fun的功能是:将s所指字符串中下标为奇数、同时ASCII值也为奇数的字符删除,串中剩余的字符形成一个新串放在t所指的数组中。 例如:若s所指串中的内容为:“ABCDEFG12345”,其中C的ASCII码值虽为奇数,但在数组中的下标为偶数,因此不能删除,而字符1的ASCII码值为奇

20、数,在数组中的下标也为奇数,因此应当删除,其他依次类推。最后,t所指的数组中的内容是“ABCDEFG24”。 注意:部分源程序存在考生文件夹下的文件prog41.c中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。void fun(char *s, char t) int i,slenth,n=0; slenth=strlen(s); /*统计字符串s中字符的个数*/ for(i=0;i0 f(x) = 0 x=0 或 x=2 (x-1)/(x-2) x0 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在

21、考生文件夹下的blank12.c中。 不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作:内容为return 0; 实际操作结果:内容为return_1_;第2 处内容填写有误 第2处操作错误 题面要求操作:内容为for (i= -n; i=n; i+) 实际操作结果:内容为for(i=-n;i=_2_;i+)第3 处内容填写有误 第3处操作错误 题面要求操作:内容为return s; 实际操作结果:内容为return_3_;14. 在考生文件夹下的给定程序modi14.c中,函数fun的功能是:统计字符串中各元音字母(即:A、E、I、O、U)的个数。注意

22、:字母不分大、小写。 例如:若输入:THIs is a boot, 则输出应该是:1、0、2、2、0。 请改正程序中的错误,使它能得出正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作:内容为numk=0; 实际操作结果:内容为numi=0;第2 处内容填写有误 第2处操作错误 题面要求操作:内容为switch(*s) 实际操作结果:内容为switch(s)50.编写函数fun,它的功能是:求n以内(不包括n)同时能被3与7整除的所有自然数之和的平方根s,并作为函数值返回。 例如若n为1000时,函数值应为:s=15

23、3.909064。 注意:部分源程序存在考生文件夹下的文件prog50.c中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。double fun(int n) int i,s=0; for (i=1;in;i+) /*判断i是否能被3与7同时整除*/ if (i%3=0 & i%7=0) s=s+i; return (sqrt(s);23. 给定程序的功能是分别统计字符串中大写字母和小写字母的个数。 例如,给字符串ss输入:AaaaBBb123CCccccd, 则输出结果应为:upper = 5,lower = 9 请在程序的下划线处填入正确的内容

24、并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的blank23.c中。 不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作:内容为(*a)+; 实际操作结果:内容为_1_;第2 处内容填写有误 第2处操作错误 题面要求操作:内容为(*b)+; 实际操作结果:内容为_2_;第3 处内容填写有误 第3处操作错误 题面要求操作:内容为printf( n upper = %d lower = %dn, upper, lower ); 实际操作结果:内容为printf(nupper=%dlower=%dn,_3_);89.考生文件夹下的给定程

25、序modi89.c中fun函数的功能是:计算1+2+3+n的和值。 请改正程序中的错误,使它能得出正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作:内容为float fun (n) 实际操作结果:内容为fun(intn)第2 处内容填写有误 第2处操作错误 题面要求操作:内容为if (n=1) 实际操作结果:内容为if(n=0)53. 函数fun的功能是:将s所指字符串中下标为偶数的字符删除,串中剩余字符形成的新串放在t所指数组中。 例如,当s所指字符串中的内容为:“ABCDEFGHIJK”, 在t所指数组中的内容应

26、是:“BDFHJ”。 注意:部分源程序存在考生文件夹下的文件prog53.c中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。void fun(char *s, char t) int i,slenth,n=0; slenth=strlen(s); /*统计字符串s中字符的个数*/ /*将字符串s中全部下标为偶数的字符复制到数组t中*/ for(i=1;islenth;i+=2) tn+=si; tn=0;27. 给定程序的功能是将n个人员的考试成绩进行分段统计,考试成绩放在a数组中,各分段的人数存到b数组中:成绩为60到69的人数存到b0中,成

27、绩为70到79的人数存到b1,成绩为80到89的人数存到b2,成绩为90到99的人数存到b3,成绩为100的人数存到b4,成绩为60分以下的人数存到b5中。 例如,当a数组中的数据是:93、85、77、68、59、43、94、75、98。 调用该函数后,b数组中存放的数据应是:1、2、1、3、0、2。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的blank27.c中。 不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作:内容为for (i=0; in; i+) 实际操作结果:内容为for(i=0;

28、i0) 实际操作结果:内容为while(s0) 157. 请编写一个函数fun,它的功能是:删除字符串中的数字字符。例如输入字符串:48CTYP9E6,则输出:CTYPE。 注意: 部分源程序存在考生文件夹下的文件prog157.c中。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。#include void fun (char *s) int i,j=0; char str100,*p; p=s; while(*p!=0) if(*p9) /*判断指针相应位上的值是否不为数字字符*/ strj+=*p; /*如果不为数字字符则将此值存放入数组str

29、中*/ p+; strj=0; /*赋以字符串结束标志*/ p=s; for(i=0;ij;i+) pi=stri; pi=0; 8. 在考生文件夹下的给定程序modi8.c中,函数fun的功能是:先将在字符串s中的字符按正序存放到t串中,然后把s中的字符按逆序连接到t串的后面。 例如,当s中的字符串为:ABCDE时, 则t中的字符串应为:ABCDEEDCBA。 请改正程序中的错误,使它能得出正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构第1 处内容填写有误 第1处操作错误 题面要求操作:内容为for (i=0;isl;i+) 实际操作结果:内容为for(i=0;i

30、=sl;i+)第2 处内容填写有误 第2处操作错误 题面要求操作:内容为t2*sl=0; 实际操作结果:内容为tsl=0;79.请编写一个函数fun,它的功能是:计算n门课程的平均分,计算结果作为函数值返回。 例如:若有5门课程的成绩是:90.5,72,80,61.5,55,则函数的值为:71.80。 注意:部分源程序存在考生文件夹下的文件prog79.c中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。float fun ( float *a , int n ) int i; float average; double sum=0; for(i=

31、0;in;i+) sum+=ai; /*对数组中的各个元素求和*/ average=sum/n; /*计算平均值*/ return average; /*返回平均值*/ 28. 给定程序的功能是求出1到1000之内能被7或11整除但不能同时被7和11整除的所有整数放在数组a中,通过n返回这些数的个数。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的blank28.c中。 不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作:内容为if(i % 7 = 0) | (i % 11 = 0) & i % 7

32、7 != 0) aj+ = i ; 实际操作结果:内容为if(i%7=0)|(i%11=0)&i%77!=0)aj+=_1_;第2 处内容填写有误 第2处操作错误 题面要求操作:内容为*n = j ; 实际操作结果:内容为*n=_2_;第3 处内容填写有误 第3处操作错误 题面要求操作:内容为fun ( aa, &n ) ; 实际操作结果:内容为fun(_3_);80. 在考生文件夹下的给定程序modi80.c中,函数fun的功能是:计算正整数num的各位上的数字之积,例如,若输入:252,则输出应该是:20。若输入:202,则输出应该是:0。 请改正程序中的错误,使它能得出正确结果。注意:不

33、要改动main函数,不得增行或删行,也不得更改程序的结构!第1 处内容填写有误 第1处操作错误 题面要求操作:内容为long k=1 ; 实际操作结果:内容为longk;第2 处内容填写有误 第2处操作错误 题面要求操作:内容为num/=10; 实际操作结果:内容为num=10;71. 请编写一个函数fun,它的功能是:求出1到m之内(含m)能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。 例如,若传送给m的值为50,则程序输出: 7 11 14 21 22 28 33 35 42 44 49 注意:部分源程序存在考生文件夹下的文件prog71.c中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。void fun ( int m, int *a , int *n ) int i,count=0; for(i=1;i=m;i

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服