大神幫我看看代碼
#include <stdio.h>
void printscore(int score[n])
{
? ? int i;
? ? printf("\n");
? ? for(i=0;i<n;i++)
? ? ? ? {
? ? ? ? ? ? printf("%d",score[i]);
? ? ? ? }
? ? printf("\n");
}
int gettotalscore(int score[n])
{
? ? int sum=0;
? ? int i;
? ? for(i=0;i<n;i++)
? ? {
? ? ? ? sum+=score[i];
? ? }
? ? return sum;
}
int main()
{
? ? int score[n]={67,98,75,63,82,79,81,91,66,84};
? ? int sum;
? ? printf("總分是:%d",sum);
? ? return 0;
}
運(yùn)行錯(cuò)誤;還有void那一段能省略么?它為什么存在?
2018-03-06
我的理解是:
首先你的n并沒有聲明和初始化;
sum=gettotalscore(score[]);
當(dāng)你以數(shù)組作為參數(shù)時(shí),是把數(shù)組名傳入,即sum=gettotalscore(score);
void那段可以省略,它的作用是將數(shù)組遍歷輸出,你如果在main函數(shù)中調(diào)用,那么就會(huì)將arr[]輸出;
如若存在錯(cuò)誤或不足,請(qǐng)多指教
2018-01-31
大哥,你的代碼我也看了 ?我試了 能運(yùn)行成功。我按照自己的想法試著修改,依舊失敗。我真的很笨,你就直接告訴我問題出在哪里,定義函數(shù),引入函數(shù)哪里錯(cuò)了。我后來主函數(shù)里 加了 ? sum=gettotalscore(score[]);
2018-01-30
#include <stdio.h>
void printscore(int score[],int n)
{
? ? int i;
? ? printf("\n");
? ? for(i=0;i<n;i++)
? ? ? ? {
? ? ? ? ? ? printf("%d\t",score[i]);
? ? ? ? }
? ? printf("\n");
}
int gettotalscore(int score[],int n)
{
? ? int sum=0;
? ? int i;
? ? for(i=0;i<n;i++)
? ? {
? ? ? ? sum+=score[i];
? ? }
? ? return sum;
}
int main()
{
? ? int score[]={67,98,75,63,82,79,81,91,66,84};
? ??
printscore( score, 10);
?printf("總分是:%d",gettotalscore( score, 10));
? ? return 0;
}
/*這是我自己改完的,void開頭的函數(shù)是顯示分?jǐn)?shù),,,,,,,,,,,,,,代碼粘貼上就可以看結(jié)果;
給個(gè)積分。。。。。,*/