#include<stdio.h>
int?main(){
int?n,m;
while(scanf("%d?%d\n",&n,&m)==2&&!(n==0&&m==0)){
if(n<m&&n<10e6&&m<10e6){
double?sum=0.0;
for(;n<=m;n++){
sum+=1.0/n*n;
}
printf("%.5f\n",sum);
}
else{
printf("Data?is?not?proper.");
}
}
printf("end?of?programme.");
return?0;
},子序列之和問題,保留5位小數,結束標記為n=m=0.輸入包含多種多組數據。望指出錯誤。
3 回答

留得枯荷聽雨聲lyx
TA貢獻51條經驗 獲得超16個贊
說兩個小地方吧,一時scanf("%d%d"),這個地方是輸入,不要加換行,否則輸入會有問題,輸入的時候避免使用這些格式控制字符,容易出錯,第二個是sum+=1.0/(n*n),這個地方注意加上括號,還有我改了一下while 的條件,這樣寫更通用吧
- 3 回答
- 0 關注
- 2132 瀏覽
添加回答
舉報
0/150
提交
取消