c语言考试
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
/* 开卷总分120分, 不许交流,独立做完 */
1.写一个函数,求字符串的长度.(函数原型与C库函数strlen一样) (5分)
2.从键盘输入10个整数存放在数组中,然后重新调整此数组使里面的数据按从小到大顺序存放. (7分)
3.实现函数
1) 输入一个十进制整数,输出其八进制形式 (4分)
2) 不用库函数,用C语言实现将一个整形数字转化为字符串 (6分)
4.只用一个一层循环实现以下功能:(9分)
从键盘输入一个整数n,然后打印n行,每行包含n个*,n个#
例:输入 4 打印如下
****####
****####
****####
****####
5.说出以下定义语句分别表示什么意思,用自己的语言描述. (10分)
const int *p;
const int * const *p;
int *ary[2][3];
int (*ary[5])[10];
int * (* func[10])(int, int);
6.将3, 5, 8, 9排成一个不能被5整除的4位数,共有多少种排法. (10分)
7.N个人围成一圈报数,这N个人的编号从1到N,先从第一个人报数,第一个人报1,第二个人报2, 报到M的人退出,然后又从下一个人开始从1开始继续报数,报到M的人退出,问最后剩下哪一个人? (N, M由用户输入) (12分)
8.实现一个程序,从键盘输入两个字符串,连接两个字符串,并去掉其重复子串,输入的字符串中只能是字符和空格,字符串以空格进行分割. (15分)
例:输入两个字符串如下:
"what is your name"
"my name is bourne"
则去掉两个字符串中都包含的is和name输入: "what your my bourne"
9.输入一句英文存入数组,翻转所有单词的顺序然后存回数组.(单词本身不翻转,单词之间有空格分割) (10分)
例:how are you ==> you are how
10.取出一个字符串中的数字,如从字符串中读入adfad123ladfd456,则分别取出123、456转换成整形并放到一个整数数组中,然后求出所有整数之和,并输出和.(不能调用atoi函数) (12分)
11.给定字符串A和B,输出A和B中的最大公共子串. (12分)
比如A = "aocdfe", B = "pmcdfa" 则输出"cdf"
12.读入文件中数据,统计并输出其中英文字母、数字字符和其它字符的个数. (8分)