明天看stringstream主要是相当与sprintf/sscanf函数的作用
来源:互联网 发布:淘宝种子新规 编辑:程序博客网 时间:2024/05/18 10:46
明天看stringstream主要是相当与sprintf/sscanf函数的作用
C_Style
#include<iostream>#include<cstdio>#include<cstring>using namespace std;int get_next(int x){ char s[10]; sprintf(s, "%d", x); int n = strlen(s); for(int i = 0; i < n; ++i) for(int j = i+1; j < n; ++j) if(s[i] > s[j]) { char t = s[i]; s[i] = s[j]; s[j] = t; } int b; sscanf(s, "%d", &b);//字符串反转 for(int i = 0; i < n/2; ++i) { char t = s[i]; s[i] = s[n-i-1]; s[n-i-1] = t; } int a; sscanf(s, "%d", &a); return a-b;}int num[2000], count;int main(){ cin >> num[0]; cout << num[0]; count = 1; while(1) { //生成并输出下一个数 num[count] = get_next(num[count-1]); cout << " -> " << num[count]; //在数组n中寻找新生成的书 int found = 0; for(int i = 0; i < count; ++i) if(num[i] == num[count]) { found = 1; break; }//如果找到,推出循环 if(found)break; count++; } cout << endl; return 0;}
C++_Style
#include<iostream>#include<sstream>using namespace std; int get_next(int x){ stringstream stream; string s; stream << x; stream >> s; for(string::size_type i = 0; i != s.size(); ++i) for(string::size_type j = i + 1; j != s.size(); ++j) if(s[i] > s[j]) { char t = s[i]; s[i] = s[j]; s[j] = t; } stream.clear();//多次转换前,必须清楚stream stream << s; stream >> x;//字符串反串 for(string::size_type i = 0; i < s.size()/2; ++i) { char t = s[i]; s[i] = s[s.size()-i-1]; s[s.size()-i-1] = t; } int y; stream.clear();//多次转换前,必须清楚stream stream << s; stream >> y; return y - x;}int num[2000], count;int main(){ cin >> num[0]; cout << num[0]; count = 1; while(1) {//生成并输出下一个数 num[count] = get_next(num[count-1]); cout << " -> " << num[count];//在数组n中寻找新生成的数 int found = 0; for(int i = 0; i < count; ++i) if(num[i] == num[count]) { found = 1; break; } if(found) break; count++; } cout << endl; return 0;}
- 明天看stringstream主要是相当与sprintf/sscanf函数的作用
- sprintf与sscanf函数
- sscanf sprintf stringstream
- sprintf函数与sscanf函数
- sprintf与sscanf函数总结
- C语言sprintf与sscanf函数总结及fscanf,sscanf,fprintf,sprintf之间的区别
- sprintf(),sscanf()函数的使用
- sprintf与sscanf的区别
- sprintf与sscanf的区别
- sprintf与sscanf的用法
- sscanf与sprintf函数的使用实例(C / C++)
- C语言sprintf与sscanf函数[总结]
- C语言sprintf与sscanf函数[总结]
- C语言sprintf与sscanf函数[总结]
- C语言sprintf与sscanf函数[总结]
- C语言sprintf与sscanf函数[总结]
- C语言sprintf与sscanf函数
- C语言sprintf与sscanf函数[总结]
- 设置MYSQL数据库编码为UTF-8:
- iBATIS中的单元测试
- [cocos2d-x]例如C++的成员函数指针实现委托、监听者模式
- c++ 分割字符串,字符串转数组
- 盘点那些牛人是如何使用笔记本的,现在笔记本真是贱如白菜啊
- 明天看stringstream主要是相当与sprintf/sscanf函数的作用
- PHP扩展开发-06-变量的定义和使用
- js时间比较
- 张孝祥老师银行业务调度系统统视频学习
- JAVA设计模式学习总结
- Java 高质量编程建议(笔记7)
- 在源文件中搜收特定函数在哪个文件中被定义及被哪些文件调用
- Android的源代码结构
- android在Service中弹出Dialog对话框,即全局性对话框