高级语言程序设计基础作业一二三满分答案东大本部16秋
16秋《高级语言程序设计基础》在线作业3一、单选题:
1.函数调用语句:fseek(fp, 10L, 2);的含义是:将文件位置指针( )。 (满分:5)
A. 移动到距离文件头10个字节处
B. 从当前位置向后移动10个字节
C. 从文件尾部前移10个字节
D. 移到离当前位置10个字节处
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.C语言结构体类型变量在程序执行期间( )。 (满分:5)
A. 所有成员一直驻留在内存中
B. 只有一个成员驻留在内存中
C. 部分成员驻留在内存中
D. 没有成员驻留在内存中
4.下列程序的输出结果是( )。#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"
5.执行以下程序段后,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
6.以下能对二维数组a进行正确初始化的语句是( )。 (满分:5)
A. int a[]={{1
0
1}
{5
2
3}};
B. int a[]={{1
2
3}
{4
5
6}};
C. int a={{1
2
3}
{4
5}
{6}};
D. int a[]={{1
0
1}
{}
{1
1}};"
7.有下面的程序段 char a,b[]="China"; a=b; printf("%s",a); 则( )。 (满分:5)
A. 运行后将输出China
B. 运行后将输出Ch
C. 运行后将输出Chi
D. 编译时出错
8.下列关于C语言的叙述错误的是( )。 (满分:5)
A. 大写字母和小写字母的意义相同
B. 不同类型的变量可以在一个表达式中
C. 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型
D. 同一个运算符号在不同的场合可以有不同的含义
9.若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
10.已知intx=10,y=20,z=30;以下语句执行后x,y,z的值是( )。if(x>y)z=x;x=y;y=z; (满分:5)
A. x=10
y=20
z=30
B. x=20
y=30
z=30
C. x=20
y=30
z=10
D. x=20
y=30
z=20"
11.下面程序的运行结果是( )。 char a="abcdef"; char b="ABC"; strcpy(a,b); printf("%c",a); (满分:5)
A. 输出空格
B. \0
C. e
D. f
12.下面对typedef的叙述中不正确的是( )。 (满分:5)
A. 用typedef不能定义变量名
B. 用typedef可以定义新的数据类型
C. 用typedef只是将已存在的类型用一个新的标识符来代表
D. 使用typedef有利于程序的通用和移植
13.函数rewind(fp)的作用是:使文件位置指针( )。 (满分:5)
A. 重新返回文件的开头
B. 返回到前一个字符的位置
C. 指向文件的末尾
D. 自动移至下一个字符的位置
14.以下正确的说法是( )。 (满分:5)
A. 实参和与其对应的形参各占用独立的存储单元
B. 实参和与其对应的形参共占用一个存储单元
C. 只有当实参和与其对应的形参同名时才共用存储单元
D. 形参是虚拟的,不占用存储单元
15.以下程序的输出结果是( )。main( ){ int a=0,b=1,c=0,d=20;if(a) d=d-10;else if(!b)if(!c) d=15;else d=25;printf("d=%d\n",d);} (满分:5)
A. d=10
B. d=15
C. d=20
D. d=25
16.以下程序的运行结果是( )。 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
17.下面程序段的运行结果是( )。char str="output";printf("\"%s\"\n", str); (满分:5)
A. output
B. "output"
C. \"output\"
D. 编译出错
18.若有说明:int a={0};则下面正确的叙述是( )。 (满分:5)
A. 只有数组元素a可得到初值0
B. 此说明语句不正确
C. 数组a中各元素都可得到初值,但其值不一定为0
D. 数组a中每个元素均可得到初值0
19.设c1、c2均是char类型变量,则以下不正确的函数调用是( )。 (满分:5)
A. scanf("c1=%cc2=%c"
&c1
&c2);
B. getchar( )
C. putchar(c2);
D. putchar(c1
c2)"
20.当正常执行了文件关闭操作时,fclose函数的返回值是( )。 (满分:5)
A. -1
B. 随机值
C. 0
D. 1
16秋学期《高级语言程序设计基础》在线作业1
一、单选题:
1.以下能对一维数组a进行正确初始化的语句是( )。 (满分:5)
A. int a=(0
0
0
0
0);
B. int a={ };
C. int a[]={0};
D. int a={10*1};
2.执行以下程序段后,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
3.下面程序( )。(每行程序前的数字为行号) 1 main{} 2 { 3 float a={0.0}; 4 int i; 5 for(i=0;i<3;i++) scanf(%d",&a); 6 for(i=1;i<10;i++) a=a+a; 7 printf("%f\n",a); 8 } (满分:5)
A. 没有错误
B. 第3行有错误
C. 第5行有错误
D. 第7行有错误
4.设ch是char类型变量,其值是A,则表达式ch=(ch>='A'&&ch<='Z')?(ch+32):ch的值是( )。 (满分:5)
A. Z
B. A
C. a
D. z
5.设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
6.若调用fputc函数输出字符成功,则函数的返回值是( )。 (满分:5)
A. 输出的字符
B. -1
C. 0
D. EOF
7.若有以下语句,则对x数组元素引用不正确的是( )。int x[ ]={1, 2, 3, 4, 5, 6}, *ptr;ptr=x; (满分:5)
A. *(--ptr)
B. *(ptr--)
C. *(ptr++)
D. *(++ptr)
8.若有说明:int a[]={0,0};则下面不正确的叙述是( )。 (满分:5)
A. 数组a中的每个元素都可得到初值0
B. 二维数组a的第1维大小为1
C. 因为二维数组a中第二维大小的值除以初值个数的商为1,故数组a的行数为1
D. 只有数组元素a和a可得到初值0,其余元素均得不到初值0
9.若有说明:int a;则数组a中各元素( )。 (满分:5)
A. 可在程序的运行阶段得到初值0
B. 可在程序的编译阶段得到初值0
C. 不能得到确定的初值
D. 可在程序的编译或运行阶段得到初值0
10.若有以下程序段: …… 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进行选择排序(降序)
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.已知ch是字符型变量,则不正确的赋值语句是( )。 (满分:5)
A. ch=5+9;
B. ch='\0';
C. ch='7'+'9';
D. ch='a+b';
13.若调用fputc函数输出字符成功,则函数的返回值是( )。 (满分:5)
A. 输出的字符
B. -1
C. 0
D. EOF
14.函数调用语句:fseek(fp, 10L, 2);的含义是:将文件位置指针( )。 (满分:5)
A. 移动到距离文件头10个字节处
B. 从当前位置向后移动10个字节
C. 从文件尾部前移10个字节
D. 移到离当前位置10个字节处
15.下面程序段的输出结果是( )。int a=023;printf("%d\n",--a); (满分:5)
A. 23
B. 17
C. 18
D. 24
16.若有说明:int a;则对a数组元素的非法引用是( )。 (满分:5)
A. a
B. a
C. a
D. a
17.以下能正确定义整型变量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;"
18.若使用一维数组名作函数实参,则以下正确的说法是( )。 (满分:5)
A. 必须在主调函数中说明此数组的大小
B. 实参数组类型与形参数组类型可以不匹配
C. 在被调函数中,不需要考虑形参数组的大小
D. 实参数组名与形参数组名必须一致
19.C语言的编译系统对宏命令的处理是( )。 (满分:5)
A. 在对源程序中其它成分正式编译之前进行的
B. 和C程序中的其它语句同时进行的
C. 在程序连接时进行的
D. 在程序运行时进行的
20.以下能对二维数组a进行正确初始化的语句是( )。 (满分:5)
A. int a[]={{1
0
1}
{5
2
3}};
B. int a[]={{1
2
3}
{4
5
6}};
C. int a={{1
2
3}
{4
5}
{6}};
D. int a[]={{1
0
1}
{}
{1
1}};"
16秋学期《高级语言程序设计基础》在线作业2
一、单选题:
1.下面程序段的运行结果是( )。char str="output";printf("\"%s\"\n", str); (满分:5)
A. output
B. "output"
C. \"output\"
D. 编译出错
2.系统的标准输入文件是指( )。 (满分:5)
A. 键盘
B. 显示器
C. 软盘
D. 硬盘
3.以下正确的函数形式是( )。 (满分: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; }"
4.以下正确的描述是( )。 (满分:5)
A. 定义函数时,形参的类型说明可以放在函数体内
B. return后面的值不能为表达式
C. 如果函数值的类型与返回值类型不一致,以函数值类型为准
D. 如果实参与形参的类型不一致,以实参类型为准
5.C语言中字符型(char)数据在内存中的存储形式是( )。 (满分:5)
A. 原码
B. 补码
C. 反码
D. ASCII码
6.若有说明:int a;则数组a中各元素( )。 (满分:5)
A. 可在程序的运行阶段得到初值0
B. 可在程序的编译阶段得到初值0
C. 不能得到确定的初值
D. 可在程序的编译或运行阶段得到初值0
7.若调用fputc函数输出字符成功,则函数的返回值是( )。 (满分:5)
A. 输出的字符
B. -1
C. 0
D. EOF
8.下面程序的运行结果是( )。 char a="abcdef"; char b="ABC"; strcpy(a,b); printf("%c",a); (满分:5)
A. 输出空格
B. \0
C. e
D. f
9.若有说明:int a[]={0,0};则下面不正确的叙述是( )。 (满分:5)
A. 数组a中的每个元素都可得到初值0
B. 二维数组a的第1维大小为1
C. 因为二维数组a中第二维大小的值除以初值个数的商为1,故数组a的行数为1
D. 只有数组元素a和a可得到初值0,其余元素均得不到初值0
10.有下面的程序段 char a,b[]="China"; a=b; printf("%s",a); 则( )。 (满分:5)
A. 运行后将输出China
B. 运行后将输出Ch
C. 运行后将输出Chi
D. 编译时出错
11.执行以下程序后,m的值是( )。 #define MIN(x, y) (x)<(y) ?(x) :(y) main( ) { int i=12, j=8, m; m=10*MIN(i, j); printf("%d\n", m); } (满分:5)
A. 120
B. 80
C. 12
D. 8
12.若有以下语句,则对x数组元素引用不正确的是( )。int x[ ]={1, 2, 3, 4, 5, 6}, *ptr;ptr=x; (满分:5)
A. *(--ptr)
B. *(ptr--)
C. *(ptr++)
D. *(++ptr)
13.当正常执行了文件关闭操作时,fclose函数的返回值是( )。 (满分:5)
A. -1
B. 随机值
C. 0
D. 1
14.以下对C语言中共用体类型数据的叙述正确的是( )。 (满分:5)
A. 可以对共用体变量名直接赋值
B. 一个共用体变量中可以同时存放其所有成员
C. 一个共用体变量中不能同时存放其所有成员
D. 共用体类型定义中不能出现结构体类型的成员
15.若执行fopen函数时发生错误,则函数的返回值是( )。 (满分:5)
A. 随机值
B. 1
C. NULL
D. EOF
16.设有一段程序:int *var,a;a=100;var=&a;a=*var+10; 执行上面程序段后a的值为( )。 (满分:5)
A. 120
B. 110
C. 100
D. 90
17.有字符数组a和b,则正确的输出语句是( )。 (满分:5)
A. puts(a.b);
B. printf("%s
%s"
a[]
b[]);
C. pitchar(a
b);
D. puts(a); puts(b);
18.语句while(!y)中的表达式 !y 等价于( )。 (满分:5)
A. y==0
B. y!=1
C. y!=0
D. y==1
19.以下为一维整型数组a的正确说明是( )。 (满分:5)
A. int a(10);
B. int n=10
a;
C. int n; scanf("%d"
&n); int a;
D. #define SIZE 10;int a;
20.下面程序的输出结果是( )。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
**** Hidden Message *****
页:
[1]