2009.5.12

今天研究C语言,有所收获,现总结如下:

 

1. int  a,b=0  : a不初始化,b初始化为0;

 

2. int  a=0,b=0 : a,b均初始化为0;

 

3.字符输入函数getchar()与字符输出函数putchar();

 

   用法样例:

 

   char  c;

   c = getchar();

   putchar(c);

 

   上面代码也可简化为:putchar(getchar());

 

   getchar()函数还可检测是否输入回车:getchar()=1 时输入回车符;

 

4.字符串输入函数gets()和字符串输出函数puts();

 

   用法样例:

    char  a[100];

    gets(a);

    puts(a);

 

   注意:一定要指定字符串a的长度。如将  char  a[100] 改为 char*  a,则编译报错;

 

5.如何判断输入结束:

   C中,while(scanf("%d",&temp)!=EOF),输入完数据后,shift+f6+回车,即可显示输出结果。

 

   C++中,while(cin>>temp),输入完数据后,再输入一个与上面输入数据类型不同的数据,则显示输出结 

 

   果。

 

   这次做ACM题toj10001,用C写的代码,用时16MS,用内存148KB;用C++写的代码,用时125MS,用

 

   内存152KB;这次我可亲眼看到了C在效率和占用空间上的巨大优势。

 

6.下面总结一下今下午做ACM题的教训:

 

   本来几秒钟就可以搞定的事情,为何我用了一天一夜?究其原因,首先是因为我没彻底弄清题目要求,盲目

 

   蛮做,题目要求判断输入结束,我就主观确定结束符为回车,同时对提交代码要求也不熟悉;其次就是平时

 

   发现的问题没刨根问底去解决,而是得过且过;还有就是不够灵活,不能根据其他人做的程度判断出题目的

 

   复杂程度。

  

 

你可能感兴趣的:(2009.5.12)