[在线作业] 东北大学13秋《高级语言程序设计基础》在线作业答案

[复制链接]
发表于 2013-10-13 11:20:20 | 显示全部楼层 |阅读模式
东北大学13秋学期《高级语言程序设计基础》在线作业1
试卷总分:100   测试时间:--
一、单选题(共20道试题,共100分。)
1.以下对二维数组a的正确说明是( )。
A. int a[3][];
B. float a(3,4);
C. double a[1][4]
D. float a(3)(4);
满分:5分
2.以下能正确定义整型变量x、y和z并为其赋初值5的语句是( )。
A. int x=y=z=5;
B. int x,y,z=5;
C. int x=5,y=5,z=5;
D. x=5,y=5,z=5;"
满分:5分
3.若a、b、c均为int型变量,则执行以下程序段后的输出结果为( )。 b=(a=10,a+5,c=10); printf("a=%d,b=%d,c=%d\n",a,b,c); c=(a=10,b=5,a+b);printf("a=%d,b=%d,c=%d\n",a,b,c);
A. a=10,b=15,c=10a=10,b=5,c=10
B. a=10,b=10,c=10a=10,b=5,c=10
C. a=10,b=10,c=10a=10,b=5,c=15
D. a=10,b=10,c=10a=10,b=5,c=5
满分:5分
4.以下程序段的运行结果是( )。 char a[ ]="program", *p; p=a; while (*p!='g')   { printf("%c", *p-32); p++; }
A. PROgram
B. PROGRAM
C. PRO
D. proGRAM
满分:5分
5.判断char型变量c1是否为大写字母的正确表达式是( )。
A. A'<=c1<='Z'
B. (c1>='A')&(c1<='Z')
C. (c1>='A')&&(c1<='Z')
D. ('A'<=c1) AND ('Z'>=c1)
满分:5分
6.设有定义:int a=1, *p=&a; float b=2.0; char c='A'; ,以下不合法的运算是( )。
A. p++;
B. a--;
C. b++;
D. c--;
满分:5分
7.当正常执行了文件关闭操作时,fclose函数的返回值是( )。
A. -1
B. 随机值
C. 0
D. 1
满分:5分
8.设x,y是float型变量,则不正确的赋值语句是( )。
A. ++x;
B. y=int(5);
C. x*=y+1;
D. x=y=0;
满分:5分
9.若执行fopen函数时发生错误,则函数的返回值是( )。
A. 随机值
B. 1
C. NULL
D. EOF
满分:5分
10.C语言程序从main()函数开始执行,所以这个函数要写在( )。
A. 程序文件的开始
B. 程序文件的最后
C. 它所调用的函数的前面
D. 程序文件的任何位置
满分:5分
11.以下对C语言中共用体类型数据的叙述正确的是( )。
A. 可以对共用体变量名直接赋值
B. 一个共用体变量中可以同时存放其所有成员
C. 一个共用体变量中不能同时存放其所有成员
D. 共用体类型定义中不能出现结构体类型的成员
满分:5分
12.C语言规定:简单变量做实参时,它和对应形参之间的数据传递方式是( )。
A. 地址传递
B. 单向值传递
C. 由实参传给形参,再由形参传回实参
D. 由用户指定传递方式
满分:5分
13.若用fopen打开一个新的二进制文件,要求文件既能读又能写,则应选用的文件方式字符串是( )。
A. "wb+
B. "r+"
C. "rb+"
D. "ab+""
满分:5分
14.设x、y均是int类型变量,且x值为100,则关于以下for循环的正确判断是( )。    for (y=100; x!=y; ++x,y++)      printf("****\n");
A. 循环体只执行一次
B. 是无限循环
C. 循环体一次都不执行
D. for语句中存在语法错误
满分:5分
15.下列程序的输出结果是( )。 #include void fun(); void main() { int x=1; if(x= =1) { int x=2; printf(“%d”,++x); } void fun() { printf(“%d”,x++);}
A. 2,1,1
B. 1,2,1
C. 2,2,2
D. 2,2,1"
满分:5分
16.对以下说明语句的正确理解是( )。 int a[10]={6,7,8,9,10};
A. 将5个初值依次赋给a[1]至a[5]
B. 将5个初值依次赋给a[0]至a[4]
C. 将5个初值依次赋给a[6]至a[10]
D. 因为数组与初值的个数不相同,所以此语句不正确
满分:5分
17.以下判断正确的是( )。
A. char *s="string"; 等价于char *s; *s="string";
B. char str[10]={"string"}; 等价于char str[10]; str={"string"};
C. char *s="string"; 等价于char *s; s="string";
D. char str[10]={"string"}; 等价于char str[10]; *str={"strint"};"
满分:5分
18.以下正确的描述是( )。
A. 定义函数时,形参的类型说明可以放在函数体内
B. return后面的值不能为表达式
C. 如果函数值的类型与返回值类型不一致,以函数值类型为准
D. 如果实参与形参的类型不一致,以实参类型为准
满分:5分
19.若有定义:int i, x[3][4];,则不能将x[1][1]的值赋给变量i的语句是( )。
A. i=x[1][1]
B. i=*(*(x+1))
C. i=*(*(x+1)+1)
D. i=*(x[1]+1)
满分:5分
20.若有以下程序段: …… int a[]={4,0,2,3,1},i,j,t; for(i=1;i<5;i++) { t=a;j=i-1; while(j>=0 && t>a[j]) { a[j+1]=a[j];j--;} a[j+1]=t; } …… 则该程序段的功能是( )。
A. 对数组a进行插入排序(升序)
B. 对数组a进行插入排序(降序)
C. 对数组a进行选择排序(升序)
D. 对数组a进行选择排序(降序)
13秋学期《高级语言程序设计基础》在线作业2
试卷总分:100   测试时间:--
一、单选题(共20道试题,共100分。)
1.下程序( )。    main( )    { int x1=3, x2=0, x3=0;       if (x1=x2+x3) printf("* * * *"); else printf("# # # #");    }
A. 输出:* * * *
B. 输出:# # #
C. #存在语法错误
D. 无输出结果
满分:5分
2.若有语句:int a=4, *p=&a;,下面均代表地址的一组选项是( )。
A. a, p, &*a
B. *&a, &a, *p
C. &a, p, &*p
D. *&p, *p, &a"
满分:5分
3.以下对二维数组a的正确说明是( )。
A. int a[3][];
B. float a(3,4);
C. double a[1][4]
D. float a(3)(4);
满分:5分
4.若二维数组a有m列,则在a[j]前的元素个数为( )。
A. j*m+i
B. i*m+j
C. i*m+j-1
D. i*m+j+1
满分:5分
5.以下正确的描述是( )。
A. 函数的定义可以嵌套,但函数的调用不可以嵌套
B. 函数的定义不可以嵌套,但函数的调用可以嵌套
C. 函数的定义和函数的调用均不可以嵌套
D. 函数的定义和函数的调用均可以嵌套
满分:5分
6.系统的标准输入文件是指( )。
A. 键盘
B. 显示器
C. 软盘
D. 硬盘
满分:5分
7.当正常执行了文件关闭操作时,fclose函数的返回值是( )。
A. -1
B. 随机值
C. 0
D. 1
满分:5分
8.若二维数组a有m列,则在a[j]前的元素个数为( )。
A. j*m+i
B. i*m+j
C. i*m+j-1
D. i*m+j+1
满分:5分
9.有下面的程序段 char a[3],b[]="China"; a=b; printf("%s",a); 则( )。
A. 运行后将输出China
B. 运行后将输出Ch
C. 运行后将输出Chi
D. 编译时出错
满分:5分
10.若有说明:int a[3][4];则对a数组元素的正确引用是( )。
A. a[2][4]
B. a[1,3]
C. a[1+1][0]
D. a(2)(1)
满分:5分
11.下面程序的运行结果是( )。 void prt(int *a) { printf(“%d\n”,++*a); } main() { int b=25; prt(&b);}
A. 24
B. 25
C. 26
D. 27
满分:5分
12.以下正确的函数形式是( )。
A. double fun1(int x, int y)  { z=x+y; return z; }
B. fun1(int x, y){ int z;return z; }
C. fun1(x, y) { int x, y; double z;z=x+y;return z; }
D. double fun1(int x, int y){ double z;z=x+y; return z; }"
满分:5分
13.如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是( )。
A. 该变量只在该复合语句中有效
B. 该变量在该函数中有效
C. 该变量在本程序范围内有效
D. 该变量为非法变量
满分:5分
14.C语言结构体类型变量在程序执行期间( )。
A. 所有成员一直驻留在内存中
B. 只有一个成员驻留在内存中
C. 部分成员驻留在内存中
D. 没有成员驻留在内存中
满分:5分
15.若有以下语句,则对x数组元素引用不正确的是( )。 int x[ ]={1, 2, 3, 4, 5, 6}, *ptr;ptr=x;
A. *(--ptr)
B. *(ptr--)
C. *(ptr++)
D. *(++ptr)
满分:5分
16.以下程序段的运行结果是( )。 char a[ ]="program", *p; p=a; while (*p!='g')   { printf("%c", *p-32); p++; }
A. PROgram
B. PROGRAM
C. PRO
D. proGRAM
满分:5分
17.若有说明:int a[3][4];则数组a中各元素( )。
A. 可在程序的运行阶段得到初值0
B. 可在程序的编译阶段得到初值0
C. 不能得到确定的初值
D. 可在程序的编译或运行阶段得到初值0
满分:5分
18.C语言程序从main()函数开始执行,所以这个函数要写在( )。
A. 程序文件的开始
B. 程序文件的最后
C. 它所调用的函数的前面
D. 程序文件的任何位置
满分:5分
19.以下正确的定义语句是( )。
A. int a[1][4]={1,2,3,4,5};
B. float x[3][]={{1},{2},{3}};
C. long b[2][3]={{1},{1,2},{1,2,3}};
D. double y[][3]={0};
满分:5分
20.若有以下程序段: …… int a[]={4,0,2,3,1},i,j,t; for(i=1;i<5;i++) { t=a;j=i-1; while(j>=0 && t>a[j]) { a[j+1]=a[j];j--;} a[j+1]=t; } …… 则该程序段的功能是( )。
A. 对数组a进行插入排序(升序)
B. 对数组a进行插入排序(降序)
C. 对数组a进行选择排序(升序)
D. 对数组a进行选择排序(降序)
13秋学期《高级语言程序设计基础》在线作业3
试卷总分:100   测试时间:--
一、单选题(共20道试题,共100分。)
1.系统的标准输入文件是指( )。
A. 键盘
B. 显示器
C. 软盘
D. 硬盘
满分:5分
2.下列关于C语言的叙述错误的是( )。
A. 大写字母和小写字母的意义相同
B. 不同类型的变量可以在一个表达式中
C. 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型
D. 同一个运算符号在不同的场合可以有不同的含义
满分:5分
3.若二维数组a有m列,则计算任一元素a[j]在数组中位置的公式为( )。(假设a[0][0]位于数组的第一个位置上。)
A. i*m+j
B. j*m+i
C. i*m+j-1
D. i*m+j+1
满分:5分
4.以下有关宏替换的叙述不正确的是( )。
A. 宏名不具有类型
B. 宏名必须用大写字母表示
C. 宏替换只是字符替换
D. 宏替换不占用运行时间
满分:5分
5.以下正确的描述是( )。
A. 定义函数时,形参的类型说明可以放在函数体内
B. return后面的值不能为表达式
C. 如果函数值的类型与返回值类型不一致,以函数值类型为准
D. 如果实参与形参的类型不一致,以实参类型为准
满分:5分
6.以下能正确定义整型变量x、y和z并为其赋初值5的语句是( )。
A. int x=y=z=5;
B. int x,y,z=5;
C. int x=5,y=5,z=5;
D. x=5,y=5,z=5;"
满分:5分
7.有两个字符数组a、b,则以下正确的输入语句是( )。
A. gets(a,b);
B. scanf("%s%s",a,b);
C. scanf("%s%s",&a,&b);
D. gets("a"); gets("b");"
满分:5分
8.若有说明:char *pc[ ]={"aaa", "bbb", "ccc", "ddd"};,则以下叙述正确的是( )。
A. *pc[0]代表的是字符串"aaa
B. *pc[0]代表的是字符'a'
C. pc[0]代表的是字符串"aaa"
D. pc[0]代表的是字符'a'
满分:5分
9.以下在任何情况下计算两数积时都不会引起二义性的宏定义是( )。
A. #define MUL(x,y) x*y
B. #define MUL(x,y) (x)*(y)
C. #define MUL(x,y) (x*y)
D. #define MUL(x,y) ((x)*(y))"
满分:5分
10.若有以下说明,并且0≤i<10,则( )是对数组元素的错误引用。int a[]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, *p=a, I;
A. *(a+i)
B. a[p-a+i]
C. p+i
D. *(&a)
满分:5分
11.当正常执行了文件关闭操作时,fclose函数的返回值是( )。
A. -1
B. 随机值
C. 0
D. 1
满分:5分
12.若a和b均为int型变量,则执行以下程序断后x的输出是( )。 x=15;y=15;printf("%d\n",x%=(y%=2));
A. 0
B. 1
C. 6
D. 12
满分:5分
13.在C语言中,整数-8在内存中的存储形式是( )。
A. 1111 1111 1111 1000
B. 1000 0000 0000 1000
C. 0000 0000 0000 1000
D. 1111 1111 1111 0111
满分:5分
14.有下面的程序段 char a[3],b[]="China"; a=b; printf("%s",a); 则( )。
A. 运行后将输出China
B. 运行后将输出Ch
C. 运行后将输出Chi
D. 编译时出错
满分:5分
15.对两个数组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数组长
满分:5分
16.若有说明:int a[3][4];则数组a中各元素( )。
A. 可在程序的运行阶段得到初值0
B. 可在程序的编译阶段得到初值0
C. 不能得到确定的初值
D. 可在程序的编译或运行阶段得到初值0
满分:5分
17.以下正确的函数说明是( )。
A. int fun(int a, b)
B. float fun(int a; int b)
C. double fun( )
D. int fun(char a[ ][ ])
满分:5分
18.若希望当num的值为奇数时,表达式的值为“真”,num的值为偶数时,表达式的值为“假”。则以下不能满足要求的表达式是( )。
A. num%2==1
B. !(num%2==0)
C. !(num%2)
D. num%2
满分:5分
19.以下对C语言中共用体类型数据的叙述正确的是( )。
A. 可以对共用体变量名直接赋值
B. 一个共用体变量中可以同时存放其所有成员
C. 一个共用体变量中不能同时存放其所有成员
D. 共用体类型定义中不能出现结构体类型的成员
满分:5分
20.对以下说明语句的正确理解是( )。 int a[10]={6,7,8,9,10};
A. 将5个初值依次赋给a[1]至a[5]
B. 将5个初值依次赋给a[0]至a[4]
C. 将5个初值依次赋给a[6]至a[10]
D. 因为数组与初值的个数不相同,所以此语句不正确
满分:5分

13秋学期《高级语言程序设计基础》在线作业1.rar

2.1 KB, 下载次数: 2, 下载积分: 贡献 1

售价: 1 金币  [记录]  [购买]

13秋学期《高级语言程序设计基础》在线作业2.rar

1.85 KB, 下载次数: 2, 下载积分: 贡献 1

售价: 1 金币  [记录]  [购买]

13秋学期《高级语言程序设计基础》在线作业3.rar

2.02 KB, 下载次数: 2, 下载积分: 贡献 1

售价: 1 金币  [记录]  [购买]

快速回复 返回顶部 返回列表