计算机二级C语言上机题库及答案(100套) 联系客服

发布时间 : 星期六 文章计算机二级C语言上机题库及答案(100套)更新完毕开始阅读

第 18 套

填空题

Str 为一个字符序列.请补充 FUN 函数的功能是:查找 STR 中值 为 X 的元素,返回找到值为 X 的元素个数,并把这些值为 X 的元素 下标依次保存在数组 BB 中.

例如,在”abcdefahij”中查找‘A’,结果为:2 个‘A’,下 标依次为 0、6。

注意:部分源程序给出如下

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

横线上填入所编写的若干表达式或语句。 试题程序:#include

#include #define N 20 int bb[N];

int fun(char *str, char ch) {

int i = 0, n = 0; char t = ch; char *p = str; while (*p) {

if ( p++;

1 ) ; 2

i++; } return } main() {

char str[N]; char ch; int i, n;

printf(\ gets(str);

printf(\ puts(str);

printf(\

3 ;

scanf(\ n = fun(str, ch);

printf(\

printf(\ for (i=0; i

}

第 1 处填空:*p==t 或 t==*p 第 2 处填空:bb[n++]=i 第 3 处填空:n

改错题

下列给定程序中,函数 FUN 的功能是:实现两个整数的交换。

例如给 A 和 B 分别输入 60 和 65,输出为:A=65 B=60。

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

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

试题程序:#include

#include /********found********/ void fun(int a, int b) {

int t;

/********found********/ t = b; b = a; a = t; }

main() {

int a, b; printf(\ scanf(\&a, &b); fun(&a, &b);

printf(\ }

第 1 处:void fun(int a,int b)应改为 void fun(int *a,int *b) 第 2 处:t=b;b=a;a=t;应改为 t=*b;*b=*a;*a=t;

编程题

例如,输入如下的矩阵:

100 200 300 400 500 600 700 800 900

则程序输出:

100 400 700 200 500 800 300 600 900

注意:部分源程序给出如下。

请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun 的花括号中填入所编写的若干语句。 试题程序:#include

#include void fun(int array[3][3]) { } main() { int i,j;

int array[3][3]={{100,200,300}, {400,500,600}, {700,800,900}}; FILE *out; for (i=0;i<3;i++)