一、选择题
1. 有如下程序:
程序运行后的输出结果是( )。
答:C
【解析】题目中判断if 条件是否成立,
后a 自增 得if 条件不成立执行else 函数体,输出F 。最后执行语句故C 选项正确。 按照格式输出
2. 有如下程序:
先取值为0, 则为0, 且不计算,而
程序运行后的输出结果是( )。
A.NAME0
B.NAMEE
C.NAME D.
答:A
【解析】程序执行过程为:调用函数disp ,将字符串“NAME”首地址传给指针str , 在while 循环中,依次
判断字符串中字符是否为
时,结束循环,返回字符NAME0。
3. 有以下程序:
程序运行后的输出结果是( )。
A.3,5
B.7,7
C.5,7
D.3,7
答:D
【解析】函数f ( )的功能是定义一个整型的指针变量s ,指向全局变量k ,然后修改S 指向地址中的值为7,因此f ( )函数只是修改全局变量k 的值为7,与main ( )函数中临时变量m 无关,因此最后输出为3,7。
4. 有以下程序:
程序运行后的输出结果是( )。
A.20045537
B.20044550
C.20042580
不是的则输出字符,
否则结束循环。当码0, 并输出。程序运行后的输出结果是:
D.20041703
答:D
【解析】把结构体变量作为一个参数传递给函数时,传递的是实参结构体变量的值,系统给结构体类型的形参开辟相应的内存空间,并把实参中各成员的值赋给对应的形参成员。所以改变形参变量的内容对实参不会有任何影响。因此本题的函数f ( )对结构体s[0]没做改动,结果还是20041703。
5. 若有定义语句:A. B. C. D.
答:A 且则错误的赋值是( )。
【解析】二维数组名是指向指针的指针,故a 和q 都为指向指针的指针,而p 为指向int 类型的指针。A 项,将一个指向int 类型的指针指向一个指针的指针。
6. 有以下程序:
程序运行后的输出结果是( )。
A.0
B.1
C.2
D.3
答:C
【解析】“++”和“一”运算,当以前缀形式出现时,贝U 先进行加一或减一操作,再取值,当以后缀形式出现时,则先取值,再进行加一或减一操作。a 初始定义为1,b 为0,先执行--a ,结果为0,即if 判断为假,执行b+=2; ,然后输出b 的值。即b 为2。
7. 有以下程序