绿萝整棵浸养鱼缸:输入999时为何得负值????

来源:百度文库 编辑:高考问答 时间:2024/05/12 01:54:13
main()
{ unsigned long int a,n,sum;
sum=0;
printf("get in:");
scanf("%d",&n);
for(a=1;a<=n;a++)
sum=a+sum;
printf("sum is:%ld", sum );
}

因为你把无符号数用ld格式(是有符号)形式输出的。
把最后一句改成
printf("sum is:%ul",sum);