奥鹏易百

 找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

帮助中心知识拓展客服QQ 515224986
查看: 223|回复: 0

东北大学17秋学期《高级语言程序设计基础》在线作业1参考答案

[复制链接]

1万

主题

3

回帖

2万

积分

论坛元老

积分
29086
发表于 2017-9-13 15:56:18 | 显示全部楼层 |阅读模式
扫码加微信
17秋学期《高级语言程序设计基础》在线作业1
一、单选题:【20道,总分:100分】东北大学


1.若有说明:char *pc[ ]={"aaa", "bbb", "ccc", "ddd"};,则以下叙述正确的是(    )。          (满分:5)
    A. *pc[0]代表的是字符串"aaa
    B. *pc[0]代表的是字符'a'
    C. pc[0]代表的是字符串"aaa"
    D. pc[0]代表的是字符'a'
2.语句while(!y)中的表达式 !y 等价于(    )。          (满分:5)
    A. y==0
    B. y!=1
    C. y!=0
    D. y==1
3.若有以下程序段:  for(m=1; m<=100; m++)   { scanf("%d", &y);   if(y<0)   continue;   printf("%3d", m);   }正确的描述是(    )。          (满分:5)
    A. 当y<0时整个循环结束
    B. y>=0时什么也不输出
    C. printf函数永远也不执行
    D. 最多允许输出100个非负整数
4.若有以下程序段: …… 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进行选择排序(降序)
5.执行以下程序段后,y的值是(    )。int a[ ]={1, 3, 5, 7, 9}int x=0, y=1, *ptr;ptr=&a[1];while(!x) { y+=*(ptr+x); x++; }          (满分:5)
    A. 1
    B. 2
    C. 4
    D. 24
6.若有语句:int a=4, *p=&a;,下面均代表地址的一组选项是(    )。          (满分:5)
    A. a, p, &*a
    B. *&a, &a, *p
    C. &a, p, &*p
    D. *&p, *p, &a"
7.以下正确的说法是(    )。          (满分:5)
    A. 实参和与其对应的形参各占用独立的存储单元
    B. 实参和与其对应的形参共占用一个存储单元
    C. 只有当实参和与其对应的形参同名时才共用存储单元
    D. 形参是虚拟的,不占用存储单元
8.若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
9.C语言的编译系统对宏命令的处理是(    )。          (满分:5)
    A. 在对源程序中其它成分正式编译之前进行的
    B. 和C程序中的其它语句同时进行的
    C. 在程序连接时进行的
    D. 在程序运行时进行的
10.若有定义:int a[2][3];,则以下对a数组元素地址的正确表示为(    )。          (满分:5)
    A. *(a+1)
    B. *(a[1]+2)
    C. a[1]+3
    D. a[0][0]
11.下面程序段的输出结果是(    )。int a=023;printf("%d\n",--a);          (满分:5)
    A. 23
    B. 17
    C. 18
    D. 24
12.当正常执行了文件关闭操作时,fclose函数的返回值是(    )。          (满分:5)
    A. -1
    B. 随机值
    C. 0
    D. 1
13.设x、y均是int类型变量,且x值为100,则关于以下for循环的正确判断是(    )。    for(y=100; x!=y; ++x,y++)      printf("****\n");          (满分:5)
    A. 循环体只执行一次
    B. 是无限循环
    C. 循环体一次都不执行
    D. for语句中存在语法错误
14.若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为(    )。(假设a[0][0]位于数组的第一个位置上。)          (满分:5)
    A. i*m+j
    B. j*m+i
    C. i*m+j-1
    D. i*m+j+1
15.下面程序的输出结果为(    )。main(    ){ int a=1,b=0;switch(a){ case 1: switch(b){ case 0: printf("**0**"); break;case 1: printf("**1**");break;}case 2: printf("**2**"); break;}}          (满分:5)
    A. **0**
    B. **0****2**
    C. **0****1****2**
    D. 有语法错误
16.若有以下说明,并且0&le;i<10,则(    )是对数组元素的错误引用。int a[]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, *p=a, I;          (满分:5)
    A. *(a+i)
    B. a[p-a+i]
    C. p+i
    D. *(&a[i])
17.如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是(    )。          (满分:5)
    A. 该变量只在该复合语句中有效
    B. 该变量在该函数中有效
    C. 该变量在本程序范围内有效
    D. 该变量为非法变量
18.以下程序的运行结果是(    )。# include "stdio.h"main(    ){ struct date { int y,m,d;} today; printf("%d\n", sizeof(struct date));}          (满分:5)
    A. 2
    B. 3
    C. 6
    D. 出错
19.若调用fputc函数输出字符成功,则函数的返回值是(    )。          (满分:5)
    A. 输出的字符
    B. -1
    C. 0
    D. EOF
20.当正常执行了文件关闭操作时,fclose函数的返回值是(    )。          (满分:5)
    A. -1
    B. 随机值
    C. 0
    D. 1
本内容由www.openhelp100.com整理发布

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|www.openhelp100.com ( 冀ICP备19026749号-1 )

GMT+8, 2024-11-27 12:55

Powered by openhelp100 X3.5

Copyright © 2001-2024 5u.studio.

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