寫的太亂了,函數(shù)名和變量名最好不要一樣,很亂啊,而且你傳進(jìn)來的參數(shù)是x的值,里面又用n,最嚴(yán)重是算法本身就錯了
創(chuàng)新互聯(lián)建站是一家集網(wǎng)站建設(shè),石門企業(yè)網(wǎng)站建設(shè),石門品牌網(wǎng)站建設(shè),網(wǎng)站定制,石門網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,石門網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
int?fac(int?n)
{
if?(n?==?0?||?n?==?1)
return?1;
return?n?*?fac(n-1);
}
#includestdio.h
#define N 100
void fun(int *a,int n) { int i,k; k=a[n-1]; for ( i=n-1;i0;i-- ) a[i]=a[i-1]; a[0]=k; }
void main() { int a[N],n,m,i;
printf("請輸入n: "); scanf("%d",n); if ( n=N ) n=N;
printf("請輸入%d個整數(shù): ",n); for ( i=0;in;i++ ) scanf("%d",a[i]);
printf("請輸入后移數(shù)據(jù)個數(shù): "); scanf("%d",m);
for ( i=0;im;i++ ) fun(a,n);
for ( i=0;in;i++ ) printf("%d ",a[i]); printf("\n");
}
#includestdio.h
void studentaver(double c[3][2])
{
int i,j;
double sum;
for(i=0;i3;i++)
{
for(j=0,sum=0;j2;j++)
{
sum+=c[i][j];
}
printf("第 %d 個:%lf",i+1,sum/2);
printf("\n");
}
}
void subjectaver(double c[3][2])
{
int i,j;
double sum;
for(i=0;i2;i++)
{
for(j=0,sum=0;j3;j++)
{
sum+=c[j][i];
}
printf("第 %d 個科目:%lf",i+1,sum/3);
printf("\n");
}
}
int main()
{
double c[3][2],sum;
int p,q,i,j;
printf("輸入學(xué)生的成績\n");
for(i=0;i3;i++)
{
for(j=0;j2;j++)
{
scanf("%lf",c[i][j]);
}
}
printf("每個學(xué)生的平均分是:\n");
studentaver(c);
printf("每個科目的平均分\n");
subjectaver(c);
return 0;
}
指一下樓主的問題:1、sum并沒有賦初值清零,這是初學(xué)者易錯的地方;2、還有并不是sum加完一個數(shù)后就輸出的,樓主你自己看你的代碼,在調(diào)用函數(shù)里的第二層循環(huán),你加一次就輸出一次,這是錯的;3、在主函數(shù)里的第二層函數(shù)中,應(yīng)該是執(zhí)行2次,而樓主的卻是小于等于2,執(zhí)行了3次!從0、1、2一共三次,難度樓主連調(diào)試能力都沒有嗎?