发布网友
共5个回答
热心网友
这有一个理解的问题。 就是回车键不会被scanf收到。它收到的是一个空字符,而不是回车。 所以通常是用一个字符串来表示结束的。比如输入“end",循环就结束。在WINDOWS你可以用getch这个函数来抓到回车键。重新编写代码试试看。祝顺利。
热心网友
这有一个理解的问题。 就是回车键不会被scanf收到。它收到的是一个空字符,而不是回车。 所以通常是用一个字符串来表示结束的。比如输入“end",循环就结束。在WINDOWS你可以用getch这个函数来抓到回车键。重新编写代码试试看。祝顺利。
热心网友
while(ch2!='\n')
{
scanf("%c",&ch1);
scanf(" %c",&ch2);
printf("%c",ch1);
printf("%c",ch2);
}
这里你第一次输入两个字符之后进入下一次循环,你敲的第一个回车赋给的是ch1,而此时ch2还是你上一次输入的单词。你敲两个回车试试
热心网友
while语句是说当条件不满足是跳出循环,可是这里你的条件永远成立,在你判断的时候ch2没有赋初值,代码有问题啊,进入循环当然不结束了啊
热心网友
这意味着程序还没运行完。可能你的代码有问题
热心网友
这有一个理解的问题。 就是回车键不会被scanf收到。它收到的是一个空字符,而不是回车。 所以通常是用一个字符串来表示结束的。比如输入“end",循环就结束。在WINDOWS你可以用getch这个函数来抓到回车键。重新编写代码试试看。祝顺利。
热心网友
while(ch2!='\n')
{
scanf("%c",&ch1);
scanf(" %c",&ch2);
printf("%c",ch1);
printf("%c",ch2);
}
这里你第一次输入两个字符之后进入下一次循环,你敲的第一个回车赋给的是ch1,而此时ch2还是你上一次输入的单词。你敲两个回车试试
热心网友
#include<stdio.h>
int main()
{
char ch1,ch2;
while(ch2!='\n')
{
scanf("%c",&ch1);
scanf(" %c",&ch2);
printf("%c",ch1);
printf("%c",ch2);
scanf(%c", &ch2); //加了一句
}
return 0;
}
这样看看会不会结束?追问嗯 谢谢 可以结束 我想问下为什么这样 它才会结束?
追答scanf(%c", &ch2); //加了一句
通过这句话读回车啊
热心网友
while语句是说当条件不满足是跳出循环,可是这里你的条件永远成立,在你判断的时候ch2没有赋初值,代码有问题啊,进入循环当然不结束了啊
热心网友
这意味着程序还没运行完。可能你的代码有问题
热心网友
#include<stdio.h>
int main()
{
char ch1,ch2;
while(ch2!='\n')
{
scanf("%c",&ch1);
scanf(" %c",&ch2);
printf("%c",ch1);
printf("%c",ch2);
scanf(%c", &ch2); //加了一句
}
return 0;
}
这样看看会不会结束?追问嗯 谢谢 可以结束 我想问下为什么这样 它才会结束?
追答scanf(%c", &ch2); //加了一句
通过这句话读回车啊
热心网友
while(ch2!='\n')
{
scanf("%c",&ch1);
scanf(" %c",&ch2);
printf("%c",ch1);
printf("%c",ch2);
}
这里你第一次输入两个字符之后进入下一次循环,你敲的第一个回车赋给的是ch1,而此时ch2还是你上一次输入的单词。你敲两个回车试试
热心网友
while语句是说当条件不满足是跳出循环,可是这里你的条件永远成立,在你判断的时候ch2没有赋初值,代码有问题啊,进入循环当然不结束了啊
热心网友
这意味着程序还没运行完。可能你的代码有问题
热心网友
#include<stdio.h>
int main()
{
char ch1,ch2;
while(ch2!='\n')
{
scanf("%c",&ch1);
scanf(" %c",&ch2);
printf("%c",ch1);
printf("%c",ch2);
scanf(%c", &ch2); //加了一句
}
return 0;
}
这样看看会不会结束?追问嗯 谢谢 可以结束 我想问下为什么这样 它才会结束?
追答scanf(%c", &ch2); //加了一句
通过这句话读回车啊
热心网友
这有一个理解的问题。 就是回车键不会被scanf收到。它收到的是一个空字符,而不是回车。 所以通常是用一个字符串来表示结束的。比如输入“end",循环就结束。在WINDOWS你可以用getch这个函数来抓到回车键。重新编写代码试试看。祝顺利。
热心网友
while(ch2!='\n')
{
scanf("%c",&ch1);
scanf(" %c",&ch2);
printf("%c",ch1);
printf("%c",ch2);
}
这里你第一次输入两个字符之后进入下一次循环,你敲的第一个回车赋给的是ch1,而此时ch2还是你上一次输入的单词。你敲两个回车试试
热心网友
while语句是说当条件不满足是跳出循环,可是这里你的条件永远成立,在你判断的时候ch2没有赋初值,代码有问题啊,进入循环当然不结束了啊
热心网友
这意味着程序还没运行完。可能你的代码有问题
热心网友
#include<stdio.h>
int main()
{
char ch1,ch2;
while(ch2!='\n')
{
scanf("%c",&ch1);
scanf(" %c",&ch2);
printf("%c",ch1);
printf("%c",ch2);
scanf(%c", &ch2); //加了一句
}
return 0;
}
这样看看会不会结束?追问嗯 谢谢 可以结束 我想问下为什么这样 它才会结束?
追答scanf(%c", &ch2); //加了一句
通过这句话读回车啊