P51 6题
#include <chrono>
#pragma warning(disable:4996)
int main1()
{
int year, month;
printf("请输入年号和月份(如:2023 4):");
scanf_s("%d%d", &year, &month);
//注意引号位置
//当scanf出现C6031_返回值被忽略的问题时将其改为scanf_s便能解决问题
//在代码最前端加上#pragma warning(disable:4996)也可解决该问题
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)
printf("31");
else if (month == 2 || month == 4 || month == 6 || month == 9 || month == 11)
printf("30");
else
{
if ((year % 400 == 0)|| ((year % 4 == 0) && (year % 100 != 0)))
//一个等号:赋值
//两个等号我们称为等值符
//当等号两边的值为相同类型时比较值是否相同,类型不同时会发生类型的自动转换,转换为相同的类型后再作比较。
//类型转换规则:1)如果等号两边是boolean、string、number三者中任意两者进行比较时,优先转换为数字进行比较。
//2)如果等号两边出现了null或undefined, null和undefined除了和自己相等,就彼此相等
printf("29");
else
printf("28");
}
return 0;
}
P51 10题
#include <stdio.h>
int main()
{
int y=1000, H = 0;
for(y=1000;y<2000;y++)
if ((y % 400 == 0)|| ((y % 4 == 0) && (y % 100 != 0)));
//一定要理清括号的个数
{
printf(" % d", y);
H = H + 1;
if(H %3==0)
printf("\n");
}
return 0;
}
P52 24题
#include <stdio.h>
int main2()
{
int x, y, sum = 0;
for (x = 100; x < 1000; x++);
for (y = 1; y <= x; y++);
if (x % y == 0);
sum = sum + 1;
if (x == sum);
printf("%d", x);
return 0;
}
P52 28题
#include <stdio.h>
int main3()
{
float x = 1, y = 1, sum = 0;
for (y = 1; y <=1000; y++);
if (x / y >= 0.00001)
sum = sum + x / y;
else
sum = sum;
if (sum == sum);
printf("数据项之和为 % f", sum);
return 0;
}