在屏幕一行中的字符会保留在缓冲区,例如
1 2 3 4 5 6
scanf把1读入存入数组中,getchar把空格读入,以此往后遍历。
所以我们只需判断getchar()得到的是否是'\n'即可。
for( i = 0; i < n; i++) { scanf("%d",&cur); array[i] = cur; char c = getchar(); if (c == '\n') { break; } }
刚入坑的编程新手,有错欢迎指正批评。
谢谢~
在屏幕一行中的字符会保留在缓冲区,例如
1 2 3 4 5 6
scanf把1读入存入数组中,getchar把空格读入,以此往后遍历。
所以我们只需判断getchar()得到的是否是'\n'即可。
for( i = 0; i < n; i++) { scanf("%d",&cur); array[i] = cur; char c = getchar(); if (c == '\n') { break; } }
刚入坑的编程新手,有错欢迎指正批评。
谢谢~
本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。