请问第一个else处应输入一个语句是什么意思
if (d == x)后面不应有分号,另外else if和else里面的printf()后面应有分号。
int d, x; { printf("请输入:1是剪刀,2是石头,3是布"); scanf("%d", &d); x = rand() % 3; if (d == x) printf("双方平局"); else if ((d == 1 && x == 2) || (d == 2 && x == 3) || (d == 3 && x == 1)) printf("你赢了"); else printf("computer win"); }。
1.IntelliSense: 未定义标识符 "lf" 2.IntelliSense: 应输入一个语句
#include
int main() {
int x, y, z;
int max(int a, int b);
printf("input two number:\n");
scanf_s("%d%d", &x, &y);
z = max(x, y);
printf("maxmum=%d", z);
}
int max(int a, int b) {
//lf(a > b); return a; else return b;
return (a > b) ? a : b;
}
为什么else一直提示要输入一个语句
你这个程序错误太多多了吧!先说你的程序,再说你提的问题。
因为,即使解决了你的问题,程序还是错误的。一、关于程序从程序结构上看,大概是判断一个数是不是素数。
1、int行,a变量是多余的,i和b可直接初始化。这一行改为:int n,i=2,b=1;2、去掉i=2;这一行。
3、第一个if语句错误,必须改为:if(n%i==0)4、b=0前面加一个花括号(花括号最好单独占一行),变为:{b=0;5、第一个i=i++改为break;,并在后面加一个花括号(也让它单独占一行),如下:break;}6、把b=1和后面那行printf全部去掉。7、把第二个i=i++改为:i++;8、把if(b=1){这一行的花括号去掉,等号双写,改为:if(b==1)9、把return前面的那个花括号去掉。
这样修改以后,程序就能正常运行,并能得到正确的结果了。二、你提出的问题在if语句中,最常用的结构形式是:if(表达式一){语句组一}else{语句组二}其中语句组可以是一个或多个语句,仅当语句组只含有一个语句时,语句组前后的花括号才可以省略。
如语句组一只含有“一个语句”,可以写成:if(表达式一)语句一;else{语句组二}如果语句组含有两个或多个语句,就不能省略花括号,如不能写成:if(表达式一)语句一;语句二;else{语句组二}如果你这样写,系统会认为if语句只含有前两句:if(表达式一)语句一;这个if结构到这儿已经结束了。当后面再出现else时,系统就会蒙圈,有时会提醒你“缺少if语句”。
所以,解决你的问题,只需要把b=0和i=i++两句括起来即可:{b=0;i=i++;}前面已经说了,这样子虽然程序不再提示你“要输入一个语句”,但程序仍不会判断出素数。啰嗦了很多,不知是否已经说明白。
有什么问题请留言。
c语言 输入一个句子 把句子反过来打出来
#include
#include
void main(){
char s[1000];
int i=0;
while((s[i]=getchar())!='\n')
{
if(s[i]==' '){
while(i)
printf("%c",s[--i]);
printf(" ");
i--;
}
i++;
}
while(i)
printf("%c",s[--i]);
printf(" ");
}