2017年北京市培养单位高能物理研究所864程序设计[专业硕士]考研仿真模拟题
● 摘要
一、选择题
1. 有以下程序:
程序的运行结果是( )。
A.D
B.C
C.B
D.A
【答案】A
【解析】A 项正确,main ( )函数中,首先判断条件x>l,因为x=l不大于1,不满足条件,程序跳入else 语句判定z 2. 有以下程序 程序的运行结果是( )。 【答案】D 【解析】首先用函数的方式开打文件然后调用两次fwrite 函数将数组a 的5个元素,依次输出到文件fp 中,共10个字节,关闭文件。再次打开文件,使用文件指针指向文件的开头,调用fread 函数从文件中读取这10个字节的数据到数组a 中。 3. 若函数中有定义语句intk ;,则( )。 A. 系统将自动给k 赋初值0 B. 这时k 中的值无定义 C. 系统将自动给k 赋初值-1 D. 这时k 中无任何值 【答案】B 【解析】intk ;这条语句是定义一个整型变量k ,这是动态定义,编译程序仅为k 开辟存储单元,而没有在存储单元中存放任何初值,此时变量中的值时无意义的。若是静态定义,则会自动初始化,其默认值为0。 4. 有以下程序 程序运行后的输出结果是( )。 A.0 B. 随机值 C.15 D.16 【答案】B 【解析】sum 作为局部变量,没有显式初始化,sum 值代表原来内存中存储的对象,不可预知,程序结果是随机值。 5. 有以下程序段:入字母A 、B 、C , 则以下对输入形式的描述正确的是( )。 A. 字母A 、B 、C 之问可以用空格分隔 B. 字母A 、B 、C 之间不能有分隔符 C. 字母A 、B 、C 之间可以用回车符分隔 D. 字母A 、B 、C 之间可以用Tab 键分隔 【答案】B 【解析】在使用scanf 函数时要注意,在用格式输入字符时,分隔符(空格符、制表符 若要给分别输 (Tab 键)、回车符)和转义字符都将作为有效字符进行输入。题目中要求以字符形式输入三个数据,空格、回车符、Tab 键均会被视为有效字符赋给对应变量,所以字母A 、B 、C 之间不能有分隔符,故B 选项正确。 6. 有以下程序: 程序的运行结果是。(口代表一个空格) A.10,12,a B. □□0,012,a C.010,12,a D. □□10,12,a 【答案】D 【解析】%4d 表示先输出十进制,共占4个字符,而10已占2个字符,故先输出2个空格,然后输出10; %0表示输出八进制,10的八进制为12; 表示输出十六进制,即a 。 7. 若以下选项中的变量全部为整型变量,且已正确定义并赋值,则语法正确的switch 语句是( )。 【答案】D 【解析】A 项错误,case 后面的应该为整形或字符型常量;B 项错误,switch 后面的表达式需要在括号内;C 项错误,case 和后面的常量表达式应该由空格隔开。