做patBasic的感受总结和知识点记录
2017-02-26 23:26
267 查看
知识点:
1、将整型转换成字符串
(1)、要包含头文件#include<sstream>
ostringstream oss;
string str;
int num=0;
oss<<num;
str = oss.str();
(2)、使用sprintf函数
char str[10]; // 但只能是char类型的,string类型的不行
int a=1234321;
sprintf(str,"%d",a);
关于数据类型之间的转化更多的参见:http://www.cnblogs.com/luxiaoxun/archive/2012/08/03/2621803.html
2、malloc函数的使用,分配内存空间
3、素数的判断
4、字符串的输入
string input;
getline(cin, input); // 可以实现带有空格的字符串的输入
cin>>input: // 只能输入空格之前的字符串
5、长度未知的一组整型数据的输入
// 已知组数,未知长度,使用getchar()实现字符的捕捉。
6、输出正数的精度(小数的位数)
7、结构体+降序函数的使用
8、以指定的长度输出整型的长度
printf("%04d",
output);
9、用printf输出比cout输出更节省时间。
// 17年2.28更新
10、对比两个数组
vector<int> A,B;
equal(A.begin(), A.end(), B.begin());
返回值为bool型,相等时返回true,不等时返回false。
// 17年3.3更新
11、使用cin输入数据后,再使用getline(cin,str)输入数据时,第一个会捕捉到回车,
所以要早中间使用getchar()去捕捉回车符。
如输入:
4
hello world
代码如下:
cin>>str1;
getchar();
getline(cin,str);
总结:
1、patB的难度比较低,主要考察思维的全面性和缜密性;
2、注意审题;
3、要注意数据类型的使用;
4、要学会优化程序。
1、将整型转换成字符串
(1)、要包含头文件#include<sstream>
ostringstream oss;
string str;
int num=0;
oss<<num;
str = oss.str();
(2)、使用sprintf函数
char str[10]; // 但只能是char类型的,string类型的不行
int a=1234321;
sprintf(str,"%d",a);
关于数据类型之间的转化更多的参见:http://www.cnblogs.com/luxiaoxun/archive/2012/08/03/2621803.html
2、malloc函数的使用,分配内存空间
stuInfo *stu;
int num; // num是stu
stu = (struct stuInfo *)malloc(num*sizeof(struct stuInfo));
free(stu); // 使用后要释放内存空间。
3、素数的判断
bool prime(int value) { if (value % 2 == 0 && value != 2) // 判断是不是偶数 { return false; } for (int j = 2; j <= sqrt(value); j++) // sqrt要包含头文件#include<math> { if (value%j == 0) { return false; } } return true; }
4、字符串的输入
string input;
getline(cin, input); // 可以实现带有空格的字符串的输入
cin>>input: // 只能输入空格之前的字符串
5、长度未知的一组整型数据的输入
do{ scanf("%d", &tmp_input); scanf("%c", &c_tmp); input.push_back(tmp_input); } while (c_tmp != '\n');
// 已知组数,未知长度,使用getchar()实现字符的捕捉。
for (int i = 0; i < 3; i++) { cin >> tmp_input; input[i].push_back(tmp_input); if (getchar() == '\n') break; }
6、输出正数的精度(小数的位数)
C++形式:
int ave_A4;
cout << setiosflags(ios::fixed) << setprecision(1) << ave_A4 << " "; // 要包含头文件 #include<iomanip>
C形式:
double a = 1.2345;
printf("%3.2f",a); // 输出三位数,小数占两位。
输出:1 .23。
7、结构体+降序函数的使用
struct stuInfo { int no; int moral_score; int talent_score; bool operator < (const stuInfo &A) const{ // 这里是进行排序的依据 if (moral_score + talent_score != A.moral_score + A.talent_score) return moral_score + talent_score > A.moral_score + A.talent_score; else{ if (moral_score != A.moral_score) return moral_score > A.moral_score; else return no < A.no; } } };
vector<stuInfo> stu[10];
...... // 输入数值
sort(stu.begin(), stu.end()); // 排序 包含头文件#include<algorithm>
8、以指定的长度输出整型的长度
printf("%04d",
output);
9、用printf输出比cout输出更节省时间。
// 17年2.28更新
10、对比两个数组
vector<int> A,B;
equal(A.begin(), A.end(), B.begin());
返回值为bool型,相等时返回true,不等时返回false。
// 17年3.3更新
11、使用cin输入数据后,再使用getline(cin,str)输入数据时,第一个会捕捉到回车,
所以要早中间使用getchar()去捕捉回车符。
如输入:
4
hello world
代码如下:
cin>>str1;
getchar();
getline(cin,str);
总结:
1、patB的难度比较低,主要考察思维的全面性和缜密性;
2、注意审题;
3、要注意数据类型的使用;
4、要学会优化程序。
相关文章推荐
- 做完了PAT (Basic Level) Practise (中文)总结一下
- PAT乙级(Basic Level)真题 >福尔摩斯的约会 (Java记录)
- 在这里记录自己学习中遇到的零碎的容易忽略的知识点,不定时总结更新
- iOS面试知识点总结记录一
- 6个琐碎知识点总结:①找html快捷键+②看请求信息+③页面语法错误+④plsql看表关联关系+⑤关联很多,慎重操作表记录+⑥302表示重定向报错
- 2017年9月份知识点记录总结
- Hbase 知识点记录总结(1)
- 做imooc仿大众点评遇到的坑总结以及知识点记录
- 字符串知识点 记录+总结
- 摘要记录小技巧-小知识点总结
- 对于XiyouLinux Group面试题知识点的总结和面试的感受
- [置顶] [PAT-甲级]索引以及知识点总结
- 总结一下近来记录下来的知识点
- E1线路知识点总结
- Oracle基本知识点总结一
- String对象知识点总结
- pl/sql语言的中几个知识点的总结(一)
- E1线路知识点总结
- E1知识点总结
- 今天开始连续写blog 来记录一些开发的感受!