我输入回车符程序怎么..我暂时不能理解图片,但根据文本内容我可以提供以下回答 如果你在C语言中输入回车符,程序没有结束,可能是由以下几个原因导致的:1. 你的代码可能仍在等待用户输入更多的数据。这通常发生在使用`scanf(
将i=i++修改为i++,让i值自增。题主代码中i = i++有问题,i值不会自增,循环不会结束。会先使用i值,即将1赋值给i,所以在while循环中i的值会一直是1,循环无法停止,所以回车后不会结束。
大致问题在scanf里,%d 和 %s 之间应该没有空格才是,如果有空格,那输入的时候也要遵循格式,输上空格,所以两次回车不会结束,最好去掉空格,防止出错
这有一个理解的问题。 就是回车键不会被scanf收到。它收到的是一个空字符,而不是回车。 所以通常是用一个字符串来表示结束的。比如输入“end",循环就结束。在WINDOWS你可以用getch这个函数来抓到回车键。重新编写代码试试看。祝顺利。
这是因为,如果前面接收了输入,输入流中可能会有残留数据,getchar();/cin.get(); 就会直接读取输入流中的残留数据,而不会等待我们按回车。解决该问题的办法是,先清空输入流,再用 getchar();/cin.get();。清空输入流的办法如下:1). /* 适用于 C 和 C++。需要包含 stdio.h(对于 C)...
#include<stdio.h>//当前程序运行时如果输入*回车,则一直显示需要补考,不停止//原因:scanf()键盘输入,有一个缓冲区,遇到回车才结束//*指针,对应scanf()中涉及到的变量//保留scanf()后面的getchar(),则“吸收”了回车,只有*,整型为0,所以才显示补考main() ...
<stdio.h> 9 #include <stdlib.h> 10 11 char input[40]; 12 13 int main(void) 14 { 15 while(1) 16 { 17 printf("Input the desire system command,blank to exit:"); 18 fgets(input,40,stdin); 19 if(input[0] == '\0')//检测是否是空字符,如果是,直接退出程序,但在linux上运行不...
把输入放到循环中。只要循环成立,将一直重复输入过程。例:循环读入10个整数到数组int a[10]中:int a[10];for(int i=0;i<10;i++) scanf("%d",&a[i]); //循环读入10个数并依次存放到数组a中
using namespace std;main(){ unsigned long i,n,sum;char c;do{ sum=0;printf("请输入n的值:");scanf("%d",&n);for(i=1;i<=n;i++)sum=sum+i;printf("1+2+3+...+%d的和是:%d\n",n,sum);printf("按回车继续,其它键退出\n");fflush(stdin);c=getch();}while(c=='\...