二级C上机考试考试题库、程序修改题
更新时间:2023-03-15 15:08:01 阅读量: 教育文库 文档下载
程序修改题 答案:
1.先将在字符串s中的字符按正序存放到t串中,然后把s中的字符按逆序连接到t串的后面。 例如:当s中字符串为:“ABCDE”时,则t中的字符串应为:“ABCDEEDCBA”。 for(i=0;i 2.从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在t中,高位仍在高位,低位仍在低位。例如当s中的数为:7654321时,t中的数为:7531。 void fun (long *t) sl=sl*10; 3.将n个无序整数从小到大排序。 for(i=j+1;i 4.将长整型数中每一位上为偶数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。 例如,当s中的数为:87653142时,t中的数为:8642。 if(d%2==0) s/=10; 5.计算正整数num的各位上的数字之积。例如,若输入:252,则输出应该是:20。若输入:202,则输出应该是:0。 long k=1; num/=10; 6.将字符串中的字符按逆序输出,但不改变字符串中的内容。例如,若字符串为abcd,则应输出dcba。 void fun(char *a) printf(\ 7.用选择法对数组中的n个元素按从小到大的顺序进行排序。 p=j; p=i; 8.删除p所指字符串中的所有空白字符(包括制表符、回车符及换行符)。 输入字符串时用'#'结束输入。 for(i=0,t=0; p[i]; i++) c[t]='\\0'; 9.求出s所指字符串最后一次出现的t所指子字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串;若未找到,则函数值NULL。 a=NULL; if(*r==*p) 10.将s所指字符串中出现的与t1所指字符串相同的子串全部替换成t2所指字符串,所形成的新串放在w所指的数组中。在此处,要求t1和t2所指字符串的长度相同。 while(*r) *a=*r; a++; r++; 11.从s所指字符串中,找出与t所指字符串相同的子串的个数作为函数值返回。例如,当s所指字符串中的内容为:“abcdabfab”,t所指字符串内容为:“ab”,则函数返回整数3。 r++; p++; if(*r=='\\0') 12.:读入一个整数k(2≤k≤10000),打印它的所有质因子(即所有为素数的因子)。 例如,若输入整数:2310,则应输出:2、3、5、7、11。 IsPrime(int n) if(!(n%i)) 13.求k!(13),所求阶乘的值作为函数值返回。例如:若k=10,则应输出:3628800。 if (k>0) else if(k==0) 14.将m(1<=m<=10)个字符串连接起来,组成一个新串,放入pt所指存储区中。例如:把3个串:“abc”,“CD”,“EF”连接起来,结果是:“abcCDEF”。 int k, q, i; pt[i]=str[k][i]; 15.实现两个整数的交换。例如给a和b分别输入:60和65,输出为:a=65 b=60。 void fun(int *a, int *b) t=*b; *b=*a; *a=t; 16.求出数组中最大数和次最大数,并把最大数和a[0]中的数对调、次最大数和a[1]中的数对调。 m=i; if(a[k]>a[m])m=k; 17.判断ch中的字符是否与str所指串中的某个字符相同;若相同,什么也不做,若不同,则将其插在串的最后。 void fun(char *str, char ch) if(*str !=ch) str[1]='\\0'; 18.计算整数n的阶乘。 result*=n--; return result; 19.将p所指字符串中每个单词的最后一个字母改成大写(这里的\单词\是指有空格隔开的字符串)。例如,若输入:“I am a student to take the examination”则输出:“I aM AstudenT tO takE thE examinatioN”。 if(*p==' ') *(p-1)=toupper(*(p-1)); 20.根据形参m,计算如下公式的值。 t=1+1/2+1/3+1/4+...+1/m 例如,若输入5,则应输出2.283333。 t+=1.0/i; return t; 21.将tt所指字符串中的小写字母都改为对应的大写字母,其他字符不变。 例如,若输入“Ab,cD”,则输出“AB,CD”。 if(('a'<=tt[i])&&(tt[i]<='z')) tt[i]-=32; 22.用冒泡法对6个字符串按由小到大的顺序进行排序。 for(j=i+1; j<6; j++) *(pstr+i)=*(pstr+j); 23.根据整型形参m,计算如下公式的值。 y=1+1/2*2+1/3*3+1/4*4+...+1/m*m。 例如,若m中的值为:5,则应输出:1.463611。 for(i=2; i<=m; i++) y+=1.0/(i*i); 24.通过某种方式实现两个变量值的交换,规定不允许增加语句和表达式。例如变量a中的值原为8,b中的值原为3,程序运行后a中的值为3,b中的值为8。 t=*x; *x=y; return(t); 25.给定程序MODI1.C中fun函数的功能是:求s=aa?aa-...-aaa-aa-a(此处aa?aa表示n个a,a和n的值在1至9之间) 例如a=3,n=6,则以上表达式为: s=333333-33333-3333-333-33-3 其值是:296298 a和n是fun函数的形参,表达式的值作为函数值传回main函数。 long s=0, t=0; t=t/10; 26.用下面的公式求π的近似值,直到最后一项的绝对值小于指定的数(参数num)为止: 例如,程序运行后,输入0.0001,则程序输出3.1414. while (fabs(t)>=num) t=s/n; 27.在主函数中从键盘输入若干个数放入数组中,用0结束输入并放在最后一个元素中。Fun的功能是计算数组元素中值为正数的平均值(不包括0)。如数组中元素中的值依次为:39,-47,21,2,-8,15,0。则程序的运行结果为:19.250000。 double sum=0.0; sum /=c; 28.计算并输出high以内最大的10个素数之和。high的值由主函数传给fun函数。 若high的值为: 100, 则函数的值为: 732。 while((2<=high)&&(n<10)) yes=0; break; 29.计算并输出下列级数的前N项之和Sn,直到Sn+1 大于q为止,q的值通过形参传入。 SN=2/1+3/2+4/3+??+N+1/N。例如,若q的值为:50.0,则函数值为:49.394948。 s=s+(n+1.)/n; return t; 30.计算s=f(-n)+f(-n+1)+??+f(0)+f(1)+f(2)+??+f(n)的值。例如,当n为5时,函数值应为:10.407143。 |(x+1)/(x-2) x>0且x!=2 f(x)|0 x=0或x=2 |(x-1)/(x-2) x<0 double f(double x) return s; 31.(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值。其中x和y的值不等,z和y的值不等。 例如,当x的值为9、y的值为11、z的值为15时,函数值为-3.50。 #define FU(m,n) ((m)/(n)) return (value); 32.利用折半查找算法查找整数m在数组中的位置。若找到,返回其下标值; 反之,返回-1。 int fun(int a[],int m) else if(m>a[mid]) 33.用二分法求方程2x(3)-4x(2)+3x-6=0的一个根,并要求绝对误差不超过0.001。 例如,若给m输入-100,给n输入90,则函数求得的一个根值为2.000 double r; while(fabs(n-m)>0.001) 34.求出两个非零正整数的最大公约数,并作为函数值返回。 例如,若给num1和num2输入49和21,则输出的最大公约数为7;若给num1和num2分别输 入27和81,则输出最大公约数为27。 t=a;a=b;b=t; return(b); 35.按以下递归公式求函数值。 fun(n)=|10 (n=1) |fun(n-1)+2 (n>1) 例如,当给n输入5时,函数值为18;当给n输入3时,函数值为14。 int fun(int n) if(n==1) 36.用递归算法计算斐波拉契数列中第n项的值。从第一项起,斐波拉契数列为:1、1、2、3、5、8、13、21、? 例如,若给n输入7,该项的斐波拉契数值为:13。 switch(g) case 1: return 1; case 2:return 1; 37.按顺序给s所指数组中的元素赋予从2开始的偶数,然后再按顺序对每五个元素求一个平均值,并将这些值依次存放在w所指的数组中。若s所指数组中元素的个数不是5的倍数,多余部分忽略不计。 例如:s所指数组有14个元素,则只对前10个元素进行处理,不对最后的4个元素求平均值。 sum=0.0; if((i+1)%5==0) 38.把主函数中输入的3个数,最大的放在a中,最小的放在c中,中间的放在b中。例如,输入的数为:55 12 34输出结果应当是:a=55.0 , b=34.0 , c=12.0。 float k; if(*a<*c) 39.将一个由八进制数字字符组成的字符串转换为与其面值相等的十进制整数。规定输入的字符串最多只能包含5位八进制数字字符。 例如,若输入:77777,则输出将是:32767。 n=*p-'0'; n=n*8+*p-'0'; 40.将p所指字符串中的所有字符复制到b 中,要求每复制三个字符之后插入一个空格。 例如,在调用fun函数之前给a输入字符串:ABCDEFGHIJK, 调用函数之后,字符数组b中的内容则为:ABC DEF GHI JK。 b[k]=*p; b[k++]=''; 41.给一维数组a输入任意4个整数, 并按下例的规律输出。例如输入1、2、3、4, 程序运行后将输出以下方阵。
正在阅读:
二级C上机考试考试题库、程序修改题03-15
食品卫生许可证 退出历史舞台05-13
尊严作文600字07-03
关于变通的作文02-05
针织学试卷04-25
管理06-09
国有企业破产时资产变现中存在的问题及对策06-18
婚庆祝词大全(绝对经典)03-17
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 考试题库
- 上机
- 二级
- 修改
- 程序
- 考试
- XXX承接查验方案
- IPSEC VPN 点到多点配置
- 《宋崇导演教你拍摄微电影》期末考试答案
- 人教版试题试卷第7章 现代生物进化理伦 单元测试
- 中共区委政法委书记办公会议制度
- 室内环境的重要性
- 福师15春大学英语(1)在线作业一答案
- 试验室自查自纠整改情况的报告样本 - 图文
- 北工大自行车里程表 - 图文
- 基站开通流程及常见问题
- 大学物理第二章
- 山东省武城县第二中学2016届高三下学期第一次月考数学(理)试题含答案
- BiOI光催化剂对亚甲基蓝降解性能研究 - 图文
- 计算机组成原理期末复习资料
- 国际经济学练习题及其答案
- 江苏省射阳县第二中学2015届高三数学一轮复习 第9课时 函数与方程导学案 苏教版
- 畜牧标准化养殖等项目 中央预算内投资专项管理办法(试行)
- 陕西师大附中初2016届第七次模拟考试语文试题
- 心理咨询答辩问题与答案
- 山东省淄博市临淄区皇城镇第二中学九年级(五四制)上学期期中考试物理试题