A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© pingfan183 中级黑马   /  2014-11-1 23:33  /  1273 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


//接收多个数字的问题
// int a=-1,b=-1;
// scanf("%d%d",&a,&b);
// printf("a = %d,b = %d\n",a,b);

//接受指定的位数的问题
// int a=-1;
// scanf("%5d",&a);
// printf("a = %d\n",a);

//字符混和输入
// int a=-1;
// char ch;
// scanf("%d#%c",&a,&ch); //","是一个普通的分隔符 ,输入数据的时候也要用“,”分隔
//// scanf("%d%c",&a,&ch); //有问题的,涉及到scanf的运行原理
// printf("a = %d,ch = %c\n",a,ch);


//关于\n问题 ,

// int a= -1;
// scanf("%d\n",&a); // \n 换行符,尽量避免这种写法
// printf("a = %d\n",a);



点评

你把字符串放到前面输出 后面跟上其他类型输出 分隔符的效果会更明显  发表于 2014-11-2 02:07

5 个回复

倒序浏览
// scanf("%5d",&a);
  这里为什么%后边是5???
回复 使用道具 举报
接受多个数字是建议用分隔符分开,另外有个我不了解的问题请教一下,为什么定义的变量一开始就给赋值-1.我平时这类型接受都是不赋值的,一样没问题,求解!
回复 使用道具 举报
jy02305403 发表于 2014-11-3 21:40
接受多个数字是建议用分隔符分开,另外有个我不了解的问题请教一下,为什么定义的变量一开始就给赋值-1.我 ...

初始化也可以是0,至于为什么要初始化,是因为不初始化得到的数是垃圾值,如果要是用指针的话,由于没初始化,指针改的有可能是系统的地址,会造成系统崩溃
回复 使用道具 举报
pingfan183 发表于 2014-11-3 23:07
初始化也可以是0,至于为什么要初始化,是因为不初始化得到的数是垃圾值,如果要是用指针的话,由于没初 ...

还没学到指针,谢谢你的提醒!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马