当我输入像 3,000,000,000(不带逗号)这样的大数字时,我没有得到正确的结果。无论我输入多大的数字,显示的数字都不大于 9 位。
问题如下:
执行以下计算,其中系统只接受从
0
到(ie ) 的正整数,并将结果显示为 VDU 输出:。3x109
3,000,000,000
y = 3x2 - 2x + 6
如果数字是整数或在范围内,则无需检查算法。我们假设它总是正确输入。但是,您必须尝试使用正确的数据类型进行编码。请检查书中的数据类型以使用在定义范围内的正整数
这是代码
#include <stdio.h>
#include <stdlib.h>
int main()
{
unsigned x=0, y=0;
printf("Enter a positive number between 0 to 300000000\n");
scanf("%u",&x);
y=(3*x*x)-(2*x)+6;
printf("\n\nThe value of y is %u",y);
return 0;
}