1 字符常量与字符串常量混淆。 char c; c="a";
在这里就混淆了字符常量与字符串常量,字符常量是由一对单引号括起来的单个字符,字符串常量是一对双引号括起来的字符序列。
2 忽略了“=”与“==”的区别
在许多高级语言中,用“=”符号作为关系运算符“等于”。如在BASIC程序中可以写: if (a=3) then …
但C语言中,“=”是赋值运算符,“==”是关系运算符。如: if (a==3) a=b;
前者是进行比较,a是否和3相等,后者表示如果a和3相等,把b值赋给a。
3 输入变量时忘记加地址运算符“&” int a,b; scanf("%d%d",a,b);
这是不合法的。Scanf函数的作用是:按照a、b在内存的地址将a、b的值存进去。“&a”指a在内存中的地址。
参考:http://blog.csdn.net/abc5382334/article/details/18666263