正确答案: A
-1
题目:下面程序的输出结果是 #include <stdio.h> main(){ int i=2; printf("%d",f(i,i+1) ); } int f(int a,int b) { int c; c=a; if(a>b) c=1; else if(a==b) c=0; else c=-1; return(c);}
解析:这道题的求解方法比较简单,将i的值带入函数f(),可以发现在if判断语句中,第一次判断为假,而在else语句中的第二个判断亦为假,所以,c的值应当等于-1,最后打印结果为“-1”。
查看原题
举一反三的答案和解析:
[单选题]以下关于菜单的叙述中,错误的是______。
如果把一个菜单项的Enabled属性设置为False,则可删除该菜单项
解析:解析:Enabled属性用于设置菜单项是否可用,当该属性设置为False时,并不是将该菜单项删除,虽然用户可以看到变灰的菜单项,但却不能单击它。而Visible属性才是设置菜单项是否可见的,当该属性设置为False时,用户看不到该菜单项,即“删除”该菜单项。弹出式菜单和下拉式菜单的定义方式相同,但弹出式菜单需要调用PopupMenu方法才能弹出菜单。
[单选题]有如下程序: #includeiostream> using namespace std; class C1{ public: ~Cl( ){cout1;} }; class C2:public C1{ public: ~C2( ){cout2;} }; int main( ){ C2 cb2; C1*cb1: return 0; } 程序的输出结果是
21
解析:解析:对象的派生撤销时,先调用派生类析构函数,然后调用基类析构函数,故答案为B。
[单选题]若有以下定义和语句,则输出结果是(口代表空格)______。char s[10]; s="abcd"; printf("%s\n",s);
编译不通过
[单选题]设变量均已正确定义,若要通过scanf("%d%c%d%c",&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式正确的是(注:□代表空格字符)( )。
10X<回车> 20□Y<回车> 20Y<回车>
解析:解析:当从键盘输入字符,并且在格式说明中未制定宽度时,输入字符(包括空格符、回车符、Tab符)将按顺序赋予各输入项。也就是说,输入字符之间没有间隔符,所以选项D是正确的。
[单选题]有以下程序includemain(){charc1='1',c2='2';c1=getchar();c2=getchar();putchar(c1)
有以下程序#includestdio. h>main(){ char c1='1',c2='2'; c1=getchar(); c2=getchar(); putchar(c1); putchar(c2);} 当运行时输入:a回车> 后,以下叙述正确的是
变量c1被赋予字符a,c2被赋予回车符
解析:解析:本题考查的是getchar()函数。getchar()函数执行时将从键盘缓冲区中读取用户的输入,而不管输入的是否可打印字符,所以当输入a<回车>后,键盘缓冲区被输入的实际上是两个字符:'a'和'\n'。故选项A的说法是正确的。
[单选题]假定窗体的名称为Form1,对该窗体编写如下代码: Private Sub Form_Load() Form1.Caption="计算机" Me.Caption="等级" Caption="考试" End Sub 程序运行后,窗体的标题是
考试
解析:解析:Form.Load是程序运行后首先要执行的事件过程。在上面的事件过程中,有3个赋值语句,这3个语句都用来对对象赋值,即对对象的Caption属性赋值,它们都可以设置窗体的标题。第1个语句将窗体的标题设置为“计算机”,执行第2个语句后,窗体的标题变为“等级”,而执行第3个语句后,窗体的标题变为“考试”。
[单选题]阅读下面程序importjava.io.*;publicclassTypeTransition{publicstaticvoidmain(Stringargs[]){chara='h';iNti=100;intj=97;intaa=a+i;System.out.println("aa="+aa);charbb=(char)j;System.out.println("bb="+bb);}}如果输出结果的第二行为bb=a,奸么第一行的输出是()。
aa=204
[单选题]每个日期/时间字段需要( )个字节的存储空间。
8
解析:解析:本题考查日期/时间数据类型的知识。日期/时间数据类型是用来存储日期、时间或日期时间组合的,每个日期/时间字段需要8个字节的存储空间。