新聞中心
在c語言中用調(diào)用函數(shù)求三個同學三科的總成績,怎么編程
#include?stdio.h?
10年積累的成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認識你,你也不認識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有尖草坪免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
#define?N?100
/*定義學生結(jié)構(gòu)體*/????
struct?Student????
{????
int??ID;???
char?Name[20];???
float?Mark1;????
float?Mark2;??
float?Mark3;?
float?Sum;????
};???
/*聲明學生數(shù)組及學生數(shù)量*/????
struct?Student?students[N];????
//int?num=0;??
/*求總分*/????
float?Sums(struct?Student?stu)???
{????
return?stu.Mark1+stu.Mark2+stu.Mark3;??
}????
/*輸入學生信息*/????
int?Student_Input(){??
int?num=0;
while(1){????
//printf("請輸入學號:");???
students[num].ID=num+1;?//可以自行將學號改為手工輸入
printf("請輸入姓名:");?
scanf("%s",students[num].Name);??
getchar();??
printf("請輸入成績1:");?
scanf("%f",students[num].Mark1);?
getchar();??
printf("請輸入成績2:");?
scanf("%f",students[num].Mark2);?
printf("請輸入成績3:");?
scanf("%f",students[num].Mark3);?
getchar();??
students[num].Sum=Sums(students[num]);???
num++;??
printf("是否繼續(xù)?(y/n)");?//繼續(xù)輸入數(shù)據(jù)?
if?(getchar()=='n'){??
break;??
}????
}??
return?num;??
}??
/*輸出學生信息*/???
void?Student_Display(int?n)???
{???
int?i;????
printf("%10s%10s%8s%8s%8s%8s\n","學號","姓名","成績","成績","成績","總成線");??
printf("---------------------------------------------------------\n");??
for?(i=0;in;i++)??
{??
printf("%10d%10s%8.2f%8.2f%8.2f%8.2f\n",students[i].ID,students[i].Name,??
students[i].Mark1,students[i].Mark2,students[i].Mark3,students[i].Sum);??
}??
}?
/*主程序*/????
int??main(){?
int?n=0;
n=Student_Input();
Student_Display(n);?
return?0;??
}
C語言中怎樣調(diào)用函數(shù)(舉個例子)
C語言中調(diào)用函數(shù)的方法及步驟:
工具/原料:C語言
1、首先需要輸入想要調(diào)用的函數(shù)。
2、然后當輸入一個括號后,即可觀察他的參數(shù)。
3、接著在對應(yīng)的參數(shù)中輸入?yún)?shù)值。
4、然后,系統(tǒng)會發(fā)生一個警告。
5、接著需要調(diào)用它相應(yīng)的頭文件。
6、最后再次編譯,發(fā)現(xiàn)沒有任何警告和錯誤即可。
C語言如何調(diào)用函數(shù)
C語言中,函數(shù)調(diào)用的一般形式為:
函數(shù)名(實際參數(shù)表)
對無參函數(shù)調(diào)用時則無實際參數(shù)表。實際參數(shù)表中的參數(shù)可以是常數(shù)、變量或其它構(gòu)造類型數(shù)據(jù)及表達式。各實參之間用逗號分隔。
#includestdio.h
int?fun(int?x,?int?y);?//?函數(shù)聲明,如果函數(shù)寫在被調(diào)用處之前,可以不用聲明
void?main()
{
int?a=1,?b=2,?c;
c?=?fun(a,?b);?//?函數(shù)的調(diào)用,調(diào)用自定義函數(shù)fun,其中a,b為實際參數(shù),傳遞給被調(diào)用函數(shù)的輸入值
}
//?自定義函數(shù)fun
int?fun(int?x,?int?y)??//?函數(shù)首部
{??//?{}中的語言為函數(shù)體
return?xy???x?:?y;??//?返回x和y中較大的一個數(shù)
}
擴展資料
C語言中不允許作嵌套的函數(shù)定義。因此各函數(shù)之間是平行的,不存在上一級函數(shù)和下一級函數(shù)的問題。但是C語言允許在一個函數(shù)的定義中出現(xiàn)對另一個函數(shù)的調(diào)用。
這樣就出現(xiàn)了函數(shù)的嵌套調(diào)用。即在被調(diào)函數(shù)中又調(diào)用其它函數(shù)。這與其它語言的子程序嵌套的情形是類似的。其關(guān)系可表示如圖。
圖表示了兩層嵌套的情形。其執(zhí)行過程是:執(zhí)行main函數(shù)中調(diào)用a函數(shù)的語句時,即轉(zhuǎn)去執(zhí)行a函數(shù),在a函數(shù)中調(diào)用b 函數(shù)時,又轉(zhuǎn)去執(zhí)行b函數(shù),b函數(shù)執(zhí)行完畢返回a函數(shù)的斷點繼續(xù)執(zhí)行,a函數(shù)執(zhí)行完畢返回main函數(shù)的斷點繼續(xù)執(zhí)行。
參考資料:函數(shù)調(diào)用_百度百科
編寫C語言程序:給定學生成績,調(diào)用相關(guān)函數(shù)
#include stdio.h
#define N 1000
void get_score(int a[]);
void put_score(int a[]);
float average(int a[]);
void bubble_sort(int a[]);
int max_score(int a[]);
int min_score(int a[]);
int main()
{
int a[N];
get_score(a);
put_score(a);
printf("average score: %.4f\n",average(a));
bubble_sort(a);
put_score(a);
printf("max score: %d\n",max_score(a));
printf("min score: %d\n",min_score(a));
return 0;
}
void get_score(int a[])
{
int i = 0;
int x;
while (1)
{
scanf("%d",x);
a[i] = x;
if (x == -1) //輸入為-1時標志輸入結(jié)束
break;
i++;
}
}
void put_score(int a[])
{
int i = 0;
while (a[i] != -1)
{
printf("%3d",a[i]);
i++;
}
printf("\n");
}
float average(int a[])
{
int i = 0;
int sum = 0;
float aver;
while (a[i] != -1)
{
sum += a[i];
i++;
}
aver = (float)sum/(float)i;
return aver;
}
void bubble_sort(int a[])
{
int i, j, n, flag;
int temp;
i = 0;
while (a[i] != -1)
i++;
n = i;
flag = 1;
for (i = 0; i n-1flag == 1; i++)
{
flag = 0;
for (j = 0; j n-i; j++)
{
if (a[j] a[j+1])
{
flag = 1;
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
if (flag == 0)
return;
}
}
int max_score(int a[])
{
int max = a[0];
int i = 1;
for (; a[i] != -1; i++)
{
if (a[i] max)
max = a[i];
}
return max;
}
int min_score(int a[])
{
int min = a[0];
int i = 1;
for (; a[i] != -1; i++)
{
if (a[i] min)
min = a[i];
}
return min;
}
分享題目:c語言中成績調(diào)用函數(shù) c語言調(diào)用函數(shù)求平均成績
網(wǎng)站URL:http://fisionsoft.com.cn/article/ddgcscp.html