吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 5425|回复: 22
收起左侧

[C&C++ 转载] 要找工作了,找一些基础题做做,随手记一下

[复制链接]
青史无疆 发表于 2016-9-9 21:08
题:
输入若干(不超过1000个)非负整数数字,请先取出为奇数的数字按从大到小排序,再取出偶数从小到大进行排序。

题2.png
解决代码:
[C++] 纯文本查看 复制代码
#include <iostream>
#include <stdlib.h>
#include <vector>
#include <algorithm>
using namespace std;

bool comp(const int &a,const int &b)
{
	return a>b;
}

int Init(int *data,string input)
{
	int index=0;
	int startpos=0,stoppos=0;
	int length;
	
	length = input.length();
	
	while(stoppos<input.length())
	{
		stoppos=input.find(" ",startpos);
		if(-1==stoppos)
		{
			if(startpos<length)
			{
				*(data+index)=atoi(input.substr(startpos,stoppos-startpos).c_str());
				++index;
			}
			break;
		}
		
		if(startpos!=stoppos)
		{
			*(data+index)=atoi(input.substr(startpos,stoppos-startpos).c_str());
			++index;
		}
		startpos=stoppos+1;
	}

	return index;
}

void Sort_Spec(int *data,int count)
{
	vector<int> value_j,value_o;
	for(int i=0;i<count;++i)
	{
		if(*(data+i)%2!=0)
		{
			value_j.push_back(*(data+i));
		}
		else
		{
			value_o.push_back(*(data+i));
		}
	}
	sort(value_o.begin(),value_o.end());
	sort(value_j.begin(),value_j.end(),comp);
	
	vector<int>::iterator it_j,it_o;
	int index=0;
	for(it_j=value_j.begin();it_j!=value_j.end();it_j++)
	{
		*(data+index)=*it_j;
		index++;
	}
	for(it_o=value_o.begin();it_o!=value_o.end();it_o++)
	{
		*(data+index)=*it_o;
		index++;
	}
}

int main()
{
	string input;
	getline(cin,input);
	
	int data[1000];
	
	int count=Init(data,input);
	
	Sort_Spec(data,count);
	
	
	for(int i=0;i<count;++i)
	{
		cout << data[i] << " ";
	}
	
	return 0;
}


点评

就一道题?c++的程序,为什么选vc..不明白楼主要干什么  发表于 2016-9-9 21:19

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Greenle 发表于 2016-9-9 21:12
完全没看懂
初音ミク 发表于 2016-9-10 00:28
魔术使nqy 发表于 2016-9-9 21:58
楼主我想问一下要成为一个程序员要什么条件啊?会C或者C++就可以了吗?还需要学其他哪方面的知识啊???? ...

不一定是C/C++    只要能够熟练使用编程语言你就成为名副其实的码农辣  注:编程语言有很多例如  java  C# VC  VB   C++  swift  objective-c 等。。。。  
天地虚武 发表于 2016-9-9 21:11
完全看不懂

点评

你在水贴么  发表于 2016-9-9 21:35
KaQqi 发表于 2016-9-9 21:19
就一道题?c++的程序..不明白楼主要干什么
 楼主| 青史无疆 发表于 2016-9-9 21:29
cqr2287 发表于 2016-9-9 21:19
就一道题?c++的程序..不明白楼主要干什么

就是单纯的记录下
KaQqi 发表于 2016-9-9 21:31
青史无疆 发表于 2016-9-9 21:29
就是单纯的记录下

哦哦,期待楼主更多的记录
 楼主| 青史无疆 发表于 2016-9-9 21:34
cqr2287 发表于 2016-9-9 21:19
就一道题?c++的程序..不明白楼主要干什么

感觉获取不定数量的数并处理,对新手有一定帮助
魔术使nqy 发表于 2016-9-9 21:55
正在学C语言,这个效果目前我还做不到,如果一开始知道要输入数字的数量还可以用C写
魔术使nqy 发表于 2016-9-9 21:58
楼主我想问一下要成为一个程序员要什么条件啊?会C或者C++就可以了吗?还需要学其他哪方面的知识啊????
 楼主| 青史无疆 发表于 2016-9-9 22:02
魔术使nqy 发表于 2016-9-9 21:58
楼主我想问一下要成为一个程序员要什么条件啊?会C或者C++就可以了吗?还需要学其他哪方面的知识啊???? ...

我也还是新手,刚开始找工作,投了个华为,感觉没望了.......
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 15:54

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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