在解答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 人评分
简单的a+b (C++语言代码)浏览:860 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:745 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:563 |
C语言程序设计教程(第三版)课后习题8.7 (C语言代码)浏览:916 |
C语言考试练习题_保留字母 (C语言代码)浏览:713 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:546 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:677 |
罗列完美数 (C语言代码)浏览:491 |
Hello, world! (C语言代码)浏览:826 |
矩形面积交 (C语言代码)浏览:1313 |