C++练习
#include <stdio.h> double result_real, result_imag; void complex_add(double real1, double imag1, double real2, double imag2); void complex_prod(double x1, double y1, double x2, double y2); int main(void) { double imag1, imag2, real1, real2; scanf("%lf %lf", &real1, &imag1); scanf("%lf %lf", &real2, &imag2); complex_add(real1, imag1, real2, imag2); printf("addition of complex is (%f)+(%f)i\n", result_real, result_imag); complex_prod(real1, imag1, real2, imag2); printf("product of complex is (%f)+(%f)i\n", result_real, result_imag); return 0; } void complex_add(double real1, double imag1, double real2, double imag2) { result_real = real1 + real2; result_imag = imag1 + imag2; } void complex_prod(double real1, double imag1, double real2, double imag2) { result_real = real1 * real2 - imag1 * imag2; result_imag = real1 * imag2 + real2 * imag1; }
#include <stdio.h> double fac(); int main(void) { int i, n; double Sum = 0; scanf("%d", &n); for (i=1; i<=n; i++) { Sum += 1 / fac(); } printf("S=1/1!+1/2!+...+1/%d!=%.15f", n, Sum); return 0; } double fac() { static double f = 1; static int i = 0; i++; f *= i; return f; }
#include<stdio.h> double m_tax(double salary,int month); int main() { double money,tax; int i; for(i=1;i<=12;i++) { scanf("%lf",&money); tax=m_tax(money,i); printf("the sum of %d months tax is %.2f\n",i,tax); } return 0; } double m_tax(double salary, int month) { static double total_salary = 0; // 累计工资 static double last_tax = 0; // 上个月累计已缴税额 total_salary += salary; double exempt = 5000 * month; // 累计免征额 double taxable_income = total_salary - exempt; // 累计应纳税所得额 if (taxable_income <= 0) return 0; double tax; if (taxable_income <= 36000) tax = taxable_income * 0.03; else if (taxable_income <= 144000) tax = taxable_income * 0.10 - 2520; else if (taxable_income <= 300000) tax = taxable_income * 0.20 - 16920; else if (taxable_income <= 420000) tax = taxable_income * 0.25 - 31920; else if (taxable_income <= 660000) tax = taxable_income * 0.30 - 52920; else if (taxable_income <= 960000) tax = taxable_income * 0.35 - 85920; else tax = taxable_income * 0.45 - 181920; return tax; }
#include <stdio.h> float Max=0; int J=0; float fun(float array[],int n); int main() { float a[10],ave; int i=0; for(i=0;i<10;i++) scanf("%f",&a[i]); ave=fun(a,10); printf("ave=%.2f\n",ave); printf("max=%.02f\n",Max); printf("Total:%d\n",J); return 0; } float fun(float array[], int n) { float sum = 0; int i; // 计算总分并找出最高分 Max = array[0]; for (i = 0; i < n; i++) { sum += array[i]; if (array[i] > Max) { Max = array[i]; } } // 统计得最高分的人数 J = 0; for (i = 0; i < n; i++) { if (array[i] == Max) { J++; } } return sum / n; }
/* 用函数实现财务现金记账。先输入操作类型choice(1收入,2支出,0结束),再输入操作金额cash,计算现金剩余额balance,可多次操作直到输入操作类型为0时结束。要求定义并调用函数,其中现金收入与现金支出分别用不同函数实现。*/ #include<stdio.h> double balance; /* 定义全局变量,保存现金余额 */ void income(double cash); void expend(double cash); int main(void) { int choice; double cash; cash = 0; scanf("%d", &choice); while (choice != 0){ if (choice == 1 || choice == 2) { scanf("%lf", &cash); if (choice == 1){ income(cash); }else{ expend(cash); } printf("balance:%.2f\n", balance); } scanf("%d", &choice); } return 0; } void income(double cash) { balance += cash; } void expend(double cash) { balance -= cash; }
05和07有格式错误,未修改正确

浙公网安备 33010602011771号