上海海事大学511c语言编程,2016年上海海事大学商船学院511C语言编程复试笔试最后押题五套卷...

这篇博客主要涉及C语言的基础知识,包括选择题解析和程序设计。内容涵盖关键字的使用、结构体指针访问、赋值语句的正确形式、输入输出函数的理解以及条件判断在程序中的应用。通过实例分析了程序的执行流程和错误原因,帮助读者巩固C语言的基本概念和编程技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、选择题

1. 有定义语句

A. B. C. D.

答:C 以下选项中与此语句等价的是( )。

【解析】定义指针数组的格式为

2. 有如下定义:

因为[]的优先级高于因此等价于而D

中定义的是数组指针变量,指针p 指向含有四个整型元素的数组。

以下对内嵌结构体成员的引用形式错误的是( )。

答:A

【解析】使用结构体指针对结构体成员进行访问时,形式为结构指针名->结构成员名,或者(*结构指针名). 结构成员名,题目中ps 为结构体指针,A 项错误。

3. 阅读以下程序:

该程序在编译时产生错误,其出错原因是( )。

A. 定义语句出错,case 是关键字,不能用作用户自定义标识符

B. 定义语句出错,printF 不能用作用户自定义标识符

C. 定义语句无错,scanf 不能作为输入函数使用

D. 定义语句无错,printf 不能输出case 的值

答:A

【解析】在C 语言中,关键字又称保留字,它是系统预先定义的,具有特定含义的标识符,

故不允许用户重新定义。case 为C 语言中的关键字,因此用户不能再定义标识符为case 的变量。

4. 设a , b ,c 是整型变量且均已赋值,则以下选项中错误的赋值语句是( )。

A.a=(b=3)=1;

B.a=(b=2)+c;

C.a=b=c+10;

D.a=l+(b=c=2):

答:A

【解析】赋值运算结合性为由右向左结合,赋值运算符左值为变量,右值为变量或常量,且左右两边数据类型相同才能实现赋值。A 项中,赋值运算(b=3)=1, 左值为表达式,不是变量不能被赋值,A 项错误。B 项运算过程为,先赋值b=2, 再计算b+c,将结果赋给a ,是正确的赋值语句。C 项运算过程为,先计算c+10将结果赋给b , 再将b 赋给a ,是正确的赋值语句。D 项运算过程为,先将2赋给c , 再将c 赋给b , 然后计算1+b, 将结果赋给a , 是正确的赋值语句。

5. 有以下程序:

若运行时输入:35〈回车>,则输出结果是( )。

A.123

B.2

C.3

D.1

答:D

【解析】程序执行过程为:输入35, scanf 函数从键盘读人35赋值给x=35, 对if 条件进行判断,35>10, 条件成立,输出1,不再执行下面的elseif 语句,程序结束,输出结果为1, 故D 选项正确。

6. 有以下程序段,若变量已正确定义并赋值( )。

则与此程序段功能相同的选项是( )。

答:A

【解析】程序段执行过程为:如果a>b,输出x ,否则输出y ; 如果a<=b,i 加1,否则j 加1。A 项如果a>b,A 项正确。B 项如果a>b,输出x 且j 加1, 否则输出y 且i 加1, 与题目中功能相同,

输出x 且i 加1,否则输出y 且j 加1,与题目中功能不相同,B 项错误。C 项如果a<=b,输出x

C 项错误。D 项判断条件为a>=b,且i 加1,否则输出y 且j 加1,与题目中功能不相同,多了a=b,

D 项错误。

7. 有以下程序:

程序运行后的输出结果是( )。

A. B. C. D.

答:D

while 函数判断p 指针指向地址的内容是否和a 指针指向地址的内容相等,【解析】如果不是,

则移动指针p+1, 当p 指向*b字符串中的时,和首地址元素相等,退出while 语句后,p 再向

输出及剩余的字符串,D 项正确。 右移动a 字符串长度+1个单位地址,此时p 指向

的表达式是( )。

8. 若在程序中变量均已定义成int 类型,且已赋大于1的值,则下列选项中能正确表示代数式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值