C语言由日期求星期,不用函数和指针
时间: 2023-04-07 15:01:17 浏览: 85
这个问题属于编程问题,我可以回答。要求输入一个日期,然后根据日期计算出对应的星期几。可以使用公式:W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400+1) mod 7,其中W表示星期几,d表示日期,m表示月份,y表示年份。根据公式计算出W的值即可得到对应的星期几。
相关问题
c语言中函数指针和指针函数
函数指针和指针函数是C语言中的两个重要概念,它们虽然涉及到指针和函数的结合使用,但实际上表示了不同的含义和用法。
1. 函数指针(Function Pointer)是指可以指向函数的指针变量。通过函数指针,我们可以在程序运行时动态地调用不同的函数。函数指针的定义和用法如下所示:
```c
// 定义函数指针
返回值类型 (*指针变量名)(参数列表);
// 使用函数指针调用函数
指针变量名 = 函数名;
指针变量名(参数列表);
```
例如,我们可以定义一个函数指针变量`p`,指向一个返回类型为`int`、参数列表为`int`的函数,并通过函数指针调用该函数:
```c
int add(int a, int b) {
return a + b;
}
int (*p)(int, int); // 定义函数指针变量
p = add; // 指向add函数
int result = p(3, 4); // 调用add函数,返回结果7
```
2. 指针函数是指返回指针类型的函数。指针函数的定义和用法如下所示:
```c
// 定义指针函数
返回值类型 *函数名(参数列表);
// 使用指针函数返回指针
返回值类型 *p = 函数名(参数列表);
```
例如,我们可以定义一个指针函数`getMax`,返回类型为`int*`,参数列表为两个`int`类型的数值,并返回较大的数值的指针:
```c
int* getMax(int a, int b) {
if (a > b) {
return &a;
} else {
return &b;
}
}
int a = 3, b = 4;
int *p = getMax(a, b); // 返回较大的数值的指针
int result = *p; // 获取指针指向的数值,结果为4
```
c语言绝对偏差不用函数不用指针
以下是一个不使用函数和指针的C语言求绝对偏差的例子:
```c
#include <stdio.h>
int main() {
int a, b, diff;
printf("请输入两个整数:");
scanf("%d %d", &a, &b);
diff = a - b;
if (diff < 0) {
diff = -diff;
}
printf("两数之差的绝对值为:%d", diff);
return 0;
}
```