• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
rainbow_blog
每天进步一小步,一年之后就会走的很远。
博客园    首页    新随笔    联系   管理    订阅  订阅

C语言的各种输入情况介绍(ACM中常用到)

1.最简单的输入输出形式:
计算a+b的值:
scanf("%d%d",&a,&b);
printf("%d\n",a+b);
------------------------------------------------
2.一次运行需要输入多组数据,知道读致输入文件末尾(EOF)为止;
while(scanf("%d%d",&a,&b)!=EOF){ // 输入结束时,scanf函数返回值为EOF(-1),即没有数据输入时会退出while循环
printf("%d\n",a+b);
}
说明1:scanf函数返回值就是读出的变量个数,如果一个都没有,则返回值是-1。EOF是一个预定义的常量,等于-1。
   说明2:在调试程序时,键盘输入的数据,用CTRL-Z(即按住CTRL键不放,再按下Z)组合作为输入结束,此谓键盘输入设备的“文件末尾”。
-------------------------------------------------
3.一次运行需要输入多组数据,组数由第一个输入数决定,(在开始的时候输入一个N,接下来是N组数据);
int a,b;
int n,i;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d%d",&a,&b);
printf("%d\n",a+b);
}
--------------------------------------------------
4.输入不说明有多少数据,但以某个特殊输入为结束标志。
如:输入两个数据,每组数据占一行,当输入为0 0时表示输入结束;
int a,b;
while(scanf("%d%d",&a,&b)&&(a||b)){
printf("%d\n",a+b);
}

恒之贵,何必三更起五更睡;最无益,只怕一日曝十日寒。
posted @ 2015-05-28 16:41  巅峰之神  阅读(505)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3