您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 数据通信与网络 > No4-江苏省二级C语言等级考试编程样题(2011春7卷)
【要求】1、源程序文件名为myf2.c,输出结果文件名为myf2.out;2、数据文件的打开、使用、关闭均用C语言标准库中缓冲文件系统的文件操作函数实现;3、源程序文件和运行结果文件均需保存到T盘上根目录中供阅卷使用;4、不要复制扩展名为obj和exe的文件到T盘上。【编程架构】#includestdio.hfun1(){}voidmain(){FILE*fp1;fp1=fopen(myf2.out,w);printf(Myexamnumberis:11234567\n);fprintf(fp1,Myexamnumberis:11234567\n);fclose(fp1);}2011春编程题(1)【程序功能】矩阵数据生成及排序。【编程要求】1、编写函数voidcresort(inta[][3],intn)。函数功能是先根据a指向的二维数组中第1列(列下标为0)和第2列(列下标为1)的值按如下规则生成第3列各元素的值,再以行为单位重排a数组各行的值,使得所有行按第3列元素从小到大有序。第3列生成规则:对任意的1,0ni,有:a[i][0]a[i][1]a[i][2]非素数非素数1非素数素数2素数非素数3素数素数42、编写main函数。函数功能是声明5行3列二维数组a并用测试数据初始化,用数组a作为实参调用cresort函数,将a数组数据输出到屏幕及文件myf2.out中。最后将考生本人的准考证号字符串输出到文件myf2.out中。【测试数据与运行结果】测试数据:27160111206907130850屏幕输出:271616918521112371342011春编程题(2)【程序功能】将一个二维数组中的若干行数据按要求插入到另一个二维数组中。【编程要求】1、定义符号常量N代表4。2、编写函数intinsert_row(inta[][N],intn,intb[][N],intm)。已知形参a指向的二维数组(简称a数组)前n行数据已按每行数据之和升序排列,形参b指向的二维数组中有m行数据。insert_row函数实现将b数组中m行数据插入到a数组中,完成插入操作后a数组中所有行的数据仍按每行数据之和升序排列。函数返回a数组中有效数据的行数。3、编写main函数。函数功能是声明两个二维数组x和y并用测试数据初始化,用x和y数组作为实参调用insert_row函数将y数组中的两行数据插入到x数组中。输出x数组中全部数据到屏幕及文件myf2.out中。最后将考生本人的准考证号字符串输出到文件myf2.out中。【测试数据与运行结果】测试数据:x数组原数据:22349101112y数组数据:13579101520屏幕输出:22341357910111291015202011春编程题(3)【程序功能】在一个字符串中查找所有等值字串。如果字符串中的一个字串(其长度大于1)中所有字符均相同,则称之为等值字串。【编程要求】1、函数ensub(chars[],charresult[][80])。函数功能是在s指向的字符串中查找等值子串,将找到的所有等值字串存放到result指向的数组中(一行存储一个子串),函数返回result数组中等值子串的个数。2、编写main函数。函数功能是声明一维数组s和二维数组result,用测试数据初始化s数组,用数组s和result作为实参调用函数ensub在s数组中查找所有等值子串,将找到的等值子串输出到屏幕及文件myf2.out中。最后将考生本人的准考证号字符串输出到文件myf2.out中。【测试数据与运行结果】测试数据:aaahjdbbbbsdccskdjffff屏幕输出:aaabbbbccffff2011春编程题(4)【程序功能】矩阵生成。【编程要求】1、定义符号常量N代表4。2、编写函数voidrotate(int(*t)[N],intn)。函数功能是将t指向的数组中存储的n*n矩阵最外圈全部元素作顺时针旋转90度变换。例如,若n=3有下列矩阵:123456789将最外圈全部元素作顺时针旋转90度变换后应为:7418529633、编写main函数。函数功能是声明N行N列二维数组t,从键盘输入n(41n),用2~1n之间的自然数以行为主序的方式依次填充到二维数组t中,用n和数组t作为实参调用函数rotate,将数组t中的数据输出到屏幕及文件myf2.out中。最后将考生本人的准考证号字符串输出到文件myf2.out中。【测试数据与运行结果】测试数据:n=4屏幕输出:139511467215101131612842011春编程题(5)【程序功能】矩阵生成。【编程要求】1、定义符号常量N代表20。2、编写函数voidmatrix(int(*a)[N],intn)。函数功能是生成一个n阶方阵并保存到a指向的二维数组中。方阵中各元素值的构成规律是:最外圈全部元素的值均为1,自外向内第2圈全部元素均为2,第3圈全部元素的值为3,其它层依此类推。例如,若n=5有下列矩阵:11111122211232112221111113、编写main函数。函数功能是声明N行N列二维数组t,输入n(Nn1),用n和数组a作为实参调用函数martix,将数组a中的方阵输出到屏幕及文件myf2.out中。最后将考生本人的准考证号字符串输出到文件myf2.out中。【测试数据与运行结果】测试数据:n=5屏幕输出:11111122211232112221111112011春编程题(6)【程序功能】对包含的鞍点数不超过一个的矩阵作变换。若一个矩阵元素的值是所在行的最大值并且也是所在列的最小值,则称该元素为鞍点。【编程要求】1、定义符号常量N代表4。2、编写函数intmatrixchange(inta[][N],intm)。函数功能是在a指向的m行N列数组中查找鞍点。若找到一个鞍点则从数组中删除该鞍点所在行及所在列上全部数据,函数返回1;若找不到鞍点,函数返回0。3、编写main函数。函数功能是声明二维数组x并用测试数据初始化,用x数组作为实参调用matrixchange函数,将变换后的x数组中数据输出到屏幕及文件myf2.out中。最后将考生本人的准考证号字符串输出到文件myf2.out中。【测试数据与运行结果】测试数据:43218765121110916151413屏幕输出:765111091514132011春编程题(7)【程序功能】给定一个自然数n,寻找一个满足给定条件的整数m。【编程要求】1、编写函数longfind_m(intn)。函数功能是查找满足以下条件的整数m:(1)m是n的整数倍;(2)m的十进制表示中均由0和1组成。函数返回找到的m值。2、编写main函数。函数功能是声明变量n和m,输入一个整数到n中(n100),用n作为实参调用函数find_m,将n及找到的m输出到屏幕及文件myf2.out中。最后将考生本人的准考证号字符串输出到文件myf2.out中。【测试数据与运行结果】测试数据:n=79屏幕输出:n=79m=10010011
本文标题:No4-江苏省二级C语言等级考试编程样题(2011春7卷)
链接地址:https://www.777doc.com/doc-5247287 .html