#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位小數(shù),結(jié)束標(biāo)記為n=m=0.輸入包含多種多組數(shù)據(jù)。望指出錯(cuò)誤。
3 回答

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