本人大一软件工程新生,刚开始接触C语言编程,希望各位码界前辈多多指教,多提一些对我的程序的意见,以便我在编程的道路上有所进步。
#include <stdio.h> #define N 6//程序位数调整处 float A(int fration); int main() { printf("*********本产品暂时只支持六个学科的计算************\n"); printf("如果计算单科绩点请输入1,如果计算平均绩点请输入2\n"); int n; scanf("%d",&n); switch(n) { case 1: { printf("请输入该课程成绩:\n"); int fration; float grade; scanf("%d",&fration); grade=A(fration); printf("你这科的绩点为%f\n",grade); break; } case 2: { int b[N],a[N],i; printf("分别输入科目1 2 3 4 5 6的学分:\n");//需调整 float c[N],sum; for(i=0;i<N;i++) { scanf ("%d",&b[i]); } printf("分别输入科目1 2 3 4 5 6你所取得的成绩:\n");//需调整 for(i=0;i<N;i++) { scanf("%d",&a[i]); } for(i=0;i<N;i++) { c[i]=A(a[i]); } //printf("c[]=%f",c[0]);调试程序 float aver[6]; int add=0; for(i=0;i<6;i++) { add=add+b[i]; } //printf("add=%d",add);调试程序 for(i=0;i<N;i++) { aver[i]=b[i]*(c[i]/add); } for(i=0;i<N;i++) { sum=sum+aver[i]; } printf("你的平均绩点是%f\n",sum); } } printf("按任意数字结束\n"); scanf("%d",&n); return 0; } //以下部分为子函数部分 float A(int fration) { int grade; grade=(fration-50)/10; return grade; }