死循環(huán)了,在
寧德網站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網頁設計、網站建設、微信開發(fā)、APP開發(fā)、響應式網站建設等網站項目制作,到程序開發(fā),運營維護。成都創(chuàng)新互聯(lián)公司2013年至今到現(xiàn)在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選成都創(chuàng)新互聯(lián)公司。
printf("dasdw"); // 運行后輸出不了!
后面加上這個,
getchar();
dasdw打印出來了,然后while循環(huán)就一直做
在函數(shù)中(包括主函數(shù))不能定義和函數(shù)名相同的變量,一般情況下函數(shù)名的定義需要有實際意義,讓編程者能一看便知函數(shù)的功能(變量也是這樣),如果是需要多個單詞才能表達意思就使用下劃線連接兩個或多個單詞,或者直接寫在一起每個單詞首字母大寫,這樣定義主要是為了讓程序看起來更加簡潔明了,讓其他人能迅速了解程序功能,便于修改
函數(shù)先使用后定義了。
C語言要求調用某一個函數(shù)之前,一定要知道該函數(shù)的定義。
兩者修改方法:
//一、將函數(shù)的定義放在調用之前,這樣調用的時候就知道該函數(shù)的定義了
#includestdio.h
void?cheer()?{
printf?("cheer");
}
int?main()?{
cheer();
}?
//二、在調用函數(shù)之前,顯示聲明該函數(shù)的類型
#includestdio.h
int?main()?{
void?cheer();
cheer();
}?
void?cheer()?{
printf?("cheer");
}
#includestdio.h
#includestdlib.h
#define M 100
#define N 2 //不要介意這兩個數(shù),是為了方便控制輸入數(shù)據(jù)而定義的.
void input_stu(double score[M][N],int n);
void aver_stu(double as[],int n);
void aver_cour(double ac[],int n);
void output_stu(double as[],double ac[],int n);
double score[M][N];
int main(void)
{
int n;
// double score[M][N]; //這個成績改為全局變量,明顯,你在子函數(shù)中要用到這些數(shù)據(jù),
//放到上面,這是問題1
double as[M],ac[N];
printf("請輸入學生人數(shù):");
scanf("%d",n);
input_stu(score,n);
aver_stu(as,n);
aver_cour(ac,n);
output_stu(as,ac,n);
return 0;
}
void input_stu(double score[M][N],int n) //這里輸入的數(shù)據(jù)放了全局數(shù)組score中,下面才有數(shù)據(jù)去計算,此段沒有問題
{
int i,j;
printf("輸入學生N門成績") ;
for(i=0;in;i++)
{
printf("\n%d:\n",i+1);
for(j=0;jN;j++)
scanf("%lf",score[i][j]);
}
}
void aver_stu(double as[],int n)
{
int i,j;
//double score[M][N] ,
//有問題2這里定義的score只會在這個函數(shù)過程中生效,。。。里面全是0
//所以下面計算值全是0 ,下面課目平均分函數(shù)也是這樣。都要去掉,才能用到全局score中保存的輸入數(shù)據(jù)
double sum;
for(i=0;in;i++){
sum=0;
for(j=0;jN;j++){
sum=sum+score[i][j];
as[i]=sum/N;
}
}
}
void aver_cour(double ac[],int n)
{
int i,j;
double s;
//double score[M][N] ; 有問題3,同問題2
for(j=0;jN;j++)
{
s=0;
for(i=0;in;i++)
s=s+score[i][j];
ac[j]=s/n;
}
}
void output_stu(double as[],double ac[],int n)
{
int i,j;
//double score[M][N];//有問題4
for(i=0;in;i++){
printf("\n第%d學生平均分:%.2lf\n",i+1,as[i]);
}
for(j=0;jN;j++){
printf("課程平均分:%.2lf ",ac[j]);
printf("\n");
}
}
//現(xiàn)在你再試。保證一試OK。
//要分清 變量的作用域!!!
//把函數(shù)中的變量想象為函數(shù)的私有財產,全局變量想象為公有財產,
//一句話可以理解為:我的就是我的,阿爺?shù)囊彩俏业摹?/p>
網站名稱:為什么c語言進不去函數(shù) c語言為什么不能打開文件
鏈接分享:http://chinadenli.net/article36/dogcpsg.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供網站策劃、手機網站建設、做網站、定制開發(fā)、云服務器、營銷型網站建設
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)