// 按指定格式获取输入
int day = 0;
int month = 0;
int year = 0;
printf("Enter a date(mm/dd/yyyy):");
scanf("%d/%d/%d", &month, &day, &year);
printf("\n%d/%d/%d", month, day, year);
// 判断闰年
int is_leapyear(int year)
{
// 如果这一年能被4整除并且不能被100整除, 或者 这一年能被400整除, 那这一年就是闰年
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))
{
return 1;
}
return 0;
}
// 四舍五入
double myround(double x)
{
x = int(x + 0.5); // 浮点转整数对小数部分会进行截取操作,只得到整数部分
return x;
}
// 统计一个自然数的二进制表示中有多少个1
int count_of_1(unsigned int num)
{
int count = 0; // 存储1的个数
int yu = 0; // 存储余数
while (num != 0)
{
yu = num % 2; // 先对数num 除2取余
num = num / 2; // 再取得num除2的商
if (yu == 1) // 如果余数为1,则说明二进制形式中为1所以计数加1
{
count++;
}
}
return count; // 返回1的个数
}
// 杨辉三角形
void yanghui()
{
int s = 1, h; // 数值和高度
int i, j; // 循环计数
printf("请输入层数:");
scanf("%d", &h); // 输入层数
printf("1\n"); // 输出第一个 1
for (i = 2; i <= h; s = 1, i++) // 行数 i 从 2 到层高
{
printf("1 "); // 第一个 1
for (j = 1; j <= i - 2; j++) // 列位置 j 绕过第一个直接开始循环
{
//printf("%d ", (s = (i - j) / j * s));
printf("%d ", s = (i - j) * s / j);
}
printf("1\n"); // 最后一个 1,换行
}
}
int a = 7;
float x = 2.5, y = 4.7;
float z = x + a % 3 * (int)(x + y) % 2 / 4;
//运算步骤 1 a % 3 = 1
//运算步骤 2 x + y = 7.2
//运算步骤 3