东北大学《高级语言程序设计基础》16春作业标准答案
东北大学《高级语言程序设计基础》16春学期在线作业1rn一、单选题:【20道,总分:100分】
1.已知ch是字符型变量,则不正确的赋值语句是( )。 (满分:5)
A. ch=5+9;
B. ch='\0';
C. ch='7'+'9';
D. ch='a+b';
2.以下程序执行后a的值为( )。 main( ) { int a,m=2, k=1, *p=&k; a=p!=&m; printf("%d\n",a); } (满分:5)
A. -1
B. 0
C. 1
D. 2
3.函数调用语句:fseek(fp, 10L, 2);的含义是:将文件位置指针( )。 (满分:5)
A. 移动到距离文件头10个字节处
B. 从当前位置向后移动10个字节
C. 从文件尾部前移10个字节
D. 移到离当前位置10个字节处
4.当正常执行了文件关闭操作时,fclose函数的返回值是( )。 (满分:5)
A. -1
B. 随机值
C. 0
D. 1
5.一个C语言程序总是从( )。 (满分:5)
A. 主过程开始执行
B. 主函数开始执行
C. 子程序开始执行
D. 主程序开始执行
6.下列程序的输出结果是( )。#includevoid fun( );void main( ){int x=1;if(x= =1){ int x=2; printf(“%d”,++x);} void fun( ){ printf(“%d”,x++);} (满分:5)
A. 2
1
1
B. 1
2
1
C. 2
2
2
D. 2
2
1"
7.若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); (满分:5)
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
8.若有说明:int a;则数组a中各元素( )。 (满分:5)
A. 可在程序的运行阶段得到初值0
B. 可在程序的编译阶段得到初值0
C. 不能得到确定的初值
D. 可在程序的编译或运行阶段得到初值0
9.若a和b均为int型变量,则执行以下程序断后x的输出是( )。x=15;y=15;printf("%d\n",x%=(y%=2)); (满分:5)
A. 0
B. 1
C. 6
D. 12
10.判断char型变量c1是否为大写字母的正确表达式是( )。 (满分:5)
A. A'<=c1<='Z'
B.(c1>='A')&(c1<='Z')
C.(c1>='A')&&(c1<='Z')
D.('A'=c1)
11.以下正确的函数形式是( )。 (满分:5)
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; }"
12.若有以下说明,并且0≤i<10,则( )是对数组元素的错误引用。int a[]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, *p=a, I; (满分:5)
A. *(a+i)
B. a
C. p+i
D. *(&a)
13.C语言程序从main( )函数开始执行,所以这个函数要写在( )。 (满分:5)
A. 程序文件的开始
B. 程序文件的最后
C. 它所调用的函数的前面
D. 程序文件的任何位置
14.若有定义:int a;,则以下对a数组元素地址的正确表示为( )。 (满分:5)
A. *(a+1)
B. *(a+2)
C. a+3
D. a
15.系统的标准输入文件是指( )。 (满分:5)
A. 键盘
B. 显示器
C. 软盘
D. 硬盘
16.以下正确的函数说明是( )。 (满分:5)
A. int fun(int a
b)
B. float fun(int a; int b)
C. double fun( )
D. int fun(char a[ ][ ])
17.C语言中字符型(char)数据在内存中的存储形式是( )。 (满分:5)
A. 原码
B. 补码
C. 反码
D. ASCII码
18.下面程序的运行结果是( )。 char a="abcdef"; char b="ABC"; strcpy(a,b); printf("%c",a); (满分:5)
A. 输出空格
B. \0
C. e
D. f
19.下面程序的运行结果是( )。main( ){ int b={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int *q=b; printf("%d\n", *(q+2) );} (满分:5)
A. 1
B. 2
C. 3
D. 4
20.若有说明:int a;则对a数组元素的正确引用是( )。 (满分:5)
A. a
B. a[1
3]
C. a
D. a(2)(1)
16春学期《高级语言程序设计基础》在线作业2rn
一、单选题:【20道,总分:100分】
1.以下程序段的运行结果是( )。char a[ ]="program", *p;p=a;while(*p!='g') { printf("%c", *p-32); p++; } (满分:5)
A. PROgram
B. PROGRAM
C. PRO
D. proGRAM
2.若有说明:int a;则对a数组元素的非法引用是( )。 (满分:5)
A. a
B. a
C. a
D. a
3.下面程序的输出结果是( )。main( ){ int x,i;for(i=1;i<=100;i++){ x=i;if(++x%2==0)if(++x%3==0)if(++x%7==0)printf("%d ",x);}} (满分:5)
A. 39 81
B. 42 84
C. 26 68
D. 28 70
4.以下正确的描述是( )。 (满分:5)
A. 函数的定义可以嵌套,但函数的调用不可以嵌套
B. 函数的定义不可以嵌套,但函数的调用可以嵌套
C. 函数的定义和函数的调用均不可以嵌套
D. 函数的定义和函数的调用均可以嵌套
5.已知ch是字符型变量,则不正确的赋值语句是( )。 (满分:5)
A. ch=5+9;
B. ch='\0';
C. ch='7'+'9';
D. ch='a+b';
6.执行以下程序段后,y的值是( )。int a[ ]={1, 3, 5, 7, 9}int x=0, y=1, *ptr;ptr=&a;while(!x) { y+=*(ptr+x); x++; } (满分:5)
A. 1
B. 2
C. 4
D. 24
7.一个C语言程序总是从( )。 (满分:5)
A. 主过程开始执行
B. 主函数开始执行
C. 子程序开始执行
D. 主程序开始执行
8.在C语言中,整数-8在内存中的存储形式是( )。 (满分:5)
A. 1111 1111 1111 1000
B. 1000 0000 0000 1000
C. 0000 0000 0000 1000
D. 1111 1111 1111 0111
9.以下正确的定义语句是( )。 (满分:5)
A. int a={1
2
3
4
5};
B. float x[]={{1}
{2}
{3}};
C. long b={{1}
{1
2}
{1
2
3}};
D. double y[]={0};
10.设ch是char类型变量,其值是A,则表达式ch=(ch>='A'&&ch<='Z')?(ch+32):ch的值是( )。 (满分:5)
A. Z
B. A
C. a
D. z
11.若有以下程序段: …… int a[]={4,0,2,3,1},i,j,t; for(i=1;i=0 && t>a) { a=a;j--;} a=t; } …… 则该程序段的功能是( )。 (满分:5)
A. 对数组a进行插入排序(升序)
B. 对数组a进行插入排序(降序)
C. 对数组a进行选择排序(升序)
D. 对数组a进行选择排序(降序)
12.对两个数组a和b进行如下初始化 char a[]="ABCDEF"; char b[]={'A','B','C','D','E','F'}; 则以下叙述正确的是( )。 (满分:5)
A. a与b数组完全相同
B. a与b长度相同
C. a和b中都存放字符串
D. a数组比b数组长
13.若有说明:int a[]={1,2,3,4,5,6,7};则数组a第一维的大小是( )。 (满分:5)
A. 2
B. 3
C. 4
D. 无确定值
14.有下面的程序段 char a,b[]="China"; a=b; printf("%s",a); 则( )。 (满分:5)
A. 运行后将输出China
B. 运行后将输出Ch
C. 运行后将输出Chi
D. 编译时出错
15.下列程序的输出结果是( )。#includevoid fun( );void main( ){int x=1;if(x= =1){ int x=2; printf(“%d”,++x);} void fun( ){ printf(“%d”,x++);} (满分:5)
A. 2
1
1
B. 1
2
1
C. 2
2
2
D. 2
2
1"
16.若有说明:int a;则对数组元素的正确引用是( )。 (满分:5)
A. a
B. a[3
5]
C. a(5)
D. a
17.以下程序运行后,输出结果是( )。 #define ADD(x) x+x main( ) { int m=1, n=2, s=3; s*=ADD(m+n); printf("s=%d\n", s); } (满分:5)
A. s=8
B. s=9
C. s=6
D. s=18
18.下面程序段的运行结果是( )。char str="output";printf("\"%s\"\n", str); (满分:5)
A. output
B. "output"
C. \"output\"
D. 编译出错
19.C语言允许函数值类型的缺省定义,此时该函数值隐含的类型是( )。 (满分:5)
A. float
B. int
C. long
D. double
20.若调用fputc函数输出字符成功,则函数的返回值是( )。 (满分:5)
A. 输出的字符
B. -1
C. 0
D. EOF
16春学期《高级语言程序设计基础》在线作业3rn
一、单选题:【20道,总分:100分】
1.在一个源文件中定义的全局变量的作用域为( )。 (满分:5)
A. 本文件的全部范围
B. 本程序的全部范围
C. 本函数的全部范围
D. 从定义该变量的位置开始至本文件结束
2.下面程序的运行结果是( )。main( ){ int b={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int *q=b; printf("%d\n", *(q+2) );} (满分:5)
A. 1
B. 2
C. 3
D. 4
3.以下程序运行后,输出结果是( )。 #define ADD(x) x+x main( ) { int m=1, n=2, s=3; s*=ADD(m+n); printf("s=%d\n", s); } (满分:5)
A. s=8
B. s=9
C. s=6
D. s=18
4.设x、y均是int类型变量,且x值为100,则关于以下for循环的正确判断是( )。 for(y=100; x!=y; ++x,y++) printf("****\n"); (满分:5)
A. 循环体只执行一次
B. 是无限循环
C. 循环体一次都不执行
D. for语句中存在语法错误
5.若有说明:int a;则对数组元素的正确引用是( )。 (满分:5)
A. a
B. a[3
5]
C. a(5)
D. a
6.若有说明:int a={0};则下面正确的叙述是( )。 (满分:5)
A. 只有数组元素a可得到初值0
B. 此说明语句不正确
C. 数组a中各元素都可得到初值,但其值不一定为0
D. 数组a中每个元素均可得到初值0
7.下面对typedef的叙述中不正确的是( )。 (满分:5)
A. 用typedef不能定义变量名
B. 用typedef可以定义新的数据类型
C. 用typedef只是将已存在的类型用一个新的标识符来代表
D. 使用typedef有利于程序的通用和移植
8.若有说明:int a;则数组a中各元素( )。 (满分:5)
A. 可在程序的运行阶段得到初值0
B. 可在程序的编译阶段得到初值0
C. 不能得到确定的初值
D. 可在程序的编译或运行阶段得到初值0
9.若二维数组a有m列,则在a前的元素个数为( )。 (满分:5)
A. j*m+i
B. i*m+j
C. i*m+j-1
D. i*m+j+1
10.设a、b、c、d均是int类型变量,为了使以下程序段的输出为:1234+123+12+1,正确的输入形式应当是( )。scanf("%4d+%3d+%2d+%1d",&a,&b,&c,&d);printf("%4d+%3d+%2d+%1d",a, b, c, d); (满分:5)
A. 1234123121
B. 1234123412341234
C. 1234+1234+1234+1234
D. 1234+123+12+1
11.当定义一个结构体变量时系统分配给它的内存是( )。 (满分:5)
A. 结构中第一个成员所需的内存量
B. 结构中最后一个成员所需的内存量
C. 结构体成员中占内存量最大者所需的容量
D. 结构体中各成员所需内存量的总和
12.有字符数组a和b,则正确的输出语句是( )。 (满分:5)
A. puts(a.b);
B. printf("%s
%s"
a[]
b[]);
C. pitchar(a
b);
D. puts(a); puts(b);
13.以下程序执行后a的值为( )。 main( ) { int a,m=2, k=1, *p=&k; a=p!=&m; printf("%d\n",a); } (满分:5)
A. -1
B. 0
C. 1
D. 2
14.下面程序段的运行结果是( )。 char a="abcdef"; char b="ABC"; strcpy(a,b); printf("%c",a); (满分:5)
A. 空格
B. \0
C. e
D. f
15.若有说明:int a;则对a数组元素的非法引用是( )。 (满分:5)
A. a
B. a
C. a
D. a
16.判断字符串a和b是否相等,应当使用( )。 (满分:5)
A. if(a==b)
B. if(a=b)
C. if(strcpy(a
b))
D. if(strcmp(a
b))"
17.若有说明:char *pc[ ]={"aaa", "bbb", "ccc", "ddd"};,则以下叙述正确的是( )。 (满分:5)
A. *pc代表的是字符串"aaa
B. *pc代表的是字符'a'
C. pc代表的是字符串"aaa"
D. pc代表的是字符'a'
18.以下程序的运行结果是( )。 main( ) { int a=1, k; for(k=0; k<3; k++) printf("%4d", f1(a)); } f1(int x) { static int z=3, y=0; y++; z++; return(x+y+z); } (满分:5)
A. 6 8 10
B. 6 6 6
C. 7 8 9
D. 7 9 11
19.C语言允许函数值类型的缺省定义,此时该函数值隐含的类型是( )。 (满分:5)
A. float
B. int
C. long
D. double
20.以下能正确定义整型变量x、y和z并为其赋初值5的语句是( )。 (满分: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;"
**** Hidden Message ***** 大神给个答案呀,谢谢
下载了两个,都满分,还可以,挺方便的!
页:
[1]