首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

一个很简单的C语言代码 大侠

2012-05-20 
一个很简单的C语言代码 在线等大侠C/C++ code#includestdio.hint main(){int igets(i)printf(%s\n,i

一个很简单的C语言代码 在线等大侠

C/C++ code
#include<stdio.h>int main(){   int i;   gets(i);   printf("%s\n",i);   if(i=1){      printf("111111111111");   }   if(i=2){       printf("222222222");   }else{     exit(1);     }}

我是学java的很久没用C了,我想问一下为什么这段代码为什么不管输入的是1还是2两个判断语句中的都会打印出来

[解决办法]
gets是用来输入字符串的,不是用来输入整数的。
还有,i是整数类型,你怎么能这么用呢? printf("%s\n",i);
保留你先前的gets函数,我替你给过来了。
C/C++ code
#include <stdio.h>#include <stdlib.h>int main(){   int i;   char buff[16];   gets(buff);   sscanf(buff,"%d",&i); //将字符串转化为1个整数,存入i中   printf("%d\n",i);   if(i==1){      printf("111111111111");   }   if(i==2){       printf("222222222");   }else{     exit(1);     }}
[解决办法]
if(i==1){
printf("111111111111");
}
if(i==2){
printf("222222222");
}else{
exit(1);
}

if(i=1) //相当执行赋值操作 永真

热点排行