karen7710
|
分享:
▼
以下的程式还是有出现错误~请问要怎么更改呢? 复制程式
#include <stdio.h>
#include <stdlib.h>
int grade1(int,int,int,int);
int grade2(int,int,int,int);
int main(void)
{
int a,b,c;
printf("请输入三科成绩:\n");
scanf("%d %d %d",&a,&b,&c);
printf("sum=%d avg=%d\n",grade1(j),grade2(avg));
system("pause");
return 0;
}
int grade1(int a,int b,int c,int &j)
{
int j = a + b + c;
return j;
}
int grade2(int a,int b,int c,int &avg)
{
int avg=j/3;
return avg;
}
|
|
x0
[10 楼]
From:欧洲 | Posted:2007-06-17 13:32 |
|
|
GNUGCC
|
分享:
▲
▼
函式 grade() 要改成这样...
int grade(int a, int b, int c, int *avg) { int sum = a + b + c; *avg = sum / 3; return sum; }
在呼叫时回传值为总和,如果要输出平均的话不用再呼叫一次,只要拿在呼叫 grade() 的时候传入 avg 所指向的变数做输出即可, 例如 :
int vge; // 先宣告一个变数储存平均值
// 假设 3 个成绩在 80, 90, 100 cout << "成续总和为 : " << grade(80, 90, 100, &vge) << ", 平均 : " << vge;
|
|
x0
[11 楼]
From:台湾中华电信HINET | Posted:2007-06-17 14:01 |
|
|
karen7710
|
分享:
▲
▼
你的意思是改成这样吗?可是还是有出现错误~ 复制程式
#include <stdio.h>
#include <stdlib.h>
int grade(int,int,int,int);
int main(void)
{
int a,b,c;
printf("请输入三科成绩:\n");
scanf("%d %d %d",&a,&b,&c);
printf("sum=%d avg=%d\n",grade(sum),grade(avg));
system("pause");
return 0;
}
int grade(int a,int b,int c,int *avg)
{
int sum=a+b+c;
*avg = sum / 3;
return sum;
}
|
|
x0
[12 楼]
From:欧洲 | Posted:2007-06-17 21:13 |
|
|
GNUGCC
|
分享:
▲
▼
可能要改这样...
int main(void) { int a,b,c, avg; printf("请输入三科成绩:\n"); scanf("%d %d %d",&a,&b,&c); printf("sum=%d avg=%d\n",grade(a, b, c, &avg), avg); system("pause"); return 0; }
|
|
x1
[13 楼]
From:台湾中华电信HINET | Posted:2007-06-18 00:45 |
|
|
karen7710
|
分享:
▲
▼
更改过后还是有错误= =" 复制程式
#include <stdio.h>
#include <stdlib.h>
int grade(int,int,int,int);
int main(void)
{
int a,b,c, avg;
printf("请输入三科成绩:\n");
scanf("%d %d %d",&a,&b,&c);
printf("sum=%d avg=%d\n",grade(a,b,c,&avg),avg);
system("pause");
return 0;
}
int grade(int a,int b,int c,int *avg)
{
int sum=a+b+c;
*avg = sum / 3;
return sum;
}
|
|
x0
[14 楼]
From:欧洲 | Posted:2007-06-18 08:35 |
|
|
|