标题:[求助]关于c++程序的几点问题
取消只看楼主
天使坠落的眼泪
Rank: 2
等 级:新手上路
威 望:5
帖 子:204
专家分:0
注 册:2006-5-16
 问题点数:0 回复次数:0 
[求助]关于c++程序的几点问题

1这个程序在VC中运行的时候
#include<iostream.h>
#include<iomanip.h>
int main()
{
int a[10],tmp;
for(int i=0;i<=9;i++)
cin>>a[i];
for(int j=0;j<9;j++){
for(int k=9;k>j;k--){
if(a[k]<a[k-1]){
tmp=a[k];
a[k]=a[k-1];
a[k-1]=tmp;
}
}
}
for(int n=0;n<=9;n++)
cout<<setw(5)<<a[n];
return 0;
}

#include<iostream.h>
#include<iomanip.h>
int main()
{
int a[10],tmp;
for(int i=0;i<=9;i++)
cin>>a[i];
for(int j=0;j<9;j++){
for(int k=9;k>0;k--){
if(a[k]<a[k-1]){
tmp=a[k];
a[k]=a[k-1];
a[k-1]=tmp;
}
}
}
for(int n=0;n<=9;n++)
cout<<setw(5)<<a[n];
return 0;
}

为什么第一个程序可以得到正确的结果,而第二个则不行?两个程序只是在颜色不同的地方有差别.

2#include<iostream.h>

void change(char *, const char **);
int main()
{
char string[10];
const char *data[]={"Jan","Feb","Mar","Apr","may","Jun","Jul","Aug","Sep","Oct","Nov","Dec"};
cout<<"Enter the data,like04/21/55"<<endl;
cin>>string;
change(string,data);
return 0;
}

void change(char *string2, const char** string3)
{

char *s;
const char **m;
int i;
s=string2;
m=string3;


i=(s[0]-48)*10+s[1]-48;

cout<<m[i-1]<<" "<<s[3]<<s[4]<<","<<" "<<"19"<<s[6]<<s[7]<<endl;
}

这个程序中,由数组转的时候为什么减的是48?是地址的运算么?

3当class定义之后,什么情况下用
Increment::Inrement(int c,int i)
: increment(i)

{ cout=c;}这种格式初始化?
 
  increment(i) 是将i的值付给increment,而incement(a,b)是什么含义呢?

搜索更多相关主题的帖子: int include tmp 
2006-05-25 08:42



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-66947-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.225716 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved