把编程当做是一种兴趣而不仅仅是专业。。。。  
日历
<2010年10月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456
统计
  • 随笔 - 1
  • 文章 - 0
  • 评论 - 0
  • 引用 - 0

导航

常用链接

留言簿

随笔分类

随笔档案

搜索

  •  

最新评论

 

1.scanf函数

scanf函数原型:

int scanf(const char *format…..);

从标准输入流stdin中按格式format将数据写到参数表中;若操作成功,返回写到参数表中的参数个数,否则返回EOF;

注意以下几点:

①scanf函数没有精度控制

如出现:

scanf(“%6.2f”,&a);

是绝对错误的

②在以%c格式输入字符数据时,所有输入的均为有效字符

如:

scanf(“%c%c%c”,&a,&b,&c);

输入:d e f

则a=’d’,b为空格字符’ ‘,c=’d’

如果以%s读入字符串,则空格键和回车键都可以作为输入结束的标志

如:

scanf(“%s%s”,p,q);---------p,q均为指针

输入:Hello World 与

      Hello

      World

效果是相同的,p均指向Hello这个字符串,q均指向World这个字符串

③ 如果在格式控制字符串中有非格式字符,则输入时要照原样入;

如:

scanf(“%d,%d,%d,”,&,&b,&c);

则输入时必须加上逗号:5,6,7

④如果同while配合用的话,则需注意去掉回车键

如有下面一段程序:

while(scanf(“%d”,&n)==1&&n!=0)

{

         char ch;

         scanf(“%c”,&ch);

         printf(“%c\n”,ch);

}

则输出结果是:

2    
                                                                                                                                                                      
3

0

结果表明ch字符是回车键

所以如果要消除影响:

有两种方法:

⑴加上getchar();

while(scanf(“%d”,&n)==1&&n!=0)

{

         getchar();

         char ch;

         scanf(“%c”,&ch);

         printf(“%c\n”,ch);

}

⑵在while中加上%*c

While(scanf(“%d%*c”,&n)==1&&n!=0)即可

 

2.    fabs,abs函数和labs

①fabs函数的原型是:

double fabs(double );

float fabsf(float);

long double fabsl(long double);

②abs函数原型

     int abs(int);

③labs函数的原型

   long int labs(long int);

posted on 2010-10-15 17:51 云淡风轻 阅读(1225) 评论(0)  编辑 收藏 引用 所属分类: C/C++

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


 
Copyright © 云淡风轻 Powered by: 博客园 模板提供:沪江博客