c++:4和8是怎么算出来的?不是3和5吗?

2025-03-04 08:44:09
推荐回答(4个)
回答1:

你代码错的:
改正如下:
#include
using namespace std;

int main()
{

unsigned short small; // unsigned拼写错误
unsigned long large; //
unsigned long skip; //
unsigned long target;
const unsigned short MAX=65535; //MAXSMALL有错误提示错误
cout<<"enter a small number:";
cin>>small;
cout<<"enter a large number:";
cin>>large;
cout<<"enter a skip number:";
cin>>skip;
cout <<"enter a target number:";
cin>>target;

cout<<"\n";
while(small{
small++;
if(small%skip==0)
{
cout<<"skipping on"<continue;
} //少个括号
if (large==target)
{cout<<"Target reached!";
break;
}
large-=2;
}
cout<<"\nSmall:"<return 0;
}

问题解答:
small large
初值: 2 20
循环中变化: 3 18
4 18
(small对4取余为0,输出:skipping on 4,由continue,large值不变)
5 16
6 14
7 12
8 12
(small对4取余为0,输出:skipping on 8,由continue,large值不变)
9 10
10 8
最后一组由于small大于 large,跳出while循环(large未到达目标6)。
所以最后输出small:10 large:8 。

回答2:

程序里是if(small%skip==0)
就输出small, 你输入的skip是4,因为4%4==0,8%4==0,所以就输出4和8了。要不然就是程序错了,最好能说说是求什么的。

回答3:

你的代码不正确啊。。。没法运行吧?
初学者 个人感觉还是学PASCAL比较好
严谨并且简洁的语法风格 容易掌握 并且能行成良好的书写习惯

回答4:

你的代码貌似是错的不能运行呀!!!你的程序要实现啥功能呀?