读书人

初学者了阿.逆序的有关问题

发布时间: 2012-02-06 15:52:44 作者: rapoo

菜鸟求助了阿.逆序的问题
刚接触C++,遇到个问题,知道很简单,但还请高手们帮帮
题目:要求1:能将输入的字母逆向输出
要求2:将输入的浮点数也逆向输出
~拜托大家了

[解决办法]
存入数组or vector,然后反向输入就可以了啊
我也很菜,呵呵
[解决办法]
#include <iostream>
using namespace std;


int _tmain(int argc, _TCHAR* argv[])
{

float num[100];

float n = 0;
int count = 0;
while (cin > > n )
{
num[count] = n;
count++;
}
for(int i = count-1; i > -1; i--)
{
cout < < num[i] < <endl;
}

return 0;
}

用vector会更好
[解决办法]
第一个要求

void main()
{
char temp;
char str2[10];
cin> > str2;
int len2=strlen(str2);
for(int i=0;i <len2/2;i++)
{
temp=str2[i];
str2[i]=str2[len2-1-i];
str2[len2-1-i]=temp;
}
cout < <str2 < <endl;
}
[解决办法]
第二个要求


void main()
{
char str[20];
double a;
cin> > a;
sprintf(str, "%f ",a);
int len=strlen(str);
char temp;

for(int i=0;i <len/2;i++)
{
temp=str[i];
str[i]=str[len-1-i];
str[len-1-i]=temp;
}
cout < <str < <endl;
}
[解决办法]
另外也可以调用库函数gcvt来实现

#include <stdlib.h>
#include <stdio.h>
void main()
{
char str[10];
double a;
int sig;
cout < < "输入要转化的数 " < <endl;
cin> > a;
cout < < "输入转化精度 " < <endl;
cin> > sig;
gcvt(a,sig,str);
int len=strlen(str);
char temp;

for(int i=0;i <len/2;i++)
{
temp=str[i];
str[i]=str[len-1-i];
str[len-1-i]=temp;
}
cout < < "转化后为: " < <str < <endl;
}
[解决办法]
用 函数模板 在函数里面定义一个数组
然后实现输入,排序,显示,就OK了;
函数模板不用类的知识 直接看那部分就懂了!!不用看类模板了

读书人网 >C++

热点推荐