計程考古題 程式寫作部分
// 二維陣列加減
#include <stdio.h>
#define SIZE_OF_I 2
#define SIZE_OF_J 3
void fadd(float a[SIZE_OF_I][SIZE_OF_J],float b[SIZE_OF_I][SIZE_OF_J]);
void fsub(float a[SIZE_OF_I][SIZE_OF_J],float b[SIZE_OF_I][SIZE_OF_J]);
void main()
{
float a[SIZE_OF_I][SIZE_OF_J],b[SIZE_OF_I][SIZE_OF_J];
int i,j;
printf("please input the first array:\n");
for(i=0;i<SIZE_OF_I;i++)
{
for(j=0;j<SIZE_OF_J;j++)
{
printf("a[%d][%d]= ",i+1,j+1);
scanf("%f",&a[i][j]);
}
}
printf("please input the second array:\n");
for(i=0;i<SIZE_OF_I;i++)
{
for(j=0;j<SIZE_OF_J;j++)
{
printf("b[%d][%d]= ",i+1,j+1);
scanf("%f",&b[i][j]);
}
}
fadd(a,b);
fsub(a,b);
}
void fadd(float a[SIZE_OF_I][SIZE_OF_J],float b[SIZE_OF_I][SIZE_OF_J])
{
int i,j;
float ans[SIZE_OF_I][SIZE_OF_J];
printf("\narray a + array b =\n");
for(i=0;i<SIZE_OF_I;i++)
{
for(j=0;j<SIZE_OF_J;j++)
{
ans[i][j]=a[i][j]+b[i][j];
printf("%f\t",ans[i][j]);
}
printf("\n");
}
}
void fsub(float a[SIZE_OF_I][SIZE_OF_J],float b[SIZE_OF_I][SIZE_OF_J])
{
int i,j;
float ans[SIZE_OF_I][SIZE_OF_J];
printf("\narray a - array b =\n");
for(i=0;i<SIZE_OF_I;i++)
{
for(j=0;j<SIZE_OF_J;j++)
{
ans[i][j]=a[i][j]-b[i][j];
printf("%f\t",ans[i][j]);
}
printf("\n");
}
}
=====
// 多項式
#include <stdio.h>
#include <stdlib.h>
double poly(int,double,double *);
void main()
{
int n,i;
double x,ans;
double *ai;
printf("please input the value of n: ");
scanf("%d",&n);
ai=(double *)calloc(n+1,sizeof(double));
printf("please input the value of x: ");
scanf("%lf",&x);
for(i=0;i<=n;i++)
{
printf("please input the value of a%d: ",i);
scanf("%lf",&ai[i]);
}
ans=poly(n,x,ai);
printf("ans=%lf\n",ans);
}
double poly(int n,double x,double *ai)
{
int i;
double sum,term_x;
for(sum=0,i=0,term_x=1;i<=n;i++)
{
sum+=ai[i]*term_x;
term_x*=x;
}
return sum;
}
===
// 向量加減乘
#include <stdio.h>
void fadd(float [3],float [3],float [3]);
void fsub(float [3],float [3],float [3]);
void fmul(float [3],float [3],float [3]);
void main()
{
float a[3],b[3],add[3],sub[3],mul[3];
int i;
printf("please input the first 3D vector:\n");
for(i=0;i<3;i++)
{
printf("a[%d]= ",i+1);
scanf("%f",&a[i]);
}
printf("please input the second 3D vector:\n");
for(i=0;i<3;i++)
{
printf("b[%d]= ",i+1);
scanf("%f",&b[i]);
}
fadd(a,b,add);
fsub(a,b,sub);
fmul(a,b,mul);
printf("\nvector a + vector b =\n");
for(i=0;i<3;i++)
printf("%f\t",add[i]);
printf("\nvector a - vector b =\n");
for(i=0;i<3;i++)
printf("%f\t",sub[i]);
printf("\nvector a * vector b =\n");
for(i=0;i<3;i++)
printf("%f\t",mul[i]);
}
void fadd(float a[3],float b[3],float ans[3])
{
int i;
for(i=0;i<3;i++)
ans[i]=a[i]+b[i];
}
void fsub(float a[3],float b[3],float ans[3])
{
int i;
for(i=0;i<3;i++)
ans[i]=a[i]-b[i];
}
void fmul(float a[3],float b[3],float ans[3])
{
int i;
for(i=0;i<3;i++)
ans[i]=a[i]*b[i];
}
===
其他題目晚點po 先唸點書
--
※ 發信站: 批踢踢實業坊(ptt.csie.ntu.edu.tw)
◆ From: 140.112.26.89
推
推140.112.249.188 06/15, , 1F
推140.112.249.188 06/15, 1F