c++ if 语句
这里哪里出错了? #include <iostream> using namespace std; int main( ) { int x,y; cin >>x; if(x>1),y=x; else if(1<=x<=10),y=2x-1; else if(x>=10),y=3x-11; cout <<y; return 0; }
首先,有一个明显的问题 :if语句和执行语句之间不能加“,”号。 其次, 编程规范和数学表达式的写作时有些要求的。 对应逻辑判断,如果有多个判断条件复合在一起,中间需要用逻辑符号连接。 逻辑符号有: “与”操作符号&&,“或”操作符号||,“非”操作符号~。 所以1= 1 && x 1 和 11的话后面是永远不会执行的。 x>= 10 也和 1=10 (下限包含上限不包含的规范要求的) if(x= 1 && x = 10 ) // 当然,这个if后面的条件不加也可以 y=3x-11;
个人建议最好改为: if(x>1) y=x; else if(x>=1&&x<=10) y=2x-1; else y=3x-11; 程序员应该养成规范的习惯
if(x>1),y=x; else if(1=10),y=3x-11; //多个逗号 然后就是不支持11) y=x; else if(x>=1&&x<=10) y=2x-1; else y=3x-11;
答:问题在此: if(X=1)//把赋值操作符当成相等操作符了 如果你想 X 等于时才执行 If 语句的内容则改为 if(X==1) //不等是 if(X!=1) ...详情>>
问:挺简单的一C函数,不过我是初学者,暂时还不会写,请好心人多多帮忙!
答:int mystrlen(char *str) { int n = 0; while (*str) { n++; str++;} return n; } voi...详情>>