|
17秋学期《高级语言程序设计基础》在线作业3
一、单选题:【20道,总分:100分】东北大学
1.设ch是char类型变量,其值是A,则表达式ch=(ch>='A'&&ch<='Z')?(ch+32):ch的值是( )。 (满分:5)
A. Z
B. A
C. a
D. z
2.当正常执行了文件关闭操作时,fclose函数的返回值是( )。 (满分:5)
A. -1
B. 随机值
C. 0
D. 1
3.若用fopen打开一个新的二进制文件,要求文件既能读又能写,则应选用的文件方式字符串是( )。 (满分:5)
A. "wb+
B. "r+"
C. "rb+"
D. "ab+""
4.以下对二维数组a的正确说明是( )。 (满分:5)
A. int a[3][];
B. float a(3,4);
C. double a[1][4]
D. float a(3)(4);
5.以下不正确的定义语句是( )。 (满分:5)
A. double x[5]={2.0,4,0,6,0,8,0,10.0};
B. int y[5]={0,1,3,5,7,9};
C. char c1[]={'1','2','3','4','5'};
D. char c2[]={'\x10','\xa','\x8'};"
6.函数rewind(fp)的作用是:使文件位置指针( )。 (满分:5)
A. 重新返回文件的开头
B. 返回到前一个字符的位置
C. 指向文件的末尾
D. 自动移至下一个字符的位置
7.设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
8.以下程序的运行结果是( )。 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
9.以下对指针变量的操作中,不正确的是( )。 (满分:5)
A. int p, *q; q=&p;
B. int *p, *q; q=p=NULL;
C. int a=5, *p; *p=a;
D. int a=5, *p=&a, *q=&a; *p=*q;"
10.下面程序的运行结果是( )。 char a[7]="abcdef"; char b[4]="ABC"; strcpy(a,b); printf("%c",a[5]); (满分:5)
A. 输出空格
B. \0
C. e
D. f
11.C语言程序从main( )函数开始执行,所以这个函数要写在( )。 (满分:5)
A. 程序文件的开始
B. 程序文件的最后
C. 它所调用的函数的前面
D. 程序文件的任何位置
12.当定义一个结构体变量时系统分配给它的内存是( )。 (满分:5)
A. 结构中第一个成员所需的内存量
B. 结构中最后一个成员所需的内存量
C. 结构体成员中占内存量最大者所需的容量
D. 结构体中各成员所需内存量的总和
13.若有以下程序段: …… int a[]={4,0,2,3,1},i,j,t; for(i=1;i=0 && t>a[j]) { a[j+1]=a[j];j--;} a[j+1]=t; } …… 则该程序段的功能是( )。 (满分:5)
A. 对数组a进行插入排序(升序)
B. 对数组a进行插入排序(降序)
C. 对数组a进行选择排序(升序)
D. 对数组a进行选择排序(降序)
14.若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为( )。(假设a[0][0]位于数组的第1个位置上) (满分:5)
A. i*m+j
B. j*m+i
C. i*m+j-1
D. i*m+j+1
15.下面程序的运行结果是( )。void prt(int *a){ printf(“%d\n”,++*a);}main( ){ int b=25; prt(&b);} (满分:5)
A. 24
B. 25
C. 26
D. 27
16.系统的标准输入文件是指( )。 (满分:5)
A. 键盘
B. 显示器
C. 软盘
D. 硬盘
17.下面程序( )。(每行程序前的数字为行号) 1 main{} 2 { 3 float a[10]={0.0}; 4 int i; 5 for(i=0;i<3;i++) scanf(%d",&a[i]); 6 for(i=1;i<10;i++) a[0]=a[0]+a[i]; 7 printf("%f\n",a[0]); 8 } (满分:5)
A. 没有错误
B. 第3行有错误
C. 第5行有错误
D. 第7行有错误
18.以下程序的输出结果是( )。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
19.C语言中字符型(char)数据在内存中的存储形式是( )。 (满分:5)
A. 原码
B. 补码
C. 反码
D. ASCII码
20.在C语言中,整数-8在内存中的存储形式是( )。 (满分:5)
A. 1111 1111 1111 1000
B. 1000 0000 0000 1000
C. 0000 0000 0000 1000
D. 1111 1111 1111 0111
本内容由www.openhelp100.com整理发布
|
|