KiKi最近学习了信号与系统课程,这门课里有一个非常有趣的函数,单位阶跃函数,其中一种定义方式为:
现在试求单位冲激函数在时域t上的值。
#include <stdio.h>
float Ot(int t) {
if (t > 0)
return 1;
else if (t < 0)
return 0;
else
return 0.5;
}
int main() {
int input = 0;
while (scanf("%d", &input) != EOF) {
float ret = Ot(input);
if (ret == 0.5)
printf("%.1f\n", ret);
else
printf("%.0f\n", ret);
}
return 0;
} #include <stdio.h>
int main() {
int t = 0;
while (scanf("%d", &t) != EOF) {
getchar();
// 条件表达式的嵌套
t == 0 ? printf("0.5\n") : (t > 0 ? printf("1\n") : printf("0\n"));
}
return 0;
}
#include <stdio.h>
int main() {
int parameter, decimal_num;
double result;
while (scanf("%d ", ¶meter) != EOF) {
if(parameter > 0){
result = 1;
} else if (parameter == 0){
result = 0.5;
} else {
result = 0;
}
if(result == (int)result){
decimal_num = 0;
} else {
decimal_num = 1;
}
printf("%.*f\n", decimal_num, result);
}
return 0;
} #include <stdio.h>
int main(){
int t = 0;
while(scanf("%d", &t) != EOF){
getchar();
if(t == 0)
printf("0.5\n");
else
printf("%d\n", t > 0 ? 1 : 0);
}
return 0;
}