试题与答案

有如下程序: #include<iostream> using namespac

题型:单项选择题

题目:

有如下程序:
#include<iostream>
using namespace std;
int main()
int a[6]=23, 15, 64, 33, 40, 58;
int s1, s2;
s1, s2=a[0];
for(int*p=a+1; p<a+6; p++)
if(s1>*p)s1=*p;
if(s2<*p)s2=*p;

cout<<s1+s2<<end1;
return 0;

运行时的输出结果是( )。

A.23

B.58

C.64

D.79

答案:

参考答案:D

解析: 变量s1和s2的初值都等于23,那么在执行第一次for循环时,*p的值等于15,它小于23,所以把15赋给变量s1;执行第二次for循环时,*p的值等于64,它大于23,所以把64赋给变量s2;而数组a中a[2]后面的元素的值都大于15,小于64,因而变量s1,s2的值不会再发生变化,最终值为15+6=79,所以程序输出79。

试题推荐
题型:选择题

从四川地震救灾中某些人士亲自送钱物到灾民手中,到三鹿毒奶粉案,似乎都在意示着中国社会诚信的渐渐丧失。社会主义思想道德建设之所以要以诚实守信为重点,是因为  

①诚实守信是中 * * 的传统美德  

②诚实守信是社会主义公民道德的内在要求  

③诚实守信是现代市场经济的基本道德要求  

④诚实守信是改善我国当前信用状况的现实需要  

A  ①②   B  ①③④   C   ②④   D ①②③④  

查看答案
微信公众账号搜索答案