文章目录
1. 第1题
1.1 题目描述
开发一个包含你需要的预处理定义的头文件。
1.2 编程源码
test.c
#include<stdio.h>
#include"diceroll.h"
int main(void){
printf("%d\n", N);
return 0;
}
diceroll.h
#ifndef DICEROLL_H_
#define DICEROLL_H_
#define N 30
#endif
1.3 结果显示

2. 第2题
2.1 题目描述
两个数的调和平均数这样计算:先得到两数的倒数,然后计算两个倒数的平均值,最后取计算结果的倒数。使用#define指令定义一个宏函数,,执行该运算。编写一个简单的程序测试该宏。
2.2 编程源码
#include<stdio.h>
#define TIAO(x,y) 1.0/((1.0/(x)+1.0/(y))/2)
int main(void){
printf("%.2f\n", TIAO(1,2));
return 0;
}
2.3 结果显示

3. 第3题
3.1 题目描述
极坐标向量的模(即向量的长度)和向量相对于X轴逆时针旋转的角度来描述该向量。直角坐标用向量X轴和y轴的做俩来描述向量。编写一个程序,读取向量的模和角度,然后显示x轴坐标和y轴坐标。相关方程如下:
x = r*cos a
y = r *sin a
需要一个函数来完成转换,该函数接受一个包含极坐标的结构,并返回一个包含直角坐标的结构(或返回指向该结构的指针)。
3.2 编程源码
#include<stdio.h>
#include<math.h>
struct xy{
float x;
float y;
};
struct ra{
float r;
float a;
};
struct xy ra2xy(struct ra t){
struct xy m;
m.y = t.r*sin(t.a);
m.x = t.r*cos(t.a);
return m;
}
int main(void){
stru

最低0.47元/天 解锁文章
1342





