(完整word版)大学C语言考试题库(答案) 联系客服

发布时间 : 星期一 文章(完整word版)大学C语言考试题库(答案)更新完毕开始阅读e79330e2acf8941ea76e58fafab069dc502247e1

..

程序设计

==================================================

题号:1124

/* 请编写一个函数fun,它的功能是:找出一维整型数组元素中最大的值和它所在的下标,

最大的值和它所在的下标通过形参传回。数组元素中的值已在主函数中赋予。 主函数中x是数组名, n是x中的数据个数,max存放最大值,index存放最大值所在元素的下标。

注意:部分源程序存在文件prog.c中。

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

#include #include #include

void fun(int a[], int n , int *max, int *d ) {

/********** Begin **********/

/********** End ***********/ }

void NONO ( )

{/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */ FILE *fp, *wf ;

int i, x[20], max , index, n = 10, j ;

fp = fopen(\ if(fp == NULL) {

printf(\数据文件bc06.in不存在!\ return ; }

..

wf = fopen(\ for(i = 0 ; i < 10 ; i++) {

for(j = 0 ; j < n ; j++) fscanf(fp, \ fun( x, n , &max, &index);

fprintf(wf, \ }

fclose(fp) ; fclose(wf) ; }

main()

{ int i, x[20], max , index, n = 10; srand(time(0));

for (i=0;i < n;i++) {x[i] = rand()P; printf(\ printf(\

fun( x, n , &max, &index);

printf(\ Index =M\\n\ NONO(); }

示例代码:

int i,base,subscript;

base=a[0]; /*假定第一个元素的值最大*/

subscript=0; /*subscript用于存放数组下标*/ for(i=1;i

if(a[i]>base) { /*将数组中的其他元素与变量base作比较,如果大于它则交换两者的值*/

subscript=i; base=a[i]; } }

*max=base; /*将最大值元素的值赋给*max*/ *d=subscript; /*将最大值元素的下标赋给*d*/

..

题号:5537

有定义:char*p1,*p2;则下列表达式中正确合理的是 A、p1/=5 B、p1+=5 C、p1=&p2 D、p1*=p2 答案: C

题号:5257

若有定义:int *p[3];,则以下叙述中正确的是()。

A、定义了一个名为*p的整型数组,该数组含有三个int类型元素

B、定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素 C、定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针 D、定义了一个基类型为int的指针变量p,该变量具有三个指针 答案: C

题号:6968

C语言中,定义结构体的保留字是()。 A、struct B、union C、enum D、typedef 答案: A

题号:1468

设 char *s=\则指针变量s指向的字符串所占的字节数 是()。 A、7 B、6 C、9 D、5 答案: B

题号:5300

以下程序的输出结果是 main()

{ int a[] = {1, 2, 3, 4}, i, x = 0;

..

for(i = 0; i < 4; i++)

{ sub(a, &x); printf(“%d ”, x); } pritnf(“\\n”);

}

sub(int *s, int *y) { static int t = 3;

*y = s[t]; t--;

}

A、4 4 4 4 B、0 0 0 0 C、1 2 3 4 D、4 3 2 1 答案: D

题号:1700

以下叙述正确的是:

A、用do-while构成循环时,只有在while后的表达式为非零时结束循环 B、do-while语句构成的循环不能用其它语句构成的循环来代替。 C、用do-while构成循环时,只有在while后的表达式为零时结束循环 D、do-while语句构成的循环只能用break语句退出。 答案: C

题号:2823

对两个数组a和b进行如下初始化:

char a[] = “ABCDEF”;

char b[] = {‘A’,‘B’,‘C’,‘D’,‘E’,‘F’}; 则以下叙述正确的是

A、a与b中都存放字符串 B、a数组比b数组长度长 C、a与b长度相同 D、a与b完全相同 答案: B

题号:4522

以下数值中,不正确的八进制数或十六进制数是()。 A、-16 B、0x16