当前位置:首页 >> 其它课程 >> C语言数组与函数考试试题

C语言数组与函数考试试题


2014 年上期职二对口 C 语言程序设计第一次月考试题 (适用班级 1219、1220)
班级: 姓名: 总分: 一、选择题(15*2=30 分) 1、在定义“int a[5][6];”后,第 11 个元素是 。 A、a[2][5] B、a[2][4] C、a[1][4] D、a[1][5] 2、假定 int 类型变量占用两个字节,其定义:int x[10]={0,2

,4};,则数组 x 在内存中所 占字节数是 。 A、3 B、6 C、10 D、20 3、当接受用输入的含空格的字符串地,应使用的函数是 。 A、scanf() B、gets() C、getchar() D、getc() 4、设有数组定义:char array[]=”China”;。则数组 array 所占的空间为 。 A、4 个字节 B、5 个字节 C、6 个字节 D、7 个字节 5、设有变量定义:int a [ ] = {1,2,3,4}; 执行语句 a[3] = - - a[0]? a[1] + + : a[2] + +;执行后,数组的元素 a[0], a[1], a[2], a[3] 的值依次为 A、 1,2,3,4 B、 0,3,3,4 C、 0,2,3,4 D、0,2,4,3 6、以下程序的输出结果是 void main( ) {int i, x[3][3] = { 1,2,3,4,5,6,7,8,9} for(i= 0;i < 3; i + +) printf("3%d", x[i][2 - i]); } A、 1 5 9 B、 1 4 7 C、3 5 7 D、 3 6 9 7、不能把字符串:Hello!赋给数组 b 的语句是 A、 char b [10] = {‘H’ ‘e’ ‘l’ ‘l’ ‘o’ ‘!’}; B、char b [10] ; b = “Hello!”; C、 char b [10] ; strcpy(b, “Hello!”); D、char b [10] = “Hello!”; 8、在函数间传递数据的四种方式中,不能把被调函数的数据带回到主调函数的是 A、值传递 B、地址传递 C、返回值传递 D、全局外部变量 9、以下关于函数的叙述中不正确的是 A、C 程序是函数的集合,包括标准库函数和用户自定义函数 B、在 C 语言程序中,被调用的函数必须在 main 函数中定义 C、在 C 语言程序中,函数的定义不能嵌套 D、在 C 语言程序中,函数的调用可以嵌套 10、若用数组名作为函数调用的实参,则传递给形参的是 A、数组的首地址 B、 数组的第一个元素的值 C、数组中全部元素的值 D、数组元素的个数 11、C 语言中,凡未指定存储类别的局部变量的隐含存储类别是 A、 auto B、static C、extern D、 register 12、若有以下函数调用语句:fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句中实 参的个数是

A、3 B、4 C、5 D、6 13、若程序中定义函数 float myadd(float a, float b) { return a+b;}并将其放在调用之后,则在调用之 前应对该函数进行说明。以下说明中错误的是 A、float myadd( float a,b); B、float myadd(float b, float a); C、float myadd(float, float); D、float myadd(float a, float b); 14、以下函数值的类型是 fun (float x) { float y; y= 3*x-4; return y;} A、 int B、不确定 C、 void D、 float 15、 #include<stdio.h> f(in b[], int n) { int i, r;r=1; for(i=0; i<=n; i++) r=r*b[i]; return r; } main() { int x, a[]={ 2,3,4,5,6,7,8,9}; x=f(a, 3); printf("%d\n",x); } 上面程序的输出结果是( ) 。 A、 720 B、 120 C、24 D、 6 二、读程序写结果(8*5=40 分) 1、void main ( ) { char str[ ]=”SSWLIA”,c; int k; for (k=1;(c=str[k])!=’\0’;k++) {switch (c) { case ‘I’: ++k; break ; case ‘L’: continue; default : putchar(c) ; continue ; } putchar(‘*’); }} 程序运行后的输出结果是________ 2、void fun(int x,int y) { x=x+y;y=x-y;x=x-y; printf("%d,%d,",x,y); } main() { int x=2,y=3; fun(x,y); printf(“%d,%d\n”,x,y); } 程序运行后的输出结果是_____ 3、#include <stdio.h> int a[3][3]={1,2,3,4,5,6,7,8,9},b[10]; main() { f(b,a); printf("%d\n",b[0]); } f(int s[],int p[ ][3]) { s[0]=p[1][1]; } 程序运行后的输出结果是________ 4、 fun(int a, int b) { if(a>b) return a; else return b; }

main() { int x=3,y=8,z=6,r; r=fun(fun(x,y),2*z); printf("%d\n",r); } 程序运行后的输出结果是____ 5、#include <stdio.h> int i=5; main() {int i=3; { int i=10;i++;} f1();i+=1; printf("%d\n",i); } int f1() {i=i+1; return(i); } 程序运行后的输出结果是______ 6、int ff(int n) { static int f=1; f=f*n; return f; } main() { int i; for(i=1;i<=5;i++) printf("%5d",ff(i)); } 程序输出的最后一个值是______ 7、#define MAX 5 int a[MAX],k; main() { fun1();fun3(); fun2(); fun3();printf("\n"); } fun1() { for(k=0;k<MAX;k++) a[k]=k+k; } fun2() { int a[MAX],k; for(k=0;k<5;k++) a[k]=k; } fun3() {int k; for(k=0;k<MAX;k++) printf("%d",a[k]); } 程序运行后的输出结果是______ 8、#inclued<stdio.h> main() { int k=4,m=1,p; p=func(k,m); printf(“%d”,p); p=func(k,m);printf(“%d\n”,p); } func(int a,int b) { static int m=0,i=2; i+=m+1; m=i+a+b; return (m); } 程序运行后的输出结果是______ 三、程序填空(12*2.5=30) 1 、下面程序求一个二维矩阵的最大值。 # include <stdio.h> #define M 3 #define N 4 int findmax(int a[ ][N]) { int i, j, max = a[0][0]; for(i = 0; i< M; ① )

for(j = 0; j<N; j++) if(a[i][j]>max) max = a[i][j]; ② } void main( ) { int i, j, max, ③ ; for(i = 0; i<M; i++) for(j = 0; j < N; j++) scanf(“%d”, &a[i][j]); max = findmax(a); printf(“%d”, max); } 2、下面程序是输出两个字符串中对应相等的字符。 main () {char x [ ]= "programming", y[ ]= "Fortran"; int i=0; while( ① ) if (x[i]==y[i]) printf ("%c", ② ); else ③ } 3、以下为递归法求 n!的函数。 float Fac(int n) { float f ; if ( n < 0 ) printf ( “error! ” ); else if ( n = = 0 | | n = = 1) ① else ② return ( ③ ) } 4、编写 N 个任意不同的正整数存入数组 a, 然后求数组 a 中最大值与平均值的差,最后输出。 #define N 8 main( ) {int a [N] = {8,6,4,10,7,9,5,1}; int i,max,sum,c; max =a [0]; sum = ① c = 0; for(i=0;i < N;i + +) {if(a[i] > max) ② ③ } printf("%f\n", (max-1.0 * sum/c));

}


更多相关文档:

C语言数组试题

C语言数组试题_电脑基础知识_IT/计算机_专业资料。第 4 章 数组 4.1 内容概述...掌握有关字符串处理函数的使用方法;能利用一维数组、二维数组解决向量、矩阵等 ...

C语言函数习题及答案

C语言函数习题及答案_从业资格考试_资格考试/认证_教育专区。函数习题一、选择题...若函数调用时,用数组名作为函数的参数,以下叙述中正确的是【 】。 A)实参与其...

C语言必背的典型程序设计题目 - 数组、函数-------参考答案

C语言必背的典型程序设计题目 - 数组、函数---参考答案_IT认证_资格考试/认证_教育专区。c语言数组部分必须会编写的程序(参考答案) 1、使用选择法、冒泡法对 10...

C语言复习题及答案 第七章 数组

C语言复习题及答案 第七章 数组_IT认证_资格考试/认证_教育专区。C 语言复习...字符型数组的定义与引用; 、能正确使用字符串处理函数; 、学会使用数组解决实际...

c语言 数组习题

c语言 数组习题_IT认证_资格考试/认证_教育专区。学习c语言的同学可以看看,里面...函数输入数组的第二个元素表示为 为: 。把第六个和第四个元素之和存入第一...

C语言 数组试题

#include <stdio.h> #include <conio.h> void main() { int a,b,c; /...C语言模拟考试试题数组之... 暂无评价 5页 免费 C语言模拟考试试题数组之......

大学C语言期末考试练习题(带详解答案)

一、 单项选择题 1. ( A )是构成 C 语言程序的基本单位。 A、函数 2.C...以下对一维数组 a 的正确说明是: A) char a(10) ; C)int k=5,a[k];...

C语言指针与数组练习题

C语言指针与数组练习题_学科竞赛_高中教育_教育专区。适用于想要参加NOIP的中学...,返回一个 int 数组中存储的最大数值,并在一个简单的程序中测试这个 函数。 ...

C语言编程练习题绝对经典!

C语言编程练习题绝对经典!_IT认证_资格考试/认证_教育专区。C语言编程练习 ...? 编写一个函数,使给定的一个二维数组(N×N)行列互换(N>3)。 从键盘中...
更多相关标签:
c语言数组试题 | c语言函数返回数组 | c语言函数调用数组 | c语言返回数组的函数 | c语言数组函数 | c语言函数传递数组 | c语言数组做函数参数 | c语言数组长度函数 |
网站地图

文档资料共享网 nexoncn.com copyright ©right 2010-2020。
文档资料共享网内容来自网络,如有侵犯请联系客服。email:zhit325@126.com