当前位置:首页C++程序设计 > 正文

C++中cin输出流在循环语句中的详细解释

作者:野牛程序员:2023-03-28 12:20:07C++程序设计阅读 2437


int n,num;   
cin >> n; 
for (int i = 0; i < n; i++) {        
    cin >> num;
    cout << num << " ";
}

执行顺序

首先我们运行程序输入一个数 通过

cin >> n;

赋值给n。

\"1679977621096.png\"/

再输入 n个数  

\"1679977585676(1).png\"/

输入完n个数后按回车,每遍历一次循环,

cin >> num;

从 输入流里面取一个数值赋给  num。

再通过

cout << num << " ";

输出数值。


那么在执行 for 循环时,程序会按照以下的顺序进行:

  1. 开始执行 for 循环。

  2. 初始化计数器 i0

  3. 判断 i 是否小于 n。由于 i 目前为 0,而 n3,因此判断为真,程序进入循环体内。

  4. 从输入流中读取一个数字,此时输入流中的内容为 "10 20 30"。因此读取的数字为 10

  5. 输出读取到的数字,并在数字后面输出一个空格。输出结果为 10

  6. 将计数器 i 增加 1,此时 i 的值为 1

  7. 判断 i 是否小于 n。由于 i 目前为 1,而 n3,因此判断为真,程序重新进入循环体内。

  8. 从输入流中读取下一个数字,此时输入流中的内容为 "20 30"。因此读取的数字为 20

  9. 输出读取到的数字,并在数字后面输出一个空格。输出结果为 10 20

  10. 将计数器 i 增加 1,此时 i 的值为 2

  11. 判断 i 是否小于 n。由于 i 目前为 2,而 n3,因此判断为真,程序重新进入循环体内。

  12. 从输入流中读取下一个数字,此时输入流中的内容为 "30"。因此读取的数字为 30

  13. 输出读取到的数字,并在数字后面输出一个空格。输出结果为 10 20 30

  14. 将计数器 i 增加 1,此时 i 的值为 3

  15. 判断 i 是否小于 n。由于 i 目前为 3,而 n3,因此判断为假,程序结束循环。

  16. 程序结束。

因此,最终输出的结果为 10 20 30



cin>>num  输入流cin会调出输入窗体,等待输入结束之后,j将输入流队列中的第一个数值赋给num,并清除已读取的数值(此时输入流队列中少了一个数值),再次执行 cin>>num 时候会将当前输入流的第一个数值赋给num,并清除已读取的数值(此时输入流队列中又少了一个数值)。


在调用 cin 时,如果输入流中已经有了值,那么 cin 会直接读取输入流中的第一个值,而不会等待用户输入。如果输入流中没有值,cin 会暂停程序的执行,等待用户输入,并将用户输入的内容写入输入流中,程序再从输入流中读取输入的值。


例如,假设输入流中有如下值:

12 34 56

如果我们依次调用 cin >> num 三次,那么第一次调用时,cin 会读取输入流中的第一个值 12,第二次调用时,cin 会读取输入流中的第二个值 34,第三次调用时,cin 会读取输入流中的第三个值 56。

在调用 cin 读取输入时,需要注意输入流中的空白符,例如空格、制表符和换行符等,这些空白符会被视为分隔符,用于分隔输入中的不同数据。因此,如果输入数据之间有空白符,cin 会自动跳过这些空白符,读取下一个非空白符的值。如果希望读取空白符,可以使用 getline() 函数来读取整行输入。



野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击