S1E12switch语句和分支嵌套 的问题
#include <stdio.h>int main()
{
char Zed,Yumo;
printf("你见过我吗?(Y/N)");
scanf("%c", &Zed);
getchar();
printf("你是学生吗?(Y/N)");
scanf("%c", &Yumo);
if (Zed == 'Y')
{
if (Yumo =='Y')
{
printf("我也是\n");
}
else
{
printf("再见\n");
}
}
else
{
printf("再见\n");
}
return 0;
}
代码是这样的,第一步选N的话不是应该直接结束吗,为什么还是会进行第二个问题的提问不是应该直接结束吗 你的代码逻辑就是这样的,因为你回答第一个问题后没有立刻用if判断,而是等到第2个问题回答之后才进行判断 #include <stdio.h>
int main(void)
{
char Zed, Yumo;
printf("你见过我吗?(Y/N)");
scanf("%c", &Zed);
getchar();
if(Zed == 'Y')
{
printf("你是学生吗?(Y/N)");
scanf("%c", &Yumo);
getchar();
if(Yumo == 'Y')
{
printf("我也是\n");
}
else
{
printf("再见\n");
}
}
else
{
printf("再见\n");
}
return 0;
}
人造人 发表于 2017-4-20 23:09
谢谢=w=就是把
printf("你是学生吗?(Y/N)");
scanf("%c", &Yumo);
getchar();
加入到第一步IF语句的里面么=-=居然一直没有去试。。 Yumowww 发表于 2017-4-20 23:50
谢谢=w=就是把
加入到第一步IF语句的里面么=-=居然一直没有去试。。
学编程就是要多尝试^_^
lumber2388779 发表于 2017-4-20 21:16
你的代码逻辑就是这样的,因为你回答第一个问题后没有立刻用if判断,而是等到第2个问题回答之后才进行判断
应该怎么判断呢,像这样输入好像直接报错了=-=#include <stdio.h>
#define Y 1
#define N 0
int main()
{
char Zed,Yumo;
(Zed)&&(Yumo)
printf("你见过我吗?(Y/N)");
scanf("%c", &Zed);
getchar();
printf("你是学生吗?(Y/N)");
scanf("%c", &Yumo);
if (Zed == 'Y')
{
if (Yumo =='Y')
{
printf("我也是\n");
}
else
{
printf("再见\n");
}
}
else
{
printf("再见\n");
}
return 0;
}
本帖最后由 Yumowww 于 2017-4-21 00:39 编辑
人造人 发表于 2017-4-21 00:02
学编程就是要多尝试^_^
像2L说的那个是用之前的 &&或者||么,应该怎么用呢。还是说我理解错了。。。
-------------0:36更新---------------
应该是理解错了,还是先吧教程全部学完再回头思考吧,现在什么都不懂问问题太浪费大大时间了(说不定只是后面会讲的最基础的东西)
页:
[1]