C++学习心得.docx
- 文档编号:27690882
- 上传时间:2023-07-04
- 格式:DOCX
- 页数:18
- 大小:26.14KB
C++学习心得.docx
《C++学习心得.docx》由会员分享,可在线阅读,更多相关《C++学习心得.docx(18页珍藏版)》请在冰豆网上搜索。
C++学习心得
九度A题先做1,2,3星的题
老杨命令禁止的,但老师们私底下还是会预面试学生的
我们实验室每天都有学生预面试,我能骗你们吗
C++学习心得
1、编译是ctrl+F9,执行是ctrl+F10
是不是执行后,一个黑框一闪而过后就没了?
这个可以这样做,在程序返回前加一句getchar();
就像下面这个程序这样,这样就没有问题了
此程序仅供参考。
如果没有输出,那么说明你的程序可能存在问题。
#include
intmain()
{
inti,sum=0;
for(i=1;i<=100;i++)
sum+=i;
printf("1+2+3+……+100=%d",sum);
getchar();
return0;
}
2注;当输出完一些数字或字符后想换行在输出时可以应用此表达
putchar('\n');而对于puts函数,它对于所操作的对象则当做是字符串来看待,puts("\n");则可实现换行的操作;
3#include
Voidmain(){
char*string=”llovechina”;
这里string是一个指向字符串的指针,并且该语句只是把”llovechina”的第一个字符的地址赋给指针变量string。
char*week[7]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};
对于该语句数组中的每个分量都是字符指针,并且其中存放数组中每一个分量中第一个字符的地址。
4getchar():
函数的值就是从输入设备得到的字符
5天勤代码2-2中对输出空格和换行的处理值的借鉴
intmain(){
intn;
while(scanf("%d",&n)!
=EOF){
intiSpace=0;
for(inti=1;i<=n;i++){
if(SumOfFactors(i)==i){
if(iSpace++){
putchar('');
}
printf("%d",i);
}
}
putchar('\n');
}
return0;
}
而天勤最后总结中推荐的方法:
利用计数器在第一次为0,而往后均大于0这一特点。
for(inti=0;i if(i){ putchar(‘’); } //outputdata } 6、关于while(scanf(“%d”,&n)! =EOF);的说明; scanf函数是有返回值的,他将返回被输入函数成功赋值的变量个数。 我们即是通过该返回值来完成循环条件的判断的。 注: 若输入为字符串而程序采用gets()的方法输出,则相同功能的循环判断语句为while(gets(字符变量)); 7王道上提醒vc6.0与其他编译器在for循环上的不同在代码2-2附近(书上); 8strcmp(str1,str2)字符串比较函数: 字符串的比较规则是对两个字符串自左至右逐个比较(按ASCII值大小进行比较),若全部字符相同,则函数返回值为0;若字符串1>字符串2,则函数返回值为一个正数整数;若字符串1<字符串2,则函数返回值为一个负整数。 9函数的返回值 returnz;return(x>y? x: y); 其中第一个return函数返回的是一个变量z,而第二种表述方式中return函数返回的是一个表达式的值。 其过程为先计算表达式的结果,再将结果返回给被调用函数。 10、注意: printf(“%d%d”,a,b);printf中前边为输出格式,后边为输出变量名,也可以是表达式x+y;或函数返回值 11、#include intmain() { intnum[10]; inti,max; for(i=0;i<10;i++) { scanf("%d",&num[i]); } max=num[0]; for(i=0;i<10;i++) { if(num[i]>max) { max=num[i]; } } printf("max=%d\n",max); getchar();有时候因为输入10个数字后有一个回车,因此第一个getchar()可能是把回车取了,因此需要再来一个getchar();才可以 getchar(); return0; } 12、printf("%d%d\n",c[i],d[i]);//printf输出时不用&,谨记 13、intmain(){ intdigits[20]; intnum; while(scanf("%d",&num)! =EOF&&num){ intnumofd=Separated(num,digits); intans1=0; 。 。 。 。 。 。 注意: 在devc中while(scanf("%d",&num)! =EOF&&num){该循环确实可以起到重复进行多组运算的目的。 除此之外,在天勤代码3-2中还起到了停止运算的功能(当num=0时再输入会结束),真挺妙 14、’\0’代表ASII码为的字符,它与‘0’字符并不相同,‘0’的ASII为48 15while(str[i]){//这里因为为char型数组,因此其值应为ascii码值,而'\0'的ascii码值为0,而'0'的ascii码值为48,因此不会冲突 if(str[i]>='0'&&str[i]<='9'){//利用ascii码来判断是否为逗号,如果不是逗号则加入到计算得整数中; ans=ans*10+str[i]-'0'; } i++; } 16、定义一维数组时有多种方式,如chararr[]={‘a’};char[20]等.但chararr[]是错误的。 再未给数组赋值时必须给出数组大小。 而对于二维数组,可以如此: char[5][5]{{‘a’},{‘b’},{‘c’},{‘d’},{‘e’}} 17、指针数组: 一个数组,若其元素均为指针类型数据,称为指针数组,也就是说指针数组中的每一个数据元素都相当于一个指针变量。 一维指针数组定义形式: pf int*p[4]; 18、字符串比较函数strcmp(str1,str2);当str1=str2,return0;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 学习心得