在解答Sn=aaa+aa+a题目时候,用到了math.h的pow函数,发现:这个函数是double数据,开始用int数据进行编程,但在pow(10,n-1)当n-1为奇数时结果会小1,但改成float Sn后就正确了。
#include <stdio.h>
#include <math.h>
int main(){
int n,temp;
float Sn; /*若改成int Sn;以及输出时用%d就会导致错误*/
while(n){
temp=n;
while(temp){
Sn += 2*pow(10,temp-1)
temp--;
}
n--;
}
printf("%.0f\n",Sn);
return 0;
}
原因不明!!!!
0.0分
0 人评分
2006年春浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:835 |
Tom数 (C语言代码)浏览:1913 |
化学品问题 (C语言代码)浏览:1252 |
2005年春浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:575 |
C语言训练-列出最简真分数序列* (C语言代码)浏览:487 |
【计算两点间的距离】 (C语言代码)浏览:867 |
分糖果 (C++代码)浏览:1361 |
淘淘的名单 (C语言代码)答案错误???浏览:574 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:507 |
C二级辅导-等差数列 (C语言代码)浏览:792 |