东大21秋《高级语言程序设计基础X》在线平时作业2【标准答案】

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2021-10-14 10:38

《高级语言程序设计基础X》在线平时作业2 试卷总分:100 得分:100 一、单选题 (共 25 道试题,共 100 分) 1.以下程序段的运行结果是( )。 char a[ ]=program, *p; p=a; while (*p!=g) { printf(%c, *p-32);
《高级语言程序设计基础X》在线平时作业2
试卷总分:100  得分:100
一、单选题 (共 25 道试题,共 100 分)
1.以下程序段的运行结果是( )。 char a[ ]="program", *p; p=a; while (*p!='g')   { printf("%c", *p-32); p++; }
A.PROgram
B.PROGRAM
C.PRO
D.proGRAM
 
2.已知intx=10,y=20,z=30;以下语句执行后x,y,z的值是( )。if(x>y)z=x;x=y;y=z;
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"
 
3.当说明一个共用体变量时系统分配给它的内存是( )。
A.共用体中第一个成员所需内存量
B.共用体中最后一个成员所需内存量
C.共用体成员中占内存量最大者所需的容量
D.共用体中各成员所需内存量的总和
 
4.以下对二维数组a的正确说明是( )。
A.int a[3][];
B.float a(3,4);
C.double a[1][4]
D.float a(3)(4);
 
5.若有说明:int a[][3]={1,2,3,4,5,6,7};则数组a第一维的大小是( )。
A.2
B.3
C.4
D.无确定值
 
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;"
 
7.以下程序段的执行结果是( )。     int x=-3;     do      { printf("%d\n", x++);     }while(!x);
A.-3
B.-2
C.-1
D.陷入死循环
 
8.有下面的程序段 char a[3],b[]="China"; a=b; printf("%s",a); 则( )。
A.运行后将输出China
B.运行后将输出Ch
C.运行后将输出Chi
D.编译时出错
 
9.下面程序段的输出结果是( )。 int a=023;printf("%d\n",--a);
A.23
B.17
C.18
D.24
 
10.在C语言中,一维数组的定义方式为:类型说明符 数组名( )。
A.[常量表达式]
B.[整型表达式]
C.[整型常量或整型表达式]
D.[整型常量]
 
11.若有以下程序段:   for (m=1; m<=100; m++)    { scanf("%d", &y);    if (y<0)    continue;    printf("%3d", m);    }正确的描述是( )。
A.当y<0时整个循环结束
B.y>=0时什么也不输出
C.printf函数永远也不执行
D.最多允许输出100个非负整数
 
12.设c1、c2均是char类型变量,则以下不正确的函数调用是( )。
A.scanf("c1=%cc2=%c",&c1,&c2);
B.getchar( )
C.putchar(c2);
D.putchar(c1,c2)"
 
13.若a为int类型变量,则执行以下程序段后a的值为( )。 a=5;a*=a/=a++;
A.2
B.1
C.40
D.3
 
14.如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是( )。
A.该变量只在该复合语句中有效
B.该变量在该函数中有效
C.该变量在本程序范围内有效
D.该变量为非法变量
 
15.若有定义:int x[10], *p=x;,则*(p+5)表示( )。
A.数组元素x[5]的地址
B.数组元素x[5]的值
C.数组元素x[6]的地址
D.数组元素x[6]的值
E.选项内容11
F.选项内容11
G.选项内容11
 
16.设有定义:int a=1, *p=&a; float b=2.0; char c='A'; ,以下不合法的运算是( )。
A.p++;
B.a--;
C.b++;
D.c--;
 
17.若二维数组a有m列,则在a[i][j]前的元素个数为( )。
A.j*m+i
B.i*m+j
C.i*m+j-1
D.i*m+j+1
 
18.C语言结构体类型变量在程序执行期间( )。
A.所有成员一直驻留在内存中
B.只有一个成员驻留在内存中
C.部分成员驻留在内存中
D.没有成员驻留在内存中
 
19.若执行下述程序时从键盘输入3 4,则输出结果是( )。
#include main( ) { int a,b,s;  
scanf("%d%d",&a,&b);
 s=a;  if (a<b)  printf("%d\n",s*s); s=b;  }
A.186
B.256
C.324
D.400
 
20.下程序( )。     main( )    { int x1=3, x2=0, x3=0;       if (x1=x2+x3) printf("* * * *"); else printf("# # # #");    }
A.输出:* * * *
B.输出:# # #
C.#存在语法错误
D.无输出结果
 
21.若有定义:int x[10], *p=x;,则*(p+5)表示( )。
A.数组元素x[5]的地址
B.数组元素x[5]的值
C.数组元素x[6]的地址
D.数组元素x[6]的值
E.选项内容11
F.选项内容11
 
22.执行以下程序后,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);  }
A.120
B.80
C.12
D.8
 
23.若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为( )。(假设a[0][0]位于数组的第一个位置上。)
A.i*m+j
B.j*m+i
C.i*m+j-1
D.i*m+j+1
 
24.以下能正确读入字符串的程序段是( )。
A.char *p; scanf("%s", p);
B.char str[10]; scanf("%s", &str);
C.char str[10], *p; p=str; scanf("%s", p);
D.char str[10], *p=str; scanf("%s", p[1]);"
 
25.以下对指针变量的操作中,不正确的是( )。
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;"
 
Tag:  

作业咨询:
点击这里给我发消息

论文咨询:
点击这里给我发消息

合作加盟:
点击这里给我发消息

服务时间:
8:30-24:00(工作日)