2024.7.29

1> 写一个日志文件,将程序启动后,每一秒的时间写入到文件中

#include<myhead.h>

int main(int argc, const char *argv[])
{
	time_t t = time(NULL);
	struct tm *p = localtime(&t);
	FILE *fp = NULL;
	if((fp=fopen("./log","a"))==NULL)
	{
		perror("fopen error");
		return -1;
	}
	int flag = 0;
	fprintf(fp,"%4d-%2d-%2d %2d:%2d:%2d\n",p->tm_year+1900,p->tm_mon+1,p->tm_mday,p->tm_hour,p->tm_min,p->tm_sec);
	fflush(fp);
	flag = p->tm_sec;
	while(1)
	{
		time_t t = time(NULL);
		struct tm *p = localtime(&t);
		if(p->tm_sec!=flag)
		{
			fprintf(fp,"%4d-%2d-%2d %2d:%2d:%2d\n",p->tm_year+1900,p->tm_mon+1,p->tm_mday,p->tm_hour,p->tm_min,p->tm_sec);
			fflush(fp);
			flag = p->tm_sec;
		}
	}
	return 0;
}

2> 使用fread、fwrite完成两个文件的拷贝

不允许只读写一次

#include<myhead.h>
int main(int argc, const char *argv[])
{
    //定义文件指针
    FILE *sfp = NULL;
	FILE *dfp = NULL;
    if((sfp = fopen("./hmk2.c", "r")) == NULL)
    {
        perror("fopen error");
        return -1;
  	}
    if((dfp = fopen("./temp.txt", "w")) == NULL)
    {
        perror("fopen error");
        return -1;
    }
	char num[2] = "";
	while(fread(num,1,1,sfp)==1)
	{
		fwrite(num,1,1,dfp);

	}

    //关闭文件
    fclose(sfp);
	fclose(dfp);

    return 0;
}

3> 实现对bmp图像的读写操作

#include<myhead.h>

int main(int argc, const char *argv[])
{

    FILE *fp = NULL;
    if((fp = fopen("./gg.bmp", "r+")) == NULL)
    {
        perror("fopen error");
        return -1;
    }


    fseek(fp, 54, SEEK_SET);

    unsigned char color[3] = {0, 0, 255};   
    for(int i=0; i<960/2; i++)      
    {
        for(int j=0;j<1280; j++)   
        {
            fwrite(color, sizeof(color), 1, fp);
        }
    }

    fclose(fp);

    return 0;
}

 

 

在Python中,要创建一个包含2024年7月份每个工作日出现10次的列表,我们可以首先确定2024年7月份的日历情况,然后编写代码生成这样一个列表。 首先,2024年是闰年,因此2月有29天。7月1日是星期一,接下来的日期可以依次类推。Python中的`calendar`模块可以帮助我们确定某个月份的工作日情况。我们可以通过遍历7月份的每一天,并检查是否为工作日(通常我们把星期一到星期五视为工作日),来生成所需的列表。 下面是一个简单的Python脚本示例,用于创建这样的列表: ```python import calendar from collections import Counter # 创建一个计数器,用于统计每个日期出现的次数 date_counter = Counter() # 遍历2024年7月的每一天 for day in range(1, 32): # 7月最多31天 # 检查是否为工作日 if calendar.day_name[calendar.weekday(2024, 7, day)].startswith('星期'): # 如果是工作日,则更新计数器 date_counter[day] += 10 # 生成包含10次每个工作日的列表 result_list = [day for day, count in date_counter.items() for _ in range(count)] print(result_list) ``` 上面的代码首先导入了必要的模块,然后创建了一个`Counter`对象来跟踪每个日期出现的次数。接着,通过遍历7月份的每一天并检查是否为工作日来更新计数器。最后,使用列表推导式生成了一个包含所需次数工作日的列表。 请注意,上面的代码假设我们希望列表中包含整个7月份的日期,即使有些日期不是工作日也会被包含在内,但它们的出现次数为0。如果你只想包含工作日,可以对代码进行适当的修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值