,所以我在C:用户输入两个整数中获得了以下任务,我们将其称为N1和N2,以便N1< = n2。该程序必须在N1和N2之间打印所有可能的整数(包括N1和N2),并且数字中的所有数字都在增加其价值。例如,如果用户输入1234和1260,则该程序将打印1236,1237,1238,1239,而不是1240,因为0小于4。然后它将打印1356,1357,1358,1359。
我不允许使用数组(否则非常容易),功能,甚至功率功能。所以我想出了下一个伪代码:
- 制作一个数字N1的循环,并计算其具有数字的数量。
- 然后制作一个循环,将N1(数字1)次(数字1)划分,然后在其剩余结果的情况下将其划分为%。此时,您将留下一些数字。
- 然后再次服用n1,然后将其(数字2次)分开,然后在结果的其余部分中,它将达到%。此时,您还有另一个数字。
- 比较两个数字。如果第一个数字较小,则第二位数字,请通过促进数字位置(DigitsNum-)继续对数字进行夸大。
- 在循环步骤2-3-4中做。
- 如果一切都检查了,请打印N1;
- 促进N1(N1 ),(最多N2)
- 再次循环一切。
问题在于,借助我可以使用的所有修复程序,我发现我的解决方案很难实现,一旦开始,我就会遇到一个大烂摊子。关于如何改进的任何建议?
希望它对您有帮助。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int num;;
int num2;
int flag=-1;
int i=0,j=0;
int rem,rem2;
printf("Enter First Numbern");
scanf("%d",&num);
printf("Enter Second Numbern");
scanf("%d",&num2);
if(num>num2)
{
printf("Wrong inputs have givenn");
exit(0);
}
int div=num2-num;
for(i=0;i<=div;i++)
{
num2=(num+i);
rem=(num2)%10;
num2/=10;
rem2=(num2)%10;
if(rem>rem2)
{
printf("....%dn",num+i);
}
}
return 0;
}