使用C++提取数字中的奇数时代码卡顿,求问题原因及解决方法
问题分析与解决
你的代码出现卡顿是因为while循环缺少花括号,导致循环体仅包含k=number%10;这一行代码。number=number/10;和后续判断语句不在循环体内,number的值永远不会被更新,程序陷入死循环,因此出现卡顿。
修正后的代码
#include <iostream> using namespace std; int main () { int number, k=0; cout << "enter the numbers: "; cin >> number; while(number!=0) { k=number%10; if(k%2!=0) cout<<k<<" "; number=number/10; } return 0; }
改动说明
- 给while循环添加一对花括号
{},将原本零散的语句包裹为完整的循环体,确保每次循环都会执行number=number/10;来更新变量值,直到number变为0时退出循环。
内容的提问来源于stack exchange,提问作者ignitedZero
相关产品推荐
相关产品推荐

