| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1346 人关注过本帖
标题:想了一个周末,还是不会。
只看楼主 加入收藏
sullen
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-3-13
收藏
 问题点数:0 回复次数:17 
想了一个周末,还是不会。

一,求一N维数组,对角线的和。
二,字符串先输入,后倒序输出。
用C++ 语言写。

搜索更多相关主题的帖子: 倒序 对角线 语言 字符 
2006-03-21 19:57
师妃暄
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:805
专家分:107
注 册:2006-3-1
收藏
得分:0 

#include<iostream>
#include<list>

using namespace std;

int main()
{
const MAX=100;
char str[MAX];

cout<<"Enter sentences:";
cin.get(str,MAX);

list<char> theList;

for(int j=0;j<MAX;j++)
theList.push_back( str[j] );

list<char>::reverse_iterator revit;

revit = theList.rbegin();
while( revit != theList.rend() )
cout<<*revit++<<" ";
cout<<endl;

return 0;
}

这个程序可以实现

但有个小问题,就是J循环的最大限制不好限制。我用了MAX所以会出现“?”


有实力才会有魅力 实力来自坚持不懈的努力
2006-03-21 20:42
sullen
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-3-13
收藏
得分:0 
谢谢暄暄,我会好好学习的。

2006-03-21 21:43
surivering
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2005-3-5
收藏
得分:0 

#include<iostream>
#include<string>
using namespace std;
void main()
{
char *p;
int n;
cout<<"How many words do you want to input?";
cin>>n;
p=new char[n];
for(int i=0;i<=n-1;i++)
cin>>p[i];
for(i=n-1;i>=0;i--)
{cout<<p[i];
}

}
这样不用限定最大的数目,想输多少输多少

2006-03-21 22:58
zorro2zzz
Rank: 1
等 级:新手上路
威 望:1
帖 子:96
专家分:0
注 册:2005-9-11
收藏
得分:0 
没有delete?

编程是啥东西,让俺瞧瞧……
2006-03-22 00:58
heliujin
Rank: 2
等 级:论坛游民
帖 子:249
专家分:14
注 册:2006-3-14
收藏
得分:0 
最后应该加一句 delete[]p吧
2006-03-22 08:08
师妃暄
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:805
专家分:107
注 册:2006-3-1
收藏
得分:0 
cout<<"How many words do you want to input?";

这不太好吧?

别人输入一个长句,难道还去数一下多少个字符吗?

这个方面体现不出C++的优势啊

有实力才会有魅力 实力来自坚持不懈的努力
2006-03-22 18:09
师妃暄
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:805
专家分:107
注 册:2006-3-1
收藏
得分:0 
以下是引用sullen在2006-3-21 21:43:00的发言:
谢谢暄暄,我会好好学习的。


有实力才会有魅力 实力来自坚持不懈的努力
2006-03-22 18:11
woodhead
Rank: 3Rank: 3
等 级:新手上路
威 望:9
帖 子:1124
专家分:0
注 册:2005-7-18
收藏
得分:0 

[CODE]#include <iostream>
#include <stack>
using namespace std;
int main()
{
stack<char> a;
char ch;

while((ch=cin.get())!='\n')
a.push(ch);

while(!a.empty())
{
cout<<a.top();
a.pop();
}
system("pause");
return 0;
}[/CODE]


2006-03-22 20:52
linlin
Rank: 1
等 级:新手上路
帖 子:134
专家分:0
注 册:2006-3-14
收藏
得分:0 
借用了楼上的方法,用vector
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<char> a;
char ch;
while((ch=cin.get())!='\n')
a.push_back(ch);
int i=a.size()-1;
while(i)
{
cout<<a[i];
i--;
}
cout<<a[0];
system("pause");
return 0;
}

woyaochengshuyidianle 我真的什么也不会
2006-03-22 21:33
快速回复:想了一个周末,还是不会。
数据加载中...
 
   



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

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