找回密码
 注册
搜索
热搜: 回贴
  • 前程无忧官网首页 有什么好的平台可以
  • 最新的销售平台 互联网营销的平台有哪
  • 制作网页的基本流程 网页制作和网页设
  • 【帝国CMS】输出带序号的列表(数字排
  • 网站建设公司 三一,中联,极东泵车的
  • 织梦 建站 织梦网站模版后台怎么更改
  • 云服务官网 哪些网站有免费的简历模板
  • 如何建网站要什么条件 建网站要用什么
  • 吉林市移动公司电话 吉林省退休人员网
  • 设计类毕业论文 网站设计与实现毕业论
查看: 2128|回复: 9

[求助]这几个程序谁能讲解一下……?

[复制链接]
发表于 2009-11-2 01:16:52 | 显示全部楼层 |阅读模式 IP:江苏扬州
#include <iostream.h>
int i;
main()
{ i=5;
{ int i;
i=7;
::i=3; cout <<”i=”<<i<<endl;
}
cout <<”i=”<<i<<endl;
}
为什么答案是i=7
i=3

#include<iostream.h>
#include<string.h>
void main()
{ char *a[5]={ “sofa”,”chair”,”bed”,”table”,”desk”},*r;
r=a[0];
for(int i=1;i<5;i++)
if(strcmp(r,a[i])>0)r=a[i];
cout<<r<<endl;
}
答案是bed……怎么来的

#include <iostream.h>
void main( )
{char str[ ]=”1234567”;
int i;
for(i=0; i<7; i+=3)
cout<< str+i<<endl;
}
这段里的str+i……怎么说的啊?


还有……这段程序能不能详细讲一下,我一点也看不懂
#include <iostream.h>
class Point
{public:
Point(int x, int y){ _x=x;y=y;}
Point(char x, char y){ _x=x;y=y;}
void Display() {cout << ”(” << _x << ”, ” << _y << ”)” << endl;}
protected:
int _x, _y;
};
void main()
{
Point a(1, 2);
Point b(‘a’,’b’);

a.Display();
b.Display();
}



暂时就这些问题…………
发表于 2009-11-2 01:16:55 | 显示全部楼层 IP:江苏扬州
第1题考察对变量生存周期的理解.
逐句分析:
#include <iostream.h>
int i; //全局, 整个程序期间生存, 标记为i1
main()
{ i=5; //修改i1=5
{ int i; //局部, 括号内生存, 标记为i2, i2 != i1
i=7; //修改i2=7
::i=3; //修改i1=3, 因为使用了:: 相当于使用了当前程序的命名空间
cout <<”i=”<<i<<endl; //局部, 打印i2, i2=7
}
cout <<”i=”<<i<<endl; //全局, 打印i1, i1=3
}
回复

使用道具 举报

发表于 2009-11-2 01:16:58 | 显示全部楼层 IP:江苏扬州
第2题考察对指针数组的理解
利用r指针指向目标字符串, 并分别与其他4个字符串比较, 令r指向字母顺序靠前的那个串(用strcmp)
这样, 最后得到的是按字母顺序排列最小的那个串, 即"bed" (b字母最靠前)
回复

使用道具 举报

发表于 2009-11-2 01:17:02 | 显示全部楼层 IP:江苏扬州
第3题考察数组名与指针的关系

数组名称是一个指向数组第1个元素的指针, 题中str[]是char型数组, str单独使用相当于char* str, 是个指针.
str + i 就是让str指针向后移动了i个元素,
所以第一次i==0, 没有移动, str指向"1", 所以输出"1234567"
第2次i==3, 移动了3个, str指向"4", 所以输出"4567"
第3次i==6, 移动6个, str指向"7", 所以输出"7"
回复

使用道具 举报

发表于 2009-11-2 01:17:07 | 显示全部楼层 IP:江苏扬州
第4题考察类的基本概念...

class Point句声明了类Point
public表示以下内容可以在其他函数中调用
与Point同名的Point()函数叫构造函数, 系统自动调用
下面还有一个Point(), 这叫重载(Overload), 根据函数参数的不同, 编译器自动选择相应的Point()调用.
Display()叫成员函数, 也叫方法
private表示以下内容只能在类里使用, 其他地方不能调用
int _x, _y叫成员变量, 也叫成员.
结束的时候用}; 不要漏了分号

main中利用Point类定义了2个Point对象(a和b), 带参数是使用了构造函数进行初始化(系统自动调用的,所以不用写成a.Point())
a.Display调用了在Point类中定义的Display方法.

大哥, 你一点也看不懂?.. 拜托你多看看书...
回复

使用道具 举报

发表于 2009-11-2 01:17:14 | 显示全部楼层 IP:江苏扬州
…………那个程序确实一点也看不懂  总之谢谢你了的说   我先看看书
回复

使用道具 举报

发表于 2009-11-2 01:17:18 | 显示全部楼层 IP:江苏扬州
多看书.. 多做练习.. 加油
回复

使用道具 举报

发表于 2009-11-2 01:17:22 | 显示全部楼层 IP:江苏扬州
天哪,为什么
你们都知道得这么多。。。。
羡慕ing。。。。
回复

使用道具 举报

发表于 2009-11-2 01:17:26 | 显示全部楼层 IP:江苏扬州
void Display() {cout << ”(” << _x << ”, ” << _y << ”)” << endl;}

这样是在声明函数的同时定义函数吗?

我看书上一般是先声名再定义的.
void Display();

void Display()
{
cout << ”(” << _x << ”, ” << _y << ”)” << endl;
}
回复

使用道具 举报

发表于 2009-11-2 01:17:28 | 显示全部楼层 IP:江苏扬州
To cclearner
这些是比较基础的原理, 慢慢来, 你也能精通

To realnaoko
没错, 你的理解是正确的.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )

GMT+8, 2024-9-29 13:18 , Processed in 0.329902 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表