C程上机题考试题2015春季学期
更新时间:2024-05-02 14:38:01 阅读量: 综合文库 文档下载
- cda考试模拟题推荐度:
- 相关推荐
《C程序设计》课程期末上机考试
考试时间:50分钟 考试方式:从下面的20题中随机抽取一题,再附加一题,共需完成2道题。
附加题不事先给定
分值分配:第一题60分,第二题40分,共100分 考试时间:2015.6 具体时间与安排见网站通知
1. 请编写函数long fun(long int x),功能是:将长整型数x中每一位上为奇数的
数依次取出,并逆序构成一个新数返回。例如:程序运行时输入123456789,输出:b=97531。 #include
void main() {long a,b;
printf(\ scanf(\ b=fun(a);
printf(\}
2. 编写函数void fun(char *s,char *t,char *p)将未在字符串s中出现、而在字
符串t中出现的字符, 形成一个新的字符串放在p中,p中字符按原字符串中字符顺序排列,但去掉重复字符。
例如: 当s为\为\时, p中的字符为: \
当s为”good luck”,t为”thank you very much”时,输出:”thanyverm” #include
void fun(char *s,char *t,char *p) { }
void main()
{char s1[50],s2[50],s3[50]; gets(s1);gets(s2); fun(s1,s2,s3); puts(s3); } 3. 编写函数int fun(int m),计算并返回满足表达式:1+(1+2)+(1+2+3)+(1+2+3+4)+??+(1+2+3+??+n)<=m最大的n。例如,当m=10000时,程序输出:n=38。 #include
1
int fun(int m) { }
void main() {int x;
scanf(\
printf(\}
4. 编写函数void fun(int *x,int n),它的功能是:删除有n个数据的数组x
中所有包含数字6的数据,后续的剩余元素赋值为-1。n为数组长度,规定x中数据都为正数。
如程序运行时若输入:122 1461 6234 16 11 663 911 2671 381 6 删除后输出: 122 11 911 381 -1 -1 -1 -1 -1 -1 #define N 10
#include
void fun(int *x,int n) { }
void main() {int a[N],i;
for(i=0;i for(i=0;i printf(\ printf(\ } 5. 编写函数long fun(int high,int n),功能是:计算并返回high以内(不包含 high)最大的n个素数之和。若不足n个,则到最小素数2为止。例如:若high=100,n=10,则函数的返回值为:732;若high=11,n=10,则函数返回:17。 #include long fun(int high,int n) { } void main() {int k,n; scanf(\ printf(\} 2 6. 请编写函数int fun(int *a,int n),它的功能是:把形参a所指数组中的偶数 按原顺序依次存放到a[0]、a[1]、a[2]、??中,把奇数从数组中删除,偶数个数通过函数值返回,以-1作为有效数据的结束标志。例:若输入:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15,输出:2 4 6 8 10 12 14 n=7 #include void main() {int x[15],i,n; for(i=0;i<15;i++) scanf(\ n=fun(x,15); for(i=0;x[i]!=-1;i++) printf(\ printf(\} 7.给定程序中,函数fun的功能是:有M×N二维数组,分别将每一行的最大值与本 行的最后一个数据(第N-1列数据)对调,其余数据保持不变。然后按每一行的最大值对二维数据各行降序排序。例如,有右侧数组数据: 11 52 43 4 25 22 求最大值并对调后:11 22 43 4 25 52 22 33 46 58 16 47 22 33 46 47 16 58 83 42 54 26 47 0 0 42 54 26 47 83 4 5 6 7 8 9 4 5 6 7 8 9 45 96 17 18 39 2 45 2 17 18 39 96 排序后最终输出: 45 2 17 18 39 96 0 42 54 26 47 83 22 33 46 47 16 58 11 22 43 4 25 52 4 5 6 7 8 9 #define N 6 #define M 5 #include void main() {int x[M][N]={{11,52,43,4,25,22},{22,33,46,58,16,47},{83,42,54,26,47,0}, 3 {4,5,6,7,8,9},{45,96,17,18,39,2}},i,j; fun(x); for(i=0;i {for(j=0;j printf(\ printf(\ } } 8. 函数void fun(int x,char * p)实现十进制整数x到二进制的转换。转换后的二 进制数以字符串的方式放置于p所指向的数组中。如输入13,输出1101,输入-13,输出-1101。 #include \#include void fun(int x,char *p) { } void main() {int a; char c[18]; scanf(\ fun(a,c); printf(\} 9. 编写函数int fun(char (*ss)[N],int m,char *s),功能是:形参ss指向一个 m行N列的二维字符数组,每行存放一个字符串。求出最大的字符串,复制到s所指的字符数组中,然后返回此最大字符串的长度。 #define N 30 #include int fun(char (*ss)[N],int m,char *s) { } void main() {char a[8][N],b[N]; int i,len; for(i=0;i<8;i++) gets(a[i]); len=fun(a,8,b); printf(\ } 4 10. 给定程序中,函数void fun(char *s)的功能是:在形参s所指字符串中的每个数字字符之后插入一个*号。例如,形参s所指的字符串为:def35adh3kjsdf7。执行结果为:def3*5*adh3*kjsdf7*。 #include void main() {char str[80]; gets(str); fun(str); puts(str); } 11.给定程序中,函数void fun(char *s)的功能是:把形参s所指字符串中下标为偶数的字符右移到下一个偶数位置,最右边被移出字符串的字符绕回放到第一个偶数位置,下标为奇数的字符不动(注:字符串的长度大于等于2)。例:若输入:abcd123,输出:3badc21 #include void main() {char str[80]; gets(str); fun(str); puts(str); } 12.编写函数void fun(char *s1,char *s2),功能是:对形参s1所指字符串升序排 序,并将排序后下标为偶数的字符取出,写入形参s2所指字符数组中,形成一个新串。例如,下面程序若输入:The C Programming Language,输出:□□LTaegghmnor。(□表空格) #include void fun(char *s1,char *s2) { } void main() {char a[80],b[80]; 5 gets(a); fun(a,b); puts(b); } 13.函数void fun(char s[])的功能是:将s所指字符串中ASCII值为奇数的字符删 除。例如,若s所指字符串中的内容为:“ABCDEFG12345”,其中字符A的ASCII码值为奇数、?、字符1的ASCII码值也为奇数、?都应当删除,其它依此类推。最后s中内容是:“BDF24”。 #include void main() {char a[80]; gets(a); fun(a); puts(a); } 14.请编写一个函数int fun(long int x),它的功能是:判断整数x是否是同构数。 若是同构数,函数返回1;否则返回0。所谓“同构数”是指这样的数,它出现在它的平方数的右边。例如:输入整数5,5的平方数是25,5是25中右侧的数,所以5是同构数,输出\。要求x的值不大于10000。 #include void main() {int x; scanf(\ if(fun(x)==1) puts(\ else puts(\} 15.编写取子字符串函数void fun(char s1[],char s2[],int m,int n),其作用是将 字符数组s2中从第m个字符开始的共n个字符拷贝到数组s1中;若s2中剩余字符不足n个,则取到尾部。程序运行时,当输入\、4,3时应输出\;当我们输入\、4,6时应输出\。注意,这里是将1作为起始计数。 #include void fun(char s1[],char s2[],int m,int n) 6 { } void main() {static char a[100],b[100]; int s,len; void fun(char s1[],char s2[],int m,int n); puts(\ gets(a); puts(\ scanf(\ fun(b,a,s,len); printf(\} 16. 编写函数void fun(char *str),将参数字符串中各单词首字母变大写,其余字 母变小写。输入输出在main中实现。如输入\输出\。单词以空格、逗号、句号分隔。 #include void main() {char a[100]; gets(a); fun(a); puts(a); } 17. n个整数,前面各数循环顺序后移m个位置,最后m个数变成最前面m个数。写函 数void fun(int *p,int n,int m),实现上述功能。在main()中输入与输出。如下面程序输出 7 8 9 10 1 2 3 4 5 6 。注意,m可能大于n。 #include \ void fun(int *p,int n,int m) { } void main() {void fun(int *,int ,int ); int x[10]={1,2,3,4,5,6,7,8,9,10},i; fun(x,10,14); for(i=0;i<10;i++) printf(\ 7 printf(\ } 18. 编写函数void fun(char *s1,char *s2),实现字符串s1与s2的交叉连接,连接 后得到的新字符串放在s1中。如输入abc void fun(char *s1,char *s2) { } void main() {char a[100],b[100]; void fun(char *,char *); gets(a); gets(b); fun(a,b); puts(a); } 19. 传说可以根据两个人的生日来计算其缘分.方法:将两个人的生日各位相加,将得 到的数再一次各位相加,直到其值为一个一位数,此数即代表两个人的缘分.例如,两个生日为:19820523,19841111,则各位相加:1+9+8+2+5+2+3+1+9+8+4+1+1+1+1得:56;再5+6得11;再 1+1得2,即为两人的缘分.编写计算缘分程序,两个生日由键盘输入. #include \int fun(long x,long y) { } void main() {long x,y; int k; scanf(\k=fun(x,y); printf(\} 20. m个人围成一圈,1,2,3循环报数,报到3的人退出,并将退出的序号依次存到数 组p中,包括最后一个人的序号。到最后只余1人,输出最后留下的是第几号(最初的序号,以1起始)。若m=6,则输出n=1 8 起始序号,并将退出的序号顺序写入p指向的数组中。 #include int fun(int n ,int *p) { } void main() {int m,a[10000],i,num; scanf(\ num= fun(m,a); printf(\ for(i=0;i printf(\ printf(\} 9
正在阅读:
C程上机题考试题2015春季学期05-02
小学二年级传统文化教案第1课05-15
立定三级跳原地推铅球训练方法03-15
混凝土的技术交底 - 图文06-07
2018八年级下学期家长会班主任发言稿06-10
夏天来了初中作文范文05-01
酉水三峡景区旅游发展总体规划06-06
小学英语演讲稿范文六篇.doc05-06
财政学期末考整理09-11
旅游景区A级评定细则03-11
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 考试题
- 上机
- 春季
- 学期
- 2015
- 党员干部违纪违法问题的处理
- 马克思练习册答案
- 2019年企业管理知识练习题13200
- 行业授信指导意见
- 2013学年第一学期语文组教学总结
- 互联网监管与网络道德建设试题答案
- 路遥《平凡的世界》选择题试卷(经典)
- 孔雀东南飞习题
- MATLAB实验
- 行程 - 发车间隔 - 接送和扶梯问题
- 钦州市养鸡专业合作社名录140家
- 2002年-2011年上海市中考数学试题分类解析汇编专题6:统计与概率
- EBH-90型掘进机整体结构设计 - 图文
- 单层轻钢结构厂房工程施工组织设计
- 放任的家庭教育是一种害-个性化教育案例
- 红外变速球说明书
- 2015年安庆市重点中学高三模拟考试语文试题及答案
- 2019-2020学年高考地理冲刺:专题12.1-世界地理概况(含解析) -
- 2012年修订版 - 毛概课后习题答案
- 汽车音响产品电性能指标及测量方法