第1套

试题说明

***********************************

第一题(30分)

给定程序中已建立一个带有头结点的单向链表,链表中的各结点按结点数据域中的数据从小到大顺序链接。函数fun的功能是:把形参x的值放入一个新结点

并插入到链表中,插入后各结点仍保持从小到大顺序排列。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是:计算并输出k以内最大的10个能被13或17整除的自然数之和。k的值由主函数传入, 若k的值为500, 则函数值为4622。

请改正程序中的错误,使程序能输出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

函数fun的功能是: 对指定字符在字符串a中出现的次数进行统计, 统计的数据存到b数组中。其中: 字符'a'出现的次数存放到b[0]中,字符'b'出现的次数存

放到b[1]中,字符'c'出现的次数存放到b[2]中,字符'd'出现的次数存放到b[3]中,字符'e'出现的次数存放到b[4]中,其它字符出现的次数存到b[5]中。

例如, 当a中的字符串为: "bacd1b+ddep",调用该函数后,b中存放数据应是:1、2、1、3、1、3。

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第2套

试题说明

***********************************

第一题(30分)

给定程序的功能是:调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数返回值为1,失败时返回值为0。在复制的过程中,把复

制的内容输出到终端屏幕。主函数中源文件名放在变量sfname中,目标文件名放在变量tfname中。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C的功能是:读入一行英文文本, 将其中每个单词的最后一个字母改成大写,然后输出此文本行(这里的“单词”是指由空格隔开的字符串)。

例如, 若输入I am a student to take the examination.,则应输出"I aM A studenT tO takE thE examination."。

请改正程序中的错误, 使它能计算出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

编写函数fun, 它的功能是: 计算并输出下列级数和:

1 1 1

S = ── + ── + … + ───

1×2 2×3 n(n+1)

例如: 当n = 15时, 函数值为: 0.937500。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第 3套

试题说明

***********************************

第一题(30分)

给定程序中,函数fun的功能是:将自然数1~10以及它们的平方根写到名为myfile3.txt的文本文件中,然后再顺序读出显示在屏幕上。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

已知一个数列的前三项分别为0,0,1,以后的各项都是其相邻的前三项之和。给定程序MODI1.C中函数 fun 的功能是: 计算并输出该数列前n项的平方根之和

sum。n的值通过形参传入。例如, 当n=10时, 程序的输出结果应为: 23.197745。

请改正程序中的错误, 使程序能输出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数fun (int *a,int n,int *odd,int *even),函数的功能是分别求出数组a中所有奇数之和以及所有偶数之和。形参n给出数组中数据的个数;

利用odd返回奇数之和, 通过even返回偶数之和。例如:a数组元素中的值依次为: 1, 9, 2, 3, 11, 6; 则通过odd返回奇数之和24; 则通过even返回偶数之和 8。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第4套

试题说明

***********************************

第一题(30分)

给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用-1作为字符串输入结束的标志。然后将文件的内容读出显

示在屏幕上。文件的读写分别由自定义函数ReadText和WriteText实现。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 计算并输出high以内最大的10个素数之和。high由主函数传给fun函数。

若high的值为100, 则函数的值为732。

请改正程序中的错误, 使程序能输出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

程序定义了N×N的二维数组, 并在主函数中自动赋值。请编写函数

fun(int a[][N]), 函数的功能是: 使数组上半三角元素中的值全部置成0。例如:

a数组中的值为

| 1 9 7 |

| 0 0 0 |

a = | 2 3 8 | 则返回主程序后a数组中的值应为

| 2 0 0 |

| 4 5 6 |

| 4 5 0 |

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 5套

试题说明

***********************************

第一题(30分)

给定程序的功能是调用fun函数建立班级通讯录。通讯录中记录每位学生的编号、姓名和电话号码。班级的人数和学生的信息从键盘读入,每个人的信息作

为一个数据块写到名为myfile5.dat的二进制文件中。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 求整数x的y次方的低3位值。例如,整数5的6次方为15625, 此值的低3位值为625。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

函数fun的功能是: 把a数组中的n个数和b数组中逆序的n个数一一对应相加,结果存在c数组中。

例如: 当a数组中的值是: 1、3、5、7、8,b数组中的值是: 2、3、4、5、8调用该函数后, c数组中存放的数据是9、8、9、10、10

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第 6套

试题说明

***********************************

第一题(30分)

给定程序功能是用冒泡法对6个字符串进行排序。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 实现两个整数的交换。例如给a和b分别输入: 60 和 65, 输出为: a = 65 b = 60

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

编写一个函数, 从所读入的若干个字符串(用****作为结束输入的标志)中找出长度最大的一个字符串, 并输出该字符串。

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第 7套

试题说明

***********************************

第一题(30分)

给定程序的功能是将十进制正整数m转换成k进制(2≤k≤9)数的数字输出。例如, 若输入8和2, 则应输出1000(即十进制数8转换成二进制表示是1000)。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中fun函数的功能是: 读入一个长度小于63个字符的英文句子,将其中每个单词的最后一个字母改成大写,然后输出此句子 (这里的“单词”

是指由空格隔开的字符串)。

例如, 若输入"I am a student to take the examination.",

则应输出"I aM A studenT tO takE thE examination."。

请修改程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

程序定义了N×N的二维数组, 并在主函数中自动赋值。请编写函数fun(int a[][N]), 函数的功能是:使数组中第一行元素中的值与倒数第一行元素

中的值对调、第二行元素中的值与倒数第二行元素中的值对调、……、其他依次类推。例如: a数组中的值为

|0 11 12 7 9|

|1 9 7 4 5|

a = |20 13 18 3 1|

|14 5 6 8 2|

|15 9 17 4 1|

|15 9 17 4 1|

|14 5 6 8 2|

则返回主程序后a数组中的值应为 |20 13 18 3 1|

|1 9 7 4 5|

|0 11 12 7 9|

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第 8套

试题说明

***********************************

第一题(30分)

给定程序的功能是将未在字符串s中出现、而在字符串t中出现的字符, 形成一个新的字符串放在u中,u中字符按原字符串中字符顺序排列,但去掉重复字符。

例如: 当s="12345", t="24677"时, u中的字符为: "67"。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

例如, 当k为10时, 函数值应为: 1.533852。

请改正程序中的错误, 使程序能输出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第 9套

试题说明

***********************************

第一题(30分)

给定程序的功能是将在字符串s中出现、而未在字符串t中出现的字符形成一个新的字符串放在u中, u中字符按原字符串中字符顺序排列, 不去掉重复字符。

例如: 当s = "112345", t = "2467"时, u中的字符串为"1135"。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是:将在字符串s中下标为偶数位置上的字符, 紧随其后重复出现一次,放在一个新串t中,t中字符按原字符串中字符出现

的逆序排列。(注意0为偶数)

例如: 当s中的字符串为: "123456"时, 则t中的字符串应为: "553311"。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

编写函数fun, 它的功能是:求n以内(不包括n)同时能被3与7整除的所有自然数之和的平方根s, 并作为函数值返回。

例如: 若n为878时, 函数值应为: s = 134.465609。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第 10套

试题说明

***********************************

第一题(30分)

给定程序的功能是将在字符串s中下标为奇数位置上的字符,紧随其后重复出现一次,放在一个新串t中,t中字符按原字符串中字符出现的逆序排列。(注意0为偶数)

例如: 当s中的字符串为: "1234567"时, 则t中的字符串应为: "664422"。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 通过某种方式实现两个变量的值交换的操作, 例如变量a 中的值原为 8,b中的值原为3,程序运行后 a 中的值为 3,

b中的值为8。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

函数fun的功能是: 把a数组中的n个数的平方值,与b数组中逆序的n个数的平方值一一对应相减, 结果存放在c数组中。

例如: 当a数组中的值是: 1、3、5、7、8, b数组中的值是: 2、3、4、5、8调用该函数后, c中存放的数据是: -63、-16、9、40、60

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第 11套

试题说明

***********************************

第一题(30分)

给定程序的功能是将大写字母转换为对应小写字母之后的第五个字母; 若小写字母为v~z, 使小写字母的值减21。转换后的小写字母作为函数值返回。例如,

若形参是字母A,则转换为小写字母f; 若形参是字母W, 则转换为小写字母b。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是:将在字符串s中下标为偶数位置上的字符, 紧随其后重复出现一次,放在一个新串t中,t中字符按原字符串中字符的顺

序排列。(注意0为偶数)

例如: 当s中的字符串为: "12345"时, 则t中的字符串应为: "113355"。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

函数fun的功能是: 把a数组中的n个数的平方值,与b数组中逆序的n个数的平方值一一对应相乘, 结果存放在c数组中。

例如: 当a数组中的值是: 1、3、5、7、8, b数组中的值是: 2、3、4、5、8调用该函数后, c中存放的数据是: 64、225、400、441、256

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第 12套

试题说明

***********************************

第一题(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

f(x) = ┤0 x=0 或 x=2

└(x-1)/(x-2) x<0

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 将未在字符串s中出现、而在字符串t中出现的字符, 构成一个新的字符串放在u中, u中字符按原字符串中字符的顺序

的逆序排列, 不去掉重复字符。

例如, 当s="12345", t="24677"时, u中的字符串为: "776"。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数 void fun(char *tt, int pp[]), 统计在tt字符串中 'a'到 'z' 26个字母各自出现的次数, 并由 pp 数组传回 main 函数。

例如, 当输入字符串: abcdefgabcdeabc 后, 输出的结果应该是:3 3 3 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第 13套

试题说明

***********************************

第一题(30分)

给定程序的功能是求二分之一的圆面积, 函数通过形参得到圆的半径, 函数返回二分之一的圆面积。函数体的变量必须使用r。

例如输入圆的半径值r: 19.527 输出为: s = 598.950017。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 将既在字符串s中出现又在字符串t中出现的字符构成一个新的字符串放在u中,u中字符按原字符串中字符顺序排列,

不去掉重复字符。

例如: 当s="122345", t="2467"时, u中的字符串为: "224"。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数void fun ( int tt[M][N], int pp[N ] ),tt是一个M行N列的二维数组, 求出每列中最小元素, 并依次放入 pp 数组中。tt数组中的数由主

函数从键盘读入。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第 14套

试题说明

***********************************

第一题(30分)

给定程序的功能是将既在字符串s中出现、又在字符串t中出现的字符形成一个新字符串放在u中, u中字符按原字符串中字符顺序排列, 但去掉重复字符。

例如, 当s="122345", t="2467"时, u中的字符串为:"24"。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 求两个形参的乘积和商数, 并通过形参返回调用程序。

例如输入: 61.82 和 12.65,输出为: c = 782.023000 d = 4.886957

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数 void fun(int m, int k, int xx[]),该函数的功能是: 将大于整数 m 且紧靠 m 的 k 个素数存入数组 xx 传回。

例如, 若输入17, 5, 则应输出:19, 23, 29, 31, 37。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第 15套

试题说明

***********************************

第一题(30分)

例如n=8,输入:193.199、195.673、195.757、196.051、196.092、196.596、196.579、196.763时, 结果应为: 1.135901。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 把在字符串s中出现的每个字符,紧随其后重复出现一次, 放在一个新串t中, t中字符按原字符串中的逆序排列。

例如: 当s中的字符串为: "12345"时, 则t中的字符串应为: "5544332211"。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数int fun(*char ss, char c), 它的功能是:求出ss字符串中指定字符 c 的个数, 并返回此值。

例如: 若输入字符串 ss="123412132", c='1', 则输出 3。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第 16套

试题说明

***********************************

第一题(30分)

给定程序的功能是从字符串s尾部开始, 按逆序把相邻的两个字符交换位置,并依次把每个字符紧随其后重复出现一次, 放在一个新串t中。

例如: 当s中的字符串为: "12345"时, 则t中的字符串应为: "4455223311"。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 用下面的公式求π的近似值, 直到最后一项的绝对值小于指定的数(参数num)为止:

π 1 1 1

┄┄≈1 - ┄┄ + ┄┄ - ┄┄ + ...

4 3 5 7

例如, 程序运行后, 输入0.0001, 则程序输出3.1414。

请改正程序中的错误, 使它能输出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

程序定义了N×N的二维数组, 并在主函数中自动赋值。请编写函数fun( int a[][N]), 函数的功能是: 使数组中第一列元素中的值与最后一列元素

中的值对调、第二列元素中的值与倒数第二列元素中的值对调、……、其他依次类推。例如:a 数组中的值为

|0 11 12 7 9|

|1 9 7 4 5|

a = |20 13 18 3 1|

|14 5 6 8 2|

|15 9 17 4 1|

|9 7 12 11 0 |

|5 4 7 9 1 |

则返回主程序后a数组中的值应为 |1 3 18 13 20|

|2 8 6 5 14|

|1 4 17 9 15|

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

第 17套

试题说明

***********************************

第一题(30分)

给定程序的功能是将仅在字符串s中出现而不在字符串t中出现的字符, 和仅在字符串t中出现而不在字符串s中出现的字符, 构成一个新字符串放在u中, u中

的字符按原字符串中字符顺序排列, 不去掉重复字符。

例如: 当s="112345", t="24677"时, u中的字符串为: "1135677"。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 为一个偶数寻找两个素数, 这两个素

数之和等于该偶数,并将这两个素数通过形参指针传回主函数。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数 int fun(int x), 它的功能是: 判断整数x是否是同构数。

若是同构数, 函数返回1; 否则返回0。所谓“同构数”是指这样的数, 它出现在

它的平方数的右边。

例如: 输入整数5, 5的平方数是 25, 5 是 25 中右侧的数,所以5是同构数。

x 的值由主函数从键盘读入, 要求不大于 100。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 18套

试题说明

***********************************

第一题(30分)

给定程序的功能是将在字符串s中出现、而未在字符串t中出现的字符, 构成

一个新的字符串放在u中, u中字符按原字符串中字符顺序的逆序排列, 不去掉重

复字符。

例如, 当s="112345", t="2467"时, u中的字符是:"5311"。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 先从键盘上输入一个3行3列矩阵的各

个元素的值, 然后输出对角线元素之和。

请改正程序中的错误或在横线处填上适当的内容并把横线删除, 使它能得出

正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

函数fun的功能是:把a数组中的n个数的平方值、与b数组中逆序的n个数的平

方值一一对应相加, 结果存在c数组中。

例如: 当a数组中的值是: 1、3、5、7、8, b数组中的值是: 2、3、4、5、8

调用该函数后, c中存放的数据是: 65、34、41、58、68

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 19套

试题说明

***********************************

第一题(30分)

例如, 若q的值为50.0, 则函数值为50.416687。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C的功能是: 删除w数组中下标为k的元素中的值。程序中, 调

用了getindex、arrout和arrdel三个函数,getindex用以输入所删元素的下标, 函

数中对输入的下标进行检查, 若越界, 则要求重新输入,直到正确为止。arrout用

以输出数组中的数据, arrdel进行所要求的删除操作。

请改正程序中的语法错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数, 用来删除字符串中的所有空格。

例如, 输入asd af aa z67, 则输出为 asdafaaz67。

注意:部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 20套

试题说明

***********************************

第一题(30分)

给定程序的功能是求k!(k<13)并通过函数名传回主函数。

例如: 若k = 10, 则应输出: 3628800。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 根据整型形参m的值,计算如下公式的

值。

1 1 1

t = 1 - ----- - ----- - …… - -----

2*2 3*3 m*m

例如, 若 m = 5, 则应输出 0.536389 。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

函数fun的功能是:把a数组中的n个数,和b数组中逆序的n个数一一对应相减、

求平方, 结果存在c数组中。

例如: 当a数组中的值是: 1、3、5、7、8, b数组中的值是: 2、3、4、5、8

调用该函数后, c中存放的数据是: 49、4、1、16、36

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 21套

试题说明

***********************************

第一题(30分)

给定程序的功能是: 读入一个整数k(2≤k≤10000),打印它的所有质因子(即

所有为素数的因子)。

例如, 若输入整数: 3410, 则应输出: 2、5、11、31。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中的函数Creatlink的功能是创建带头结点的单向链表, 并

为各结点数据域赋0到m-1的值。

请改正函数Creatlink中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

程序定义了N×N的二维数组, 并在主函数中自动赋值。请编写函数fun,函数

的功能是:求出数组周边元素之和并作为函数值返回给主函数中的s。例如:a数组

中的值为

|0 1 2 7 9|

|1 9 7 4 5|

a = |2 3 8 3 1|

|4 5 6 8 2|

|5 9 1 4 1|

则返回主程序后s的值应为54。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 22套

试题说明

***********************************

第一题(30分)

@#@#@#@#@#

例如, 若 n=10, 则应输出: 0.618056。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun 的功能是:从字符串s尾部开始,按逆序把在其中

出现的每相邻的两个字符, 紧随其后重复出现一次,放在一个新串t中, 若字符串

s中头部有剩余的单个字符也重复, 放在t的最后。

例如: 当s中的字符串为: "12345"时, 则t中的字符串应为: "5454323211"。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

编写函数fun, 它的功能是: 计算正整数n所有因子(1和n除外)之和作为函数

值返回。

例如: n=256时, 函数值为 254。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 23套

试题说明

***********************************

第一题(30分)

给定程序的功能是分别统计字符串中大写字母和小写字母的个数。

例如, 给字符串 ss 输入: AAaaBBb123CCccccd,

则输出结果应为: upper = 6, lower = 8

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 输入两个双精度数,函数返回他们

的平方根的和值。

例如, 输入: 22.993612 和 84.57629812, 输出为: y = 13.991703。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

编写函数int fun(int lim, int aa[MAX]), 该函数的功能是求出小于lim的

所有素数放在aa数组中, 该函数返回所求出素数的个数。

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 24套

试题说明

***********************************

第一题(30分)

给定程序的功能是判断字符ch是否与串str中的某个字符相同;若相同, 什么

也不做, 若不同, 则插在串的最后。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 将在字符串s中出现、而未在字符串t

中出现的字符构成一个新的字符串放在u中,u中字符按原字符串中字符顺序排列,

但去掉重复字符。

例如, 当s="112345", t="2467"时, u中字符的串为: "135"。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数 unsigned fun(unsigned w), w是一个大于10的无符号整数,

若 w 是 n(n≥2)位的整数, 函数求出w的后n-1位的数作为函数值返回。

例如: w 值为 5923, 则函数返回 923; w 值为 923 则函数返回 23。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 25套

试题说明

***********************************

第一题(30分)

给定程序的功能是根据形参m(2≤m≤9), 在二维数组中存放一张 m 行 m 列

的表格, 由main()函数输出。

例如, 若输入 2 | 若输入 4

则输出: | 则输出:

1 2 | 1 2 3 4

2 4 | 2 4 6 8

| 3 6 9 12

| 4 8 12 16

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C的功能是: 读入一个整数m(5≤m≤20), 函数getarr调用函

数rnd获得m个随机整数,函数sortpb将这m个随机整数从小到大排序。

例如, 若输入整数7, 则应输出: 3 10 17 28 32 36 47。

请改正程序中的语法错误, 使程序能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

@#@#@#@#@#

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容, 仅在函数fun

的花括号中填入你编写的若干语句。

第 26套

试题说明

***********************************

第一题(30分)

给定程序的功能是对a数组中n个人员的工资进行分段统计,各段的人数存到b

数组中;工资为1000元以下的人数存到b[0]中,工资为1000元到1999元的人数存到

b[1], 工资为2000元到2999元的人数存到b[2], 工资为3000元到3999元的人数存

到b[3], 工资为4000元到4999元的人数存到b[4], 工资为5000元以上的人数存到

b[5]中。

例如, 当a数组中的数据为: 900、1800、2700、3800、5900、3300、2400、

7500、3800, 调用该函数后, b中存放的数据应是:1、1、2、3、0、2。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是:根据整型形参m, 计算如下公式的值。

1 1 1 1

y = 1 + ----- + ----- + ----- + …… + -----

2*2 3*3 4*4 m*m

例如, 若 m = 5, 则应输出: 1.463611。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数float fun(float h), 函数的功能是保留h小数点后两位数,

并对第三位进行四舍五入。

例如:h 值为 8.32433, 则函数返回 8.320000;

h 值为 8.32533, 则函数返回 8.330000。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 27套

试题说明

***********************************

第一题(30分)

给定程序的功能是将n个人员的考试成绩进行分段统计, 考试成绩放在a数组

中,各分数段的人数存到b数组中:成绩为60到69的人数存到b[0]中,成绩为70到79

的人数存到b[1], 成绩为80到89的人数存到b[2],成绩为90到99的人数存到b[3],

成绩为100的人数存到b[4], 成绩为60分以下的人数存到b[5]中。

例如, 当a数组中的数据是: 93、85、77、68、59、43、94、75、98。

调用该函数后,b数组中存放的数据应是: 1、2、1、3、0、2。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是:实现交换两个变量值的操作。例如:若

变量a中的值原为8, b中的值为3; 程序运行后a中的值为3, b中的值为8。

请改正程序中的错误, 使它能计算出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

编写函数fun, 它的功能是: 求Fibonacci数列中大于n的最小的一个数,结果

由函数返回。其中Fibonacci数列F(n)的定义为:

F(0)=0, F(1)=1

F(n)=F(n-1)+F(n-2)

例如: 当n = 1000时, 函数值为: 1597。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 28套

试题说明

***********************************

第一题(30分)

给定程序的功能是求出1到1000之内能被7或11整除但不能同时被7和11整除的

所有整数放在数组a中, 通过n返回这些数的个数。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C是建立一个带头结点的单向链表,并用随机函数为各结点赋

值。函数fun的功能是将单向链表结点 (不包括头结点)数据域为偶数的值累加起

来, 并且作为函数值返回。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

函数fun的功能是:把a数组中的n个数、和b数组中逆序的n个数一一对应相减

的结果, 与a数组中的n个数、和b数组中逆序的n个数一一对应相加的结果相乘,

结果存在c数组中。

例如: 当a数组中的值是: 1、3、5、7、8, b数组中的值是: 2、3、4、5、8

调用该函数后, c中存放的数据是: -63、-16、9、40、60

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 29套

试题说明

***********************************

第一题(30分)

给定程序中已建立一个带有头结点的单向链表,在main函数中将多次调用fun

函数,每调用一次fun函数,输出链表尾部结点中的数据,并释放该结点,使链表

缩短。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是:把在字符串s中出现的每相邻的两个

字符, 紧随其后重复出现一次, 放在一个新串t中, 字符串s中尾部剩余的单个字

符也重复, 放在t的最后。

例如: 当s中的字符串为: "12345"时,则t中的字符串应为: "1212343455"。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

已知学生的记录由学号和学习成绩构成, N名学生的数据已存入a结构体数组

中。请编写函数 fun, 函数的功能是: 找出成绩最高的学生记录, 通过形参返回

主函数。 已给出函数的首部, 请完成该函数。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 30套

试题说明

***********************************

第一题(30分)

给定程序的功能是计算score中m个人的平均成绩aver, 将低于aver的成绩放

在below中, 通过函数名返回人数。

例如, 当score={10, 20, 30, 40, 50, 60, 70, 80, 90}, m=9 时, 函数返

回的人数应该是 4, below={10, 20, 30, 40}。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 把在字符串s中出现的每个字符,紧

随其后重复出现一次, 形成一个新串放在t中, 且在t中把原相邻字符的位置进行

了交换。

例如: 当s中的字符串为: "12345"时,则t中的字符串应为: "2211443355"。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

函数fun的功能是: 对指定字符在字符串a中出现的次数进行统计, 统计的数

据存到b数组中。其中:字符'A'出现的次数存放到b[0]中, 字符'B'出现的次数存

放到b[1]中, 字符'C'出现的次数存放到b[2]中, 字符'D'出现的次数存放到b[3]

中, 字符'E'出现的次数存放到b[4]中, 其它字符出现的次数存到b[5]中。

例如, 当 a中的字符串为: "VISUA-BASIC",调用该函数后, b中存放数据应

是: 2、1、1、0、0、7。

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 31套

试题说明

***********************************

第一题(30分)

给定程序的功能是求出能整除 x 且不是偶数的各整数, 并放在数组pp中,这

些除数的个数由 n 返回。

例如, 若 x 的值为 30, 则有 4 个数符合要求, 它们是 1, 3, 5, 15。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中fun函数的功能是:求s = aa…aa - … - aaa - aa - a

(此处 a 和 n 的值在 1 至 9 之间, aa… aa 表示 n 个 a )

例如 a = 3, n = 6, 则以上表达式为:

s = 333333 - 33333 - 3333 - 333 - 33 - 3

其和值是: 296298

a 和 n 是 fun 函数的形参, 表达式的值作为函数值传回main函数。

请改正程序中的错误, 使它能计算出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数 fun(char *s), 函数的功能是把 s 串中的内容逆置。

例如:s 串中原有的字符串为: abcdefg, 则调用该函数后, s 串中的内容

为: gfedcba。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填

入你编写的若干语句。

第 32套

试题说明

***********************************

第一题(30分)

已知学生的记录由学号和学习成绩构成, N名学生的数据已存入a结构体数组

中。给定程序的功能是找出成绩最低的学生记录, 通过形参返回主函数。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 从m(1≤m≤10)个字符串连接起来,

组成一个新串, 放入pt中。

例如, 把3个串: "abc","CD","EF"串连起来, 结果是"abcCDEF"。

请改正程序中的语法错误, 使它能统计出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

编写函数fun, 它的功能是: 根据公式计算s,计算结果作为函数值返回; n通

过形参传入。

1 1 1

s = 1 + ── + ─── + … + ─────

1+2 1+2+3 1+2+3+…+n

例如: 若n的值为15时, 函数的值为: 1.875000

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 33套

试题说明

***********************************

第一题(30分)

给定程序中已建立一个带有头结点的单向链表,链表中的各结点按数据域递

增有序链接。函数fun的功能是:删除链表中数据域值相同的结点,使之只保留一

个。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 给定n个实数,统计并输出其中在平

均值以上(包括等于平均值)的实数个数。

例如, n=8时, 输入: 193.199,195.673,195.757,196.051,196.092,196.596,

196.579,196.763

所得平均值为195.838745, 在平均值以上的实数个数应为: 5

请改正程序中的错误, 使程序能输出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写函数, 对长度为7个字符的字符串, 除头、尾字符外的5个字符按降序

排列。例如, 原来的字符串为 BottomO, 排序后输出为 BttoomO 。

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 34套

试题说明

***********************************

第一题(30分)

给定程序的功能是实现矩阵(3行3列)的转置(即行列互换)

例如, 输入下面的矩阵:

100 200 300

400 500 600

700 800 900

程序输出:

100 400 700

200 500 800

300 600 900

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 求出a数组中的最大数和次最大数,

并把最大数和 a[0]中的数对调, 把次最大数和a[1]中的数对调。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

编写一个函数,用该函数可以统计一个长度为2的子字符串在另一个字符串中

出现的次数。例如,假定输入的字符串为"asd asasdfg asd as zx67 asd mklo",

子字符串为"as", 则应输出6。

注意:部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 35套

试题说明

***********************************

第一题(30分)

函数fun的功能是:统计长整数n的各个位上出现数字1、2、3的次数,并通过

外部(全局)变量c1,c2,c3返回主函数。例如:当n=123114350时,结果应该为:

c1=3 c2=1 c3=2。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中 fun 函数的功能是: 求出以下分数序列的前n项之和。

2 3 5 8 13 21

┄┄ , ┄┄ , ┄┄ , ┄┄ , ┄┄ , ┄┄ , ……

1 2 3 5 8 13

和值通过函数值返回main()函数。

例如, 若 n = 5, 则应输出: 8.391667。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数void fun(int a[3][3],int b[3][3])的功能是:实现B=A+A',

即把矩阵A加上A的转置,存放在B中返回 main函数。

例如, 输入下面的矩阵: 其转:

1 2 3
4 5 6
7 8 9

置矩阵为

1 4 7
2 5 8
3 6 9

程序输出:

2 6 10
6 10 14
10 14 18

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 36套

试题说明

***********************************

第一题(30分)

函数fun的功能是进行字母转换。若形参ch中是小写英文字母,则转换成对应

的大写英文字母;若ch中是大写英文字母,则转换成对应的小写英文字母;若是

其它字符则保持不变;并将转换后的结果作为函数值返回。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 根据整型形参m,计算如下公式的值。

1 1 1 1

y = ------- + --------- + --------- + …… + -------

100*100 200*200 300*300 m*m

例如, 若m = 2000, 则应输出: 0.000160。

请改正程序中的语法错误, 使它能计算出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

程序定义了N×N的二维数组, 并在主函数中自动赋值。请编写函数

fun( int a[][N], int n ), 函数的功能是: 使数组上半三角元素中的值乘以m。

例如:若m的值为2, a 数组中的值为

| 1 9 7 | | 2 18 14|

a = | 2 3 8 | 则返回主程序后a数组中的值应为 | 2 6 16|

| 4 5 6 | | 4 5 12|

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 37套

试题说明

***********************************

第一题(30分)

给定程序的功能是对指定字符在字符串a中出现的次数进行统计,统计的数据

存到b数组中。其中: 字符'Z'出现的次数存放到b[0]中,字符'Y'出现的次数存放

到b[1]中, 字符'X'出现的次数存放到b[2]中,字符'W'出现的次数存放到b[3]中,

字符'V'出现的次数存放到b[4]中, 其它字符出现的次数存到b[5]中。

例如, 当a中的字符串为: "AYYZXW1Y+ZWVP", 调用该函数后,b中存放数据应

是: 2、3、1、2、1、4。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是:将仅在字符串s中出现、而不在字符串

t中出现的字符, 和仅在字符串t中出现、而不在字符串s中出现的字符, 构成一

个新的字符串放在u中, u中字符按原字符串中字符顺序排列, 但去掉重复字符。

例如, 当s="112345", t="24677"时, u中的字符串为: "13567"。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数 int fun(int *s, int t, int *k),用来求出数组的最大元

素在数组中的下标, 用k返回。

例如, 输入如下整数: 876 675 896 101 301 401 980 431 451 777

则输出结果为: 6, 980

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 38套

试题说明

***********************************

第一题(30分)

函数fun的功能是:将形参a所指数组中的前半部分元素中的值和后半部分元

素中的值对换。形参n中存放数组中数据的个数,若n为奇数,则中间的元素不动。

例如:若a所指数组中的数据依次为:1、2、3、4、5、6、7、8、9,则调换后

为:6、7、8、9、5、1、2、3、4。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是:将在字符串s中下标为奇数位置上的

字符, 紧随其后重复出现一次, 放在一个新串t中, t中字符按原字符串中字符的

顺序排列。(注意0为偶数)

例如: 当s中的字符串为: "123456"时, 则t中的字符串应为: "224466"。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数fun, 其首部为: fun(int m, int *k, int xx[]),该函数的

功能是:将所有大于1小于整数m的非素数存入数组xx,非素数的个数由k传回。

例如, 若输入 17, 则应输出9和4 6 8 9 10 12 14 15 16。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 39套

试题说明

***********************************

第一题(30分)

给定程序的功能是把s串中所有的字符前移一个位置,串中的第一个字符移到

最后。

例如: s 串中原有的字符串为: Mn.123xyZ, 则调用该函数后,s 串中的内容

为: n.123xyZM。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 从键盘上输入的每个单词的第一个字

母变为大写字母, 输入时各单词必须用空格隔开, 用'.'结束输入。

请改正程序中的错误, 使程序能输出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

函数fun的功能是: 把a数组中的n个数和b数组中逆序的n个数一一相减,结果

存在c数组中。

例如: 当a数组中的值是: 1、3、5、7、8, b数组中的值是: 2、3、4、5、8

调用该函数后, c中存放的数据是: -7、-2、1、4、6

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 40套

试题说明

***********************************

第一题(30分)

给定程序的功能是计算并输出high以内最大的10个素数之和。high由主函数

传给fun函数。若high的值为100, 则函数的值为732。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 把在字符串s中出现的每个字符,紧随

其后重复出现一次,形成一个新串放在t中,t中字符按原字符串中字符顺序排列。

例如: 当s中的字符串为: "12345"时, 则t中的字符串应为: "1122334455"。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

函数fun的功能是: 统计各年龄段的人数并存到b数组中,n个人员的年龄放在

a数组中。年龄为1到9的人数存到b[0]中, 年龄为10到19的人数存到b[1],年龄为

20到29的人数存到b[2], 年龄为30到39的人数存到b[3], 年龄为40到49的人数存

到b[4], 年龄为50岁以上的人数存到b[5]中。

例如, 当a数组中的数据为: 9、18、27、38、59、33、14、75、38。

调用该函数后,b数组中存放的数据应是: 1、2、1、3、0、2。

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 41套

试题说明

***********************************

第一题(30分)

给定程序的功能是删除 w 数组中下标为 k 的元素中的值。程序中, 调用了

getindex、arrout 和 arrdel三个函数, getindex用以输入所删元素的下标, 函

数中对输入的下标进行检查, 若越界, 则要求重新输入, 直到正确为止。

arrout用以输出数组中的数据, arrdel进行所要求的删除操作。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中fun函数的功能是:读入一个整数m, 计算如下公式的值。

1 1 1

t = 1 - ----- - ----- - …… - -----

2 3 m

例如, 若输入5, 则应输出 -0.283333。

请改正程序中的错误或在横线处上填上适当的内容并把横线删除, 使它能

计算出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

函数fun的功能是: 统计在字符串a中, 以下指定字符出现的次数,并存到b数

组中, 其中: 字符'+'出现的次数存到b[0]中, 字符'-'出现的次数存到b[1],字

符'*'出现的次数存到b[2], 字符'/'出现的次数存到b[3],字符'&'出现的次数存

到b[4], 其它字符出现的次数存到b[5]中。

例如, 当a字符串中的字符串为: "-+*1/-a/&b"时, 调用该函数后, b中存放

的数据应为: 1、2、1、2、1、3。

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 42套

试题说明

***********************************

第一题(30分)

给定程序的功能是从字符串s尾部开始,按逆序把在其中出现的每相邻的两个

字符, 紧随其后重复出现一次, 放在一个新串t中, 若字符串s中头部有剩余的单

个字符也重复, 放在t的最后。

例如: 当s中的字符串为: "12345"时, 则t中的字符串应为: "5454323211"。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是:从m个学生的成绩中统计出低于平均

分的学生人数, 此人数由函数值返回, aver 返回平均分。

例如, 若输入 8 名学生的成绩: 80.5 60 72 90.5 98 51.5 88 64

则低于平均分的学生人数为: 4 (平均分为: 75.5625)。

请改正程序中的错误, 使它能统计出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写函数int fun(int a[M][N]), a 是一个M行N列的二维数组, 函数的功

能是求出二维数组周边元素之和, 作为函数值返回。二维数组中的值由主函数传

入。

例如: 二维数组中的值为

1 3 5 7 9

2 9 9 9 4

6 9 9 9 8

1 3 5 7 0

则函数值为 61。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 43套

试题说明

***********************************

第一题(30分)

给定程序BLANK1.C是建立一个带头结点的单向链表, 并用随机函数为各结点

赋值。函数fun的功能是将单向链表结点 (不包括头结点)数据域为偶数的值累加

起来, 并且作为函数值返回。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中fun函数的功能是: 读入一个整数m,计算如下公式的值。

1 1 1 1

t = 1 + ----- +----- + ----- + ……+ -----

2 3 4 m

例如, 若输入 5, 则应输出 2.283333。

请改正程序中的错误或在横线处上填上适当的内容并把横线删除, 使它能计

算出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

程序的功能是: 删除一个字符串中指定的字符。

设有如下的字符串: turbo c and borland c++

从键盘上输入任一个字符, 然后从上述字符串中删除该字符(有几个删除几

个)。

例如输入字符n, 则删除后变为: turbo c ad borlad c++

如果输入了字符串中不存在的字符, 则字符串照原样输出。同一字母的大、

小按不同字符处理。删除字符的操作通过一个函数来实现,请编写该函数的代码。

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 44套

试题说明

***********************************

第一题(30分)

给定程序的功能是把在字符串s中出现的每个字符, 紧随其后重复出现一次,

形成一个新串放在t中, 且在t中把原相邻字符的位置进行了交换。

例如: 当s中的字符串为: "12345"时, 则t中的字符串应为: "2211443355"。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C的功能是:读入一个英文文本行,将其中每个单词的第一个字

母改成大写,然后输出此文本行(这里的“单词”是指由空格隔开的字符串)。

例如, 若输入: I am a student to take the examination.,

则应输出: I Am A Student To Take The Examination.。

请改正程序中的语法错误,使程序能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数 void fun (int bb[], int *n, int y), 其中*n 表示bb数

组中元素的个数。

函数的功能是: 删除 bb 中所有值为 y 的元素。bb数组元素中的值和y的值

由主函数通过键盘读入。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 45套

试题说明

***********************************

第一题(30分)

给定程序的功能是根据公式求P的值,结果由函数值带回。m与n为两个正整数

且要求m>n。

m!

P = ────

n!(m-n)!

例如: m=11, n=4时, 运行结果为330.000000。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 计算s所指字符串中含有t所指字符串

的数目, 并作为函数值返回。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

函数fun的功能是: 把a数组中的n个数和b数组中逆序的n个数一一对应相乘,

结果存在c数组中。

例如: 当a数组中的值是: 1、3、5、7、8, b数组中的值是: 2、3、4、5、8

调用该函数后, c中存放的数据是: 8、15、20、21、16

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 46套

试题说明

***********************************

第一题(30分)

给定程序的功能是把a数组中的n个数,和b数组中逆序的n个数一一对应相乘、

求平方, 结果存在c数组中。

例如: 当a数组中的值是: 1、3、5、7、8, b数组中的值是: 2、3、4、5、8

调用该函数后, c中存放的数据是: 64、225、400、441、256

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

在主函数中从键盘输入若干个数放入数组中,输入0结束输入并放在最后一个

元素中。给定程序MODI1.C中函数fun的功能是: 计算数组元素中值为正数的平均

值(不包括0)。

例如: 数组中元素中的值依次为: 39,-47,21,2,-8,15,0,则程序的运行结果

为: 19.250000。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

函数fun的功能是: 对a数组中n种商品价格进行分段统计,商品各段价格的数

目存到b数组中;其中: 价格为100元以下的个数存到b[0]中,价格为100元到199元

的个数存到b[1], 价格为200元到299元的个数存到b[2], 价格为300元到399元的

个数存到b[3],价格为400元到499元的个数存到b[4], 价格为500元以上的个数存

到b[5]中。

例如,当a数组中的数据为: 90、180、270、380、590、530、140、750、380

时; 调用该函数后, b中存放的数据应是: 1、2、1、2、0、3。

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 47套

试题说明

***********************************

第一题(30分)

给定程序的功能是对指定字符在字符串a中出现的次数进行统计,统计的数据

存到b数组中。其中: 字符'z'出现的次数存放到b[0]中,字符'y'出现的次数存放

到b[1]中, 字符'x'出现的次数存放到b[2]中,字符'w'出现的次数存放到b[3]中,

字符'v'出现的次数存放到b[4]中, 其它字符出现的次数存到b[5]中。

例如, 当a中的字符串为: "yyzxxw1y+wvp", 调用该函数后, b中存放数据应

是: 1、3、2、2、1、3。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 找出一个大于给定整数m且紧随m的

素数, 并通过函数名返回。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

函数fun的功能是: 统计老年人各年龄段的人数并存到b数组中,n个人员的年

龄放在a数组中。年龄为60到69的人数存到b[0]中,年龄为70到79的人数存到b[1],

年龄为80到89的人数存到b[2], 年龄为90到99的人数存到b[3], 年龄为100岁(含

100)以上的人数存到b[4], 年龄为60岁以下的人数存到b[5]中。

例如, 当a数组中的数据为: 93、85、77、68、59、43、94、75、110。

调用该函数后,b数组中存放的数据应是: 1、2、1、2、1、2。

注意: 部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 48套

试题说明

***********************************

第一题(30分)

给定程序的功能是根据公式计算S, 计算结果通过形参指针sn传回; n通过形

参传入。

1 1 1 1 1

Sn= ─ - ─ + ─ - ─ + … ──

1 3 5 7 2n+1

例如:若n的值为15时, 输出的结果是: S=0.769788 N=15。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 比较两个字符串,将长的那个字符串

的首地址作为函数值返回。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

程序定义了N×N的二维数组, 并在主函数中自动赋值。请编写函数fun,函数

的功能是: 给数组周边元素置0值s。例如: a 数组中的值为

|0 11 12 7 9|

|1 9 7 4 5|

a = |20 13 18 3 1|

|14 5 6 8 2|

|15 9 17 4 1|

|0 0 0 0 0|

|0 4 7 9 0|

则返回主程序后a数组中的值应为 |0 3 18 13 0|

|0 8 6 5 0|

|0 0 0 0 0|

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 49套

试题说明

***********************************

第一题(30分)

给定程序的功能是把s串中所有的字母改写成该字母的下一个字母, 字母z改

写成字母a。大写字母仍为大写字母,小写字母仍为小写字母, 其它的字符不变。

例如: s串中原有的字符串为:Mn.123Zxy,则调用该函数后,s串中的内容为:

No.123Ayz。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 将未在字符串s中出现而在字符串t

中出现的字符形成一个新的字符串放在u中,u中字符按原字符串中字符顺序排列,

不去掉重复字符。

例如, 当s = "12345", t = "24677"时, u中的字符串为"677"。

请改正程序中的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写一个函数char *fun(char *ss), 其功能是:将字符串ss中所有下标为

奇数位置上的字母转换为大写(若该位置上不是字母, 则不转换)。

例如, 若输入"abc4EFg", 则应输出"aBc4EFg"。

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 50套

试题说明

***********************************

第一题(30分)

给定程序中,函数fun的功能是:有N×N矩阵,根据给定的m(m<=N)值,将

每行元素中的值均右移m个位置,左边置为0。例如,N=3,m=2,有下列矩阵

1 2 3

4 5 6

7 8 9

程序执行结果为

0 0 1

0 0 4

0 0 7

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数 fun 的功能是: 求广义菲玻那级数的第n项。

1, 1, 1, 3, 5, 9, 17, 31, …… 项值通过函数值返回main()函数。

例如, 若 n = 15, 则应输出: 2209。

请改正程序中的语法错误, 使它能计算出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

程序定义了N×N的二维数组, 并在主函数中自动赋值。请编写函数

fun( int a[][N]), 函数的功能是: 使数组下半三角元素中的值全部置成0。

例如:a 数组中的值为

    | 1 9 7 |

a = | 2 3 8 |

    | 4 5 6 |

则返回主程序后a数组中的值应为

| 0 9 7 |

| 0 0 8 |

| 0 0 0 |

注意: 部分源程序存在文件PROG1.C文件中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 51套

试题说明

***********************************

第一题(30分)

给定程序中, 函数fun的功能是用函数指针指向要调用的函数,并进行调用。

规定在__2__处使f指向函数f1,在__3__处使f指向函数f2。当调用正确时,程序

输出:

x1=5.000000, x2=3.000000, x1*x1+x1*x2=40.000000

请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C是建立一个带头结点的单向链表,并用随机函数为各结点赋

值。函数fun的功能是将单向链表结点 (不包括头结点)数据域为偶数的值累加起

来, 并且作为函数值返回。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写函数fun, 函数的功能是: 判断字符串是否为回文?若是, 函数返回1,

主函数中输出: YES, 否则返回0, 主函数中输出NO。回文是指顺读和倒读都一样

的字符串。

例如, 字符串LEVEL是回文, 而字符串123312就不是回文。

注意:部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 52套

试题说明

***********************************

第一题(30分)

给定程序中,函数fun的功能是将带头节点的单向链表结点数据域中的数据从

小到大排序。即若原链表结点数据域从头至尾的数据为:0、10、4、2、8、6,排

序后链表结点数据域从头至尾的数据为:0、2、4、6、8、10。

请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C是建立一个带头结点的单向链表, 并用随机函数为各结点数

据域赋值。函数fun的作用是求出单向链表结点(不包括头结点)数据域中的最大值,

并且作为函数值返回。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写函数fun, 函数的功能是: 将M行N列的二维数组中的数据,按行的顺序

依次放到一维数组中, 一维数组中数据的个数存放在形参n所指的存储单元中。

例如, 二维数组中的数据为:

33 33 33 33

44 44 44 44

55 55 55 55

则一维数组中的内容应是:

33 33 33 33 44 44 44 44 55 55 55 55。

注意:部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入

你编写的若干语句。

第 53套

试题说明

***********************************

第一题(30分)

给定程序中,函数fun的功能是将不带头结点的单向链表逆置。即若原链表中

从头至尾结点数据域依次为:2、4、6、8、10,逆置后,从头至尾结点数据域依次

为:10、8、6、4、2。

请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 将s所指字符串中位于奇数位置的字符

或ASCII码为偶数的字符放入t所指数组中(规定第一个字符放在第0位中)。

例如, 字符串中的数据为: AABBCCDDEEFF,

则输出应当是:ABBCDDEFF。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写函数fun, 函数的功能是: 将M行N列的二维数组中的数据, 按列的顺序

依次放到一维数组中。

例如, 二维数组中的数据为:

33 33 33 33

44 44 44 44

55 55 55 55

则一维数组中的内容应是:

33 44 55 33 44 55 33 44 55 33 44 55。

注意:部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入

你编写的若干语句。

第 54套

试题说明

***********************************

第一题(30分)

给定程序中,函数fun的功能是将带头结点的单向链表逆置。即若原链表中从

头至尾结点数据域依次为:2、4、6、8、10,逆置后,从头至尾结点数据域依次为:

10、8、6、4、2。

请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 计算s所指字符串中含有t所指字符串

的数目, 并作为函数值返回。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写函数fun, 函数的功能是: 将放在字符串数组中的M个字符串(每串的长

度不超过N), 按顺序合并组成一个新的字符串。

例如, 字符串数组中的M个字符串为

AAAA

BBBBBBB

CC

则合并后的字符串的内容应是: AAAABBBBBBBCC。

注意:部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入

你编写的若干语句。

第 55套

试题说明

***********************************

第一题(30分)

给定程序中,函数fun的功能是将不带头节点的单向链表结点数据域中的数据

从小到大排序。即若原链表结点数据域从头至尾的数据为:10、4、2、8、6,排

序后链表结点数据域从头至尾的数据为:2、4、6、8、10。

请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 将s所指字符串中的字母转换为按字母

序列的后续字母(但Z转换为A, z转换为a),其它字符不变。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写函数fun, 函数的功能是: 移动一维数组中的内容; 若数组中有n个整

数, 要求把下标从0到p(含p,p小于等于n-1)的数组元素平移到数组的最后。

例如, 一维数组中的原始内容为: 1,2,3,4,5,6,7,8,9,10; p的值为3。移动

后, 一维数组中的内容应为: 5,6,7,8,9,10,1,2,3,4。

注意:部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 56套

试题说明

***********************************

第一题(30分)

给定程序中,函数fun的功能是根据形参i的值返回某个函数的值。当调用正

确时, 程序输出:

x1=5.000000, x2=3.000000, x1*x1+x1*x2=40.000000

请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 比较两个字符串,将长的那个字符串

的首地址作为函数值返回。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写函数fun,函数的功能是: 移动字符串中的内容,移动的规则如下: 把第

1到第m个字符, 平移到字符串的最后, 把第m+1到最后的字符移到字符串的前部。

例如, 字符串中原有的内容为: ABCDEFGHIJK, m的值为3, 则移动后, 字符串

中的内容应该是: DEFGHIJKABC。

注意:部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入

你编写的若干语句。

第 57套

试题说明

***********************************

第一题(30分)

给定程序中,函数fun的功能是将形参给定的字符串、整数、浮点数写到文本

文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。

请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 依次取出字符串中所有数字字符, 形

成新的字符串, 并取代原字符串。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写函数fun, 函数的功能是: 将M行N列的二维数组中的字符数据, 按列的

顺序依次放到一个字符串中。

例如, 二维数组中的数据为:

W W W W

S S S S

H H H H

则字符串中的内容应是: WSHWSHWSH。

注意:部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入

你编写的若干语句。

第 58套

试题说明

***********************************

第一题(30分)

给定程序中,函数fun的功能是将参数给定的字符串、整数、浮点数写到文本

文件中,再用字符串方式从此文本文件中逐个读入,并调用库函数atoi和atof将

字符串转换成相应的整数、浮点数,然后将其显示在屏幕上。

请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 对N名学生的学习成绩,按从高到低的

顺序找出前m(m≤10)名学生来, 并将这些学生数据存放在一个动态分配的连续存

储区中, 此存储区的首地址作为函数值返回。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写函数fun, 函数的功能是: 删去一维数组中所有相同的数, 使之只剩一

个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。

例如, 一维数组中的数据是: 2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 10 10 10。

删除后,数组中的内容应该是: 2 3 4 5 6 7 8 9 10。

注意:部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入

你编写的若干语句。

第 59套

试题说明

***********************************

第一题(30分)

程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。所

有学生数据均以二进制方式输出到文件中。函数fun的功能是从形参filename所指

的文件中读入学生数据,并按照学号从小到大排序后,再用二进制方式把排序后的

学生数据输出到filename所指的文件中,覆盖原来的文件内容。

请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中函数fun的功能是: 在字符串的最前端加入n个*号, 形成

新串, 并且覆盖原串。

注意: 字符串的长度最长允许为79。

请改正函数fun中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写函数fun,函数的功能是:统计各年龄段的人数。N个年龄通过调用随机

函数获得,并放在主函数的age数组中;要求函数把0至9岁年龄段的人数放在d[0]

中,把10至19岁年龄段的人数放在d[1]中,把20至29岁年龄段的人数放在d[2]中,

其余依此类推, 把100岁 (含100)以上年龄的人数都放在d[10]中。结果在主函数

中输出。

注意:部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入

你编写的若干语句。

第 60套

试题说明

***********************************

第一题(30分)

程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。所

有学生数据均以二进制方式输出到文件中。函数fun的功能是重写形参filename所

指文件中最后一个学生的数据,即用新的学生数据覆盖该学生原来的数据,其它学

生的数据不变。

请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结

果。

注意:源程序存放在考生文件夹下的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!

***********************************

第二题(30分)

给定程序MODI1.C中的函数Creatlink的功能是创建带头结点的单向链表, 并

为各结点数据域赋0到m-1的值。

请改正函数Creatlink中指定部位的错误, 使它能得出正确的结果。

注意: 不要改动main函数, 不得增行或删行, 也不得更改程序的结构!

***********************************

第三题(40分)

请编写函数fun, 函数的功能是:统计一行字符串中单词的个数,作为函数值返

回。一行字符串在主函数中输入, 规定所有单词由小写字母组成,单词之间由若干

个空格隔开, 一行的开始没有空格。

注意:部分源程序在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入

你编写的若干语句。

参 考 答 案

 

第 01 套 填空 改错 编程第 02 套 填空 改错 编程第 03 套 填空 改错 编程第 04 套 填空 改错 编程第 05 套 填空 改错 编程

第 06 套 填空 改错 编程第 07 套 填空 改错 编程第 08 套 填空 改错 编程第 09 套 填空 改错 编程第 010 套 填空 改错 编程

第 11 套 填空 改错 编程第 12 套 填空 改错 编程第 13 套 填空 改错 编程第 14 套 填空 改错 编程第 15 套 填空 改错 编程

第 16 套 填空 改错 编程第 17 套 填空 改错 编程第 18 套 填空 改错 编程第 19 套 填空 改错 编程第 20 套 填空 改错 编程

第 21 套 填空 改错 编程第 22 套 填空 改错 编程第 23 套 填空 改错 编程第 24 套 填空 改错 编程第 25 套 填空 改错 编程

第 26 套 填空 改错 编程第 27 套 填空 改错 编程第 28 套 填空 改错 编程第 29 套 填空 改错 编程第 30 套 填空 改错 编程

第 31 套 填空 改错 编程第 32 套 填空 改错 编程第 33 套 填空 改错 编程第 34 套 填空 改错 编程第 35 套 填空 改错 编程

第 36 套 填空 改错 编程第 37 套 填空 改错 编程第 38 套 填空 改错 编程第 39 套 填空 改错 编程第 40 套 填空 改错 编程

第 41 套 填空 改错 编程第 42 套 填空 改错 编程第 43 套 填空 改错 编程第 44 套 填空 改错 编程第 45 套 填空 改错 编程

第 46 套 填空 改错 编程第 47 套 填空 改错 编程第 48 套 填空 改错 编程第 49 套 填空 改错 编程第 50 套 填空 改错 编程

第 51 套 填空 改错 编程第 52 套 填空 改错 编程第 53 套 填空 改错 编程第 54 套 填空 改错 编程第 55 套 填空 改错 编程

第 56 套 填空 改错 编程第 57 套 填空 改错 编程第 58 套 填空 改错 编程第 59 套 填空 改错 编程第 60 套 填空 改错 编程