水题时,一些零碎的总结
2012-06-19 10:50
190 查看
1. 用printf(“%.nf”,….);输出精确n位的小数,结果会自动四舍五入。
2. double->int 时,不论double中的小数为什么,int 型都只取double中的整数。
3. 求绝对值时:
abs()为int型
fabs()为双精度浮点型
cabs()为复数的
labs()为long int型
4. 开平方为:
sqrt()
5. pow()函数返回的为double型,对于结果的转换要注意,容易被强制转换成int,然后就有可能出现问题。
6. 用库函数:
#include<algorithm>
int a[10];
sort(a,a+10);
7. 用‘/’时,如果要求返回浮点型,那么除数或被除数,至少有一个为浮点型。
8. gets() scanf("%s") puts() printf("%s") 的区别
gets()与scanf(“%s”):
① gets遇回车时结束输入。也就是说,gets可以接受回车前的任何输入。
scanf不同,遇到回车、空格、制表符就结束输入。
eg. String a=”I am a student;
如果要一次性的接受全部的字符串,要用gets。
② 输入结束后,gets的回车不会留在缓冲区;而scanf的空格、回车仍然会留在缓冲区。
Puts()与printf(“%s”)
① puts函数只用来输出字符串,参数可以是字符串,也可以是存放字符串的数组名。
Printf(“%s”)其参数也可以是是字符串,或者是存放字符串的数组名。
② puts函数输出字符串后会自动加换行,而printf(“%s”)不会。
Puts(a)与scanf(“%s\n”,a)等效.
9. 由于中文的Ascall码的首位为1,所以其转化的十进制数为负数。因此,如果要求一个字符串中的中文的个数,只需要算出字符串的负数的个数,再除以二,即是中文的个数。
10. scanf(“%d%*d”,&a);
表示接受两个输入,但只对第一个进行赋值。
可应用到gets()前的输入(具体为什么还不太清楚。。。)。
#include<iostream>
using namespace std;
int main(){
int n;
char a[1000];
// cin>>n;
// scanf("%d",&n);
// scanf("%d%*d",&n);
gets(a);
int m=strlen(a);
cout<<m<<endl;
cin>>m;
return 0;
}
11. memset(a,0,sizeof(a));
即对数组a进行初始化操作(全赋值为0)。
scanf("%d%d", &a, &b);
如果a和b都被成功读入,那么scanf的返回值就是2
如果只有a被成功读入,返回值为1
如果a和b都未被成功读入,返回值为0
如果遇到错误或遇到end of file,返回值为EOF。
且返回值为int型.
eg.
int a;
scanf(“%d”,&a);
int a[100];
scanf(“%s”,a)
2、scanf()的格式控制串可以使用其它非空白字符,但在输入时必须输入这些字符。
eg.
scanf(“%d,%d”,&a,&b);
这时输入:a,b
scanf(“%d%d”,&a,&b);
这时输入:a b
3、在用"%c"输入时,空格和“转义字符”均作为有效字符。
scanf(“%c %c”,&a&b&c)
这时输入a b
4. 在两次输入时:
eg.
Scanf(“%d”,&a);
Sccanf(“%d”,&b);
这时输入:1 2
则输入到b中的为0.
Scanf(“%d ”,&a);(b后面多了一个空格)
Scanf(“%d”,&b);
这时a和b的输入都没有变化。
13. 判断两个元素是否处在同一对角线上:
Hi ,li ,hj ,lj分别为第i个和第j个元素所在的行列。
If(hi-li==hj-lj || hi+li==hj+lj)
则两个元素处在同一对角线上。
14. BFS的判重:
在树中进行BFS时,不需要进行判重;而在图中进行BFS时,需要进行判重来对搜索进行剪枝。
15. int型的上限约为:20亿
2000000000
16. n=a*b;
temp1=(a+b)*a;
temp2=(a+b)*b;
1/n=1/temp1+1/temp2
2. double->int 时,不论double中的小数为什么,int 型都只取double中的整数。
3. 求绝对值时:
abs()为int型
fabs()为双精度浮点型
cabs()为复数的
labs()为long int型
4. 开平方为:
sqrt()
5. pow()函数返回的为double型,对于结果的转换要注意,容易被强制转换成int,然后就有可能出现问题。
6. 用库函数:
#include<algorithm>
int a[10];
sort(a,a+10);
7. 用‘/’时,如果要求返回浮点型,那么除数或被除数,至少有一个为浮点型。
8. gets() scanf("%s") puts() printf("%s") 的区别
gets()与scanf(“%s”):
① gets遇回车时结束输入。也就是说,gets可以接受回车前的任何输入。
scanf不同,遇到回车、空格、制表符就结束输入。
eg. String a=”I am a student;
如果要一次性的接受全部的字符串,要用gets。
② 输入结束后,gets的回车不会留在缓冲区;而scanf的空格、回车仍然会留在缓冲区。
Puts()与printf(“%s”)
① puts函数只用来输出字符串,参数可以是字符串,也可以是存放字符串的数组名。
Printf(“%s”)其参数也可以是是字符串,或者是存放字符串的数组名。
② puts函数输出字符串后会自动加换行,而printf(“%s”)不会。
Puts(a)与scanf(“%s\n”,a)等效.
9. 由于中文的Ascall码的首位为1,所以其转化的十进制数为负数。因此,如果要求一个字符串中的中文的个数,只需要算出字符串的负数的个数,再除以二,即是中文的个数。
10. scanf(“%d%*d”,&a);
表示接受两个输入,但只对第一个进行赋值。
可应用到gets()前的输入(具体为什么还不太清楚。。。)。
#include<iostream>
using namespace std;
int main(){
int n;
char a[1000];
// cin>>n;
// scanf("%d",&n);
// scanf("%d%*d",&n);
gets(a);
int m=strlen(a);
cout<<m<<endl;
cin>>m;
return 0;
}
11. memset(a,0,sizeof(a));
即对数组a进行初始化操作(全赋值为0)。
12. scanf的用法即注意事项
scanf的返回值
scanf的返回值由后面的参数决定scanf("%d%d", &a, &b);
如果a和b都被成功读入,那么scanf的返回值就是2
如果只有a被成功读入,返回值为1
如果a和b都未被成功读入,返回值为0
如果遇到错误或遇到end of file,返回值为EOF。
且返回值为int型.
使用scanf函数时应该注意的问题
1、scanf()中的变量必须使用地址。eg.
int a;
scanf(“%d”,&a);
int a[100];
scanf(“%s”,a)
2、scanf()的格式控制串可以使用其它非空白字符,但在输入时必须输入这些字符。
eg.
scanf(“%d,%d”,&a,&b);
这时输入:a,b
scanf(“%d%d”,&a,&b);
这时输入:a b
3、在用"%c"输入时,空格和“转义字符”均作为有效字符。
scanf(“%c %c”,&a&b&c)
这时输入a b
4. 在两次输入时:
eg.
Scanf(“%d”,&a);
Sccanf(“%d”,&b);
这时输入:1 2
则输入到b中的为0.
Scanf(“%d ”,&a);(b后面多了一个空格)
Scanf(“%d”,&b);
这时a和b的输入都没有变化。
13. 判断两个元素是否处在同一对角线上:
Hi ,li ,hj ,lj分别为第i个和第j个元素所在的行列。
If(hi-li==hj-lj || hi+li==hj+lj)
则两个元素处在同一对角线上。
14. BFS的判重:
在树中进行BFS时,不需要进行判重;而在图中进行BFS时,需要进行判重来对搜索进行剪枝。
15. int型的上限约为:20亿
2000000000
16. n=a*b;
temp1=(a+b)*a;
temp2=(a+b)*b;
1/n=1/temp1+1/temp2
相关文章推荐
- 水题时,一些零碎的总结
- 这些年用到的一些零碎技术.总结再下面
- 线程的一些零碎知识总结
- 本科数学建模时候的一些零碎总结(未整理)
- 一些零碎思考与总结
- 一些水题总结
- 做过的一些水题的总结
- 【持续更新】总结:C++开发时积累的一些零碎的东西
- c++学习总结(一些零碎的小知识点)
- 【Win10】一些零碎不好归档的小总结(原谅我这个该死的标题吧)
- CSS的一些零碎总结
- CSS的一些零碎总结
- angularJS最近总结一些零碎的知识点
- 看ASP.NET MVC3 自己总结的一些细节
- 总结一些ASP.NET常用代码
- 关于sql的一些个人总结
- 展望未来,总结过去10年的程序员生涯,给程序员小弟弟小妹妹们的一些总结性忠告
- Synchronized的一些总结
- 技术的学习及一些总结
- linux下C的一些开发技巧总结