大学MOOC 程序设计入门——C语言(九江学院)1450291402 最新慕课完整章节测试答案
第七章数组及其应用
第十六周测试题函数及数组
1、单选题:
下列程序的输出结果是( )。 # include <stdio.h>int f(int n){ static int k, s;n--;for(k=n; k>0; k--)s += k; return s;}int main(void){ int k;k=f(3);printf("(%d,%d)", k, f(k));return 0;}
选项:
A: (3,3)
B: (3,6)
C: (6,6)
D: (6,12)
答案: 【 (3,6)】
2、单选题:
函数f定义如下,执行语句“sum=f(5)+f(3);”后,sum的值应为( )。int f(int m) { static int i=0; int s=0; for(;i<=m;i++) s+=i; return s;}
选项:
A: 21
B: 15
C: 16
D: 8
答案: 【 15】
3、单选题:
函数中未指定存储类型的局部变量,其隐含的存储类型是()
选项:
A: auto
B: register
C: extern
D: static
答案: 【 auto】
4、单选题:
如果所有的变量按照下面的程序进行定义和声明,那么在main()函数中所有可用的变量为 ()。void fun(int x){ static int y; …… return;}int z;void main( ){ int a,b; fun(a); ……}
选项:
A: x,y,z,a,b
B: a,b
C: z,a,b
D: x,y,z
答案: 【 z,a,b】
5、单选题:
宏定义 #define div(a,b) a/b, 经div(x+5,y-5)引用,替换展开后是()。
选项:
A: x+5/y-5
B: (x+5)/(y-5)
C: (x+5/y-5)
D: 以上都错误
答案: 【 x+5/y-5】
6、单选题:
下面关于形参和实参的说法中,正确的是( )。
选项:
A: 形参是虚设的,所以它始终不占存储单元。
B: 实参与它所对应的形参占用不同的存储单元。
C: 实参与它所对应的形参占用同一个存储单元。
D: 实参与它所对应的形参同名时可占用同一个存储单元。
答案: 【 实参与它所对应的形参占用不同的存储单元。】
7、单选题:
如果要一个变量在整个程序运行期间都存在,但是仅在说明它的函数内是可见的,则这个变量的存储类型应该被说明为( )。
选项:
A: 自动变量
B: 静态变量
C: 外部变量
D: 寄存器变量
答案: 【 静态变量】
8、单选题:
以下正确地定义了一维整型数组a的语句组是( )
选项:
A: int a(10);
B: int n=10,a[n]
C: int n; scanf(“%d”,&n); int a[n];
D: int a[SIZE];(在程序开始有#define SIZE 10)
答案: 【 int a[SIZE];(在程序开始有#define SIZE 10)】
9、单选题:
下面程序的运行结果是( )#include<stdio.h>int main(){ int a[]= {2,3,5,4},i; for(i=0; i<4; i++) switch(i%2) { case 0: switch(a[i]%2) { case 0: a[i]++; break; case 1: a[i]--; } break; } for(i=0; i<4; i++) printf("%2d",a[i]); printf("n"); return 0;}
选项:
A: 3 3 4 4
B: 2 0 5 0
C: 3 0 4 0
D: 0 3 0 4
答案: 【 3 3 4 4】
10、单选题:
下面的程序段将输出 ▁▁▁▁▁ 。double a[] = {1, 2, 3, 4, 5};printf("%dn", sizeof(a));
选项:
A: 20
B: 10
C: 5
D: 40
答案: 【 40】
11、单选题:
有两个字符数组a,b,则以下正确的输入语句是()
选项:
A: gets(a,b);
B: scanf("%s%s",a,b);
C: scanf("%s%s",&a,&b);
D: gets("a"),gets("b");
答案: 【 scanf("%s%s",a,b);】
12、单选题:
下列字符串赋值语句中,不能正确把字符串"Hello World"赋给数组的语句是()
选项:
A: char a1[]={'H','e ','l','l','o',' ','W','o','r','l','d',''};
B: char a2[15]; strcpy(a2,"Hello World");
C: char a3[15]; a3="Hello World";
D: char a4[15]={"Hello World"};
答案: 【 char a3[15]; a3="Hello World";】
13、单选题:
对于定义 char str[] = "abc00defn"(注:其中0为数字零),求字符串str的长度len和数组str的大小size,len和size分别是( )
选项:
A: 12,13
