第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

C語言入門6-12綜合練習 出現這個錯誤term does not evaluate to a function

#include<stdio.h>
int?main()
{
?????
	int?num;
	double?average;
	int?score[10]={67,98,75,63,82,79,81,91,66,84};
	num=score[0]+score[1]+score[2]+score[3]+score[4]+score[5]+score[6]+score[7]+score[8]+score[9];
	average=num/10;
	printf("總分:num=%d\n",num);
	printf("平均分:average=%d\n",average);
????
???????int?i,j;
???for(i=8;i>=0;i--)
???{
	????for(j=0;j<=i;j++)
		{
???????????if(score[j]<score[j+1])
		???{
			???int?a;
			???a=score[j];
				score[j]=score[j+1];
				score[j+1]=a;
		???}
		}

???}

???

	for(i=0;i<=9;i++)
	{
		printf("%d?\n",score(i));
		
	}
	
????printf("最高分:%d\n",score(0));
	printf("最低分:%d\n",score(9));
???return?0;
}

這是我寫的代碼 ?可是放在VC6.0編譯時 :

?printf("最高分:%d\n",score(0));

?printf("最高分:%d\n",score(0));

printf("最低分:%d\n",score(9));

這三句代碼同時出現相同的錯誤:term does not evaluate to a function

我不知道怎么改 麻煩大神求解一下


正在回答

2 回答

問題1:average定義的是double 類型,輸出卻是整型,沒對上,把%d改成%f(控制下小數點位數可改為%.2f)。(還有這里average其實定義成float類型就好了,沒必要到double)。

問題2:就是問題問的,排序和最低最高分輸出提示錯誤。

這是因為這三個score(i),score(0),score(9)出錯了,這是要輸出數組元素,是score[i],score[0],score[9]才對

問題3:把問題1和2改了之后,程序編譯后,你會發(fā)現輸出的平均分:average=78.00(按%.2f控制2位小數點位數輸出的情況),但實際相除下來,average=78.60才對,問題源自average=num/10,num是整型,10也是,所以num/10也是整型,雖然定義了average為浮點型,但這時num/10還是取了整值再賦給average。解決辦法1就是強制轉換數據類型:average=(double) num/10 【注意這里寫成(double)(num/10)可不對。還可以考慮如(int)(x+y)寫成(int)x+y有何區(qū)別】。辦法2就是average=(double) num/10.0【直接把除數10變成浮點型,這樣方便,其實這里相當于average=num/(double)10】。



0 回復 有任何疑惑可以回復我~
#1

落葉傷劍 提問者

1. 大神 請受小弟一拜!你圓滿解決了我的問題 剛才編譯已經通過了 得到了想要的結果 2. 現在越來越感覺是 當局者迷旁觀者清??!自己寫的程序 有了錯怎么都看不出來 可是一旦問題被大神指點后 發(fā)現都是些低級錯誤 一看就懂 問題1和問題3在《C語言入門》里都講過 問題2實在是太低級 但是自己就是看不出來!想不到!好笨! 3.另外上面這個程序 本寶寶花了一個半小時才寫出來 而且我也知道求總分絕對不是我上面那種笨方法(應該用到for循環(huán)) 但是想不出來 哎 學完了入門課 感覺基礎還是不扎實 還得努力!
2016-12-04 回復 有任何疑惑可以回復我~
#2

落葉傷劍 提問者

對了 大神 你的問題3辦法2 里的average=(double) num/10.0中的(double)應該可以省去 %f可以存6位小數 好像是吧
2016-12-04 回復 有任何疑惑可以回復我~
#3

慕后端3326841 回復 落葉傷劍 提問者

這里(double)確實不該要,本來把10寫作10.0就是為了簡單嘛,應該省去,我這里多余了。 %f默認的保留6位小數。
2016-12-04 回復 有任何疑惑可以回復我~

http://img1.sycdn.imooc.com//5843f8dd00017d5906630431.jpg

已經運行成功了 ? ?么么噠 ?嘻嘻嘻 ? ?不努力就去死!?。?!

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
C語言入門
  • 參與學習       926902    人
  • 解答問題       21532    個

C語言入門視頻教程,帶你進入編程世界的必修課-C語言

進入課程

C語言入門6-12綜合練習 出現這個錯誤term does not evaluate to a function

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號