东大17秋学期《高级语言程序设计基础》在线作业11 下载本文

内容发布更新时间 : 2024/5/3 3:16:24星期一 下面是文章的全部内容请认真阅读。

谋学网www.mouxue.com

17秋学期《高级语言程序设计基础》在线作业1

试卷总分:100 得分:95

一、 单选题 (共 20 道试题,共 100 分)

1. 若有说明:char *pc[ ]={\,则以下叙述正确的是( )。 A. *pc[0]代表的是字符串\B. *pc[0]代表的是字符'a' C. pc[0]代表的是字符串\D. pc[0]代表的是字符'a' 满分:5 分

2. 语句while (!y)中的表达式 !y 等价于( )。 A. y==0 B. y!=1 C. y!=0 D. y==1

满分:5 分

3. 若有以下程序段: for (m=1; m<=100; m++) { scanf(\&y); if (y<0) continue; printf(\ }正确的描述是( )。 A. 当y<0时整个循环结束 B. y>=0时什么也不输出 C. printf函数永远也不执行 D. 最多允许输出100个非负整数 满分:5 分

4. 若有以下程序段: …… int a[]={4,0,2,3,1},i,j,t; for(i=1;i<5;i++) { t=a[i];j=i-1; while(j>=0 && t>a[j]) { a[j+1]=a[j];j--;} a[j+1]=t; } …… 则该程序段的功能是( )。

A. 对数组a进行插入排序(升序) B. 对数组a进行插入排序(降序) C. 对数组a进行选择排序(升序) D. 对数组a进行选择排序(降序) 满分:5 分

谋学网www.mouxue.com

5. 执行以下程序段后,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

满分:5 分

6. 若有语句:int a=4, *p=&a;,下面均代表地址的一组选项是( )。 A. a, p, &*a B. *&a, &a, *p C. &a, p, &*p D. *&p, *p, &a\ 满分:5 分

7. 以下正确的说法是( )。

A. 实参和与其对应的形参各占用独立的存储单元 B. 实参和与其对应的形参共占用一个存储单元

C. 只有当实参和与其对应的形参同名时才共用存储单元 D. 形参是虚拟的,不占用存储单元 满分:5 分

8. 若a、b、c均为int型变量,则执行以下程序段后的输出结果为( )。 b=(a=10,a+5,c=10); printf(\

c=(a=10,b=5,a+b);printf(\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 满分:5 分

9. C语言的编译系统对宏命令的处理是( )。 A. 在对源程序中其它成分正式编译之前进行的 B. 和C程序中的其它语句同时进行的 C. 在程序连接时进行的

谋学网www.mouxue.com

D. 在程序运行时进行的 满分:5 分

10. 若有定义:int a[2][3];,则以下对a数组元素地址的正确表示为( )。 A. *(a+1) B. *(a[1]+2) C. a[1]+3 D. a[0][0]

满分:5 分

11. 下面程序段的输出结果是( )。 int a=023;printf(\A. 23 B. 17 C. 18 D. 24

满分:5 分

12. 当正常执行了文件关闭操作时,fclose函数的返回值是( )。 A. -1 B. 随机值 C. 0 D. 1

满分:5 分

13. 设x、y均是int类型变量,且x值为100,则关于以下for循环的正确判断是( )。 for (y=100; x!=y; ++x,y++) printf(\A. 循环体只执行一次 B. 是无限循环

C. 循环体一次都不执行 D. for语句中存在语法错误 满分:5 分

14. 若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为( )。(假设a[0][0]

谋学网www.mouxue.com

位于数组的第一个位置上。) A. i*m+j B. j*m+i C. i*m+j-1 D. i*m+j+1

满分:5 分

15. 下面程序的输出结果为( )。 main( ) { int a=1,b=0; switch(a) { case 1: switch (b) { case 0: printf(\; break; case 1: printf(\; break; } case 2: printf(\; break; }} A. **0**

B. **0****2**

C. **0****1****2** D. 有语法错误 满分:5 分

16. 若有以下说明,并且0≤i<10,则( )是对数组元素的错误引用。int a[]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, *p=a, I; A. *(a+i) B. a[p-a+i] C. p+i

D. *(&a[i])

满分:5 分

17. 如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是( )。 A. 该变量只在该复合语句中有效 B. 该变量在该函数中有效 C. 该变量在本程序范围内有效 D. 该变量为非法变量 满分:5 分

18. 以下程序的运行结果是( )。 # include \main() { struct date { int y,m,d;} today; printf(\;} A. 2 B. 3

谋学网www.mouxue.com

C. 6 D. 出错

满分:5 分

19. 若调用fputc函数输出字符成功,则函数的返回值是( )。 A. 输出的字符 B. -1 C. 0 D. EOF

满分:5 分

20. 当正常执行了文件关闭操作时,fclose函数的返回值是( )。 A. -1 B. 随机值 C. 0 D. 1

满分:5 分