东大20秋学期《高级语言程序设计基础X》在线平时作业2答案

[复制链接]
发表于 2020-9-13 10:39:20 | 显示全部楼层 |阅读模式
20秋学期《高级语言程序设计基础X》在线平时作业2
1.[单选题] 若有语句:int a=4, *p=&a;,下面均代表地址的一组选项是( )。

    A.a, p, &*a
    B.*&a, &a, *p
    C.&a, p, &*p
    D.*&p, *p, &a"
    答:——C——
2.[单选题] 系统的标准输入文件是指( )。
    A.键盘
    B.显示器
    C.软盘
    D.硬盘
    答:——A——
3.[单选题] 语句while (!y)中的表达式 !y 等价于( )。
    A.y==0
    B.y!=1
    C.y!=0
    D.y==1
    答:——A——
4.[单选题] 若有定义:int x[10], *p=x;,则*(p+5)表示( )。    q761296021更多答案进ap5u.com
    A.数组元素x[5]的地址
    B.数组元素x[5]的值
    C.数组元素x[6]的地址
    D.数组元素x[6]的值
    E.选项内容11
    F.选项内容11
    答:————
5.[单选题] 以下运算正确的程序段是( )。
    A.char str1[]="ABCDE", str2[]="abcdef"; strcpy(str1, str2);
    B.char str[10], *st="abcde"; strcat(str, st);
    C.char *st1="ABCDS", *st2="abcde"; strcat(st1,st2);
    D.char str[10]="", *st="abcde"; strcat(str, st);"
    答:————
6.[单选题] 以下能对一维数组a进行正确初始化的语句是( )。
    A.int a[10]=(0,0,0,0,0);
    B.int a[10]={ };
    C.int a[]={0};
    D.int a[10]=(10*1);
    答:————
7.[单选题] 已知学生记录描述如下,下面对结构体成员"computer"的赋值方式正确的是( )。
struct student
{ int num;
char name[8];
struct
{ float math;
float engl;
float computer;
} mark;} std;
    A.student.computer=84;
    B.mark.computer=84;
    C.std.mark.computer=84;
    D.std.computer=84;
    答:————
8.[单选题] 执行以下程序段后,y的值是( )。
int a[ ]={1, 3, 5, 7, 9}
int x=0, y=1, *ptr;
ptr=&a[1];
while (!x) { y+=*(ptr+x); x++; }
    A.1
    B.2
    C.4
    D.24
    答:————
9.[单选题] 执行以下程序后,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
    答:————
10.[单选题] 在C语言中,整数-8在内存中的存储形式是( )。
    A.1111 1111 1111 1000
    B.1000 0000 0000 1000
    C.0000 0000 0000 1000
    D.1111 1111 1111 0111
    答:————
11.[单选题] 若有说明:char *pc[ ]={"aaa", "bbb", "ccc", "ddd"};,则以下叙述正确的是( )。
    A.*pc[0]代表的是字符串"aaa
    B.*pc[0]代表的是字符'a'
    C.pc[0]代表的是字符串"aaa"
    D.pc[0]代表的是字符'a'
    答:————
12.[单选题] 若执行fopen函数时发生错误,则函数的返回值是( )。
    A.随机值
    B.1
    C.NULL
    D.EOF
    答:————
13.[单选题] 以下正确的定义语句是( )。
    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};
    答:————
14.[单选题] 以下对指针变量的操作中,不正确的是( )。
    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;"
    答:————
15.[单选题] 对以下说明语句的正确理解是( )。 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.因为数组与初值的个数不相同,所以此语句不正确
    答:————
16.[单选题] 若有以下语句,则对x数组元素引用不正确的是( )。
int x[ ]={1, 2, 3, 4, 5, 6}, *ptr;ptr=x;
    A.*(--ptr)
    B.*(ptr--)
    C.*(ptr++)
    D.*(++ptr)
    答:————
17.[单选题] 定义如下变量和数组:int k;
int a[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是( )。for(k=0;k<3;k++) printf("%d",a[k][2-k]);
    A.3 5 7
    B.3 6 9
    C.1 5 9
    D.1 4 7
    答:————
18.[单选题] 下面程序段的输出结果是( )。
int a=023;printf("%d\n",--a);
    A.23
    B.17
    C.18
    D.24
    答:————
19.[单选题] 若有定义:int a[2][3];,则以下对a数组元素地址的正确表示为( )。
    A.*(a+1)
    B.*(a[1]+2)
    C.a[1]+3
    D.a[0][0]
    答:————
20.[单选题] 若执行下述程序时从键盘输入3 4,则输出结果是( )。#include main( ) { int a,b,s;  scanf("%d%d",&a,&b); s=a;  if (a               
    A.186
    B.256
    C.324
    D.400
    答:————
21.[单选题] 若有定义: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
    答:————
22.[单选题] 以下不正确的定义语句是( )。
    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'};"
    答:————
23.[单选题] 下面程序的运行结果是( )。
main()
{ struct cmplx { int x;
int y;
} cm[2]={1,2,3,4};
printf("%d\n", 2*cm[0].x+
cm[1].y/cm[0].y);}
    A.5
    B.2
    C.3
    D.4
    答:————
24.[单选题] 如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是( )。
    A.该变量只在该复合语句中有效
    B.该变量在该函数中有效
    C.该变量在本程序范围内有效
    D.该变量为非法变量
    答:————
25.[单选题] 有字符数组a[80]和b[80],则正确的输出语句是( )。
    A.puts(a.b);
    B.printf("%s,%s",a[],b[]);
    C.pitchar(a,b);
    D.puts(a); puts(b);
    答:————

附件是东大答案,核对题目下载

东大20秋学期《高级语言程序设计基础X》在线平时作业2.zip

2.73 KB, 下载次数: 3, 下载积分: 贡献 1

售价: 2 金币  [记录]

答案参考

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