写C时出了错误

Home Home
引用 | 编辑 aaaasszx
2011-08-28 22:27
楼主
推文 x0
请问错误在哪
侦错一直卡住


#include<stdio.h>
#include<stdlib.h>
int main(void)
{ int a;
..

访客只能看到部份内容,免费 加入会员



献花 x0
引用 | 编辑 ebolaman
2011-08-29 01:05
1楼
  
修改成底下程式码即可

复制程式
int main(void)
{ 
     int a;
     
     printf("输入你信用卡前两码来测试是不是Visa的\n");
     scanf("%d",&a);
     
     if (a==45||a==46)
         printf("你是Visa的");
     else
         printf("你不是Visa的");
     
     system("pause");
     return 0;
}



错误的地方:

(1) pruntf >> printf

(2) if (a=45,46); >> if (a==45||a==46)

if 判断句子后面不可以加 ;   C++中的 ; 是给编译器判断结束的地方,不像 VB 是以换行符号,不过既然前面已经侦测到 if ,那就不用多说,因为判断的式子已经被括号 () 给夹住了,因此不用麻烦加上 ;  给编译器知道 

(3) a=45,46 >> a==45||a==46

= 符号是指定的用法,如果要判断某个东东 是不是 某个西西,要用两次等于 ==

而可以加上 || (只要值不是 0 的都当成 True) 这是 Or 的用法,其实这边也可以用 |  (这是二进位的用法)

还有原本的打法 if(a=45,46) 整个会传回 a 也就是 45 因为括号内先指定 a 的值是 45,然后整个括号再传给 if 的值就是 45

也就当成成立 (True),因此之前不管输入什么数字都会判断成 是

献花 x1
引用 | 编辑 aaaasszx
2011-08-29 10:53
2楼
  
下面是引用 ebolaman 于 2011-08-29 01:05 发表的 : 到引言文
修改成底下程式码即可
[code]
int main(void)
{
     int a;
.......

谢啦
话说上次VB也是您帮我的
感恩~~

献花 x0