|  | 
 
| 
本帖最后由 英俊男孩建坤 于 2022-4-6 14:57 编辑
x
马上注册,结交更多好友,享用更多功能^_^您需要 登录 才可以下载或查看,没有账号?立即注册  
 复制代码#include <stdio.h>
void reverse_translate(int date, int src, int dest, char start_hour[6], char end_hour[6], char date_result[11]){
    int duration = dest - src;
    int date1 = 25 + date;
    int start = 9 + src;
    
    int start_1 = start / 10;
    int start_2 = start - start_1 * 10;
    start_hour[0] = (char)(start_1 + 48);
    start_hour[1] = (char)(start_2 + 48);
    start_hour[2] = ':';
    start_hour[3] = '0';
    start_hour[4] = '0';
    
    int end = start + duration;                        // 这是有问题的地方  
    int end_1 = end / 10;
    int end_2 = end - end_1 * 10;
    end_hour[0] = (char)(end_1 + 48);
    end_hour[1] = (char)(end_2 + 48);
    end_hour[2] = ':';
    end_hour[3] = '0';
    end_hour[4] = '0';
    int month = 4;
    date_result[0] = '2';
    date_result[1] = '0';
    date_result[2] = '2';
    date_result[3] = '2';
    date_result[4] = '-';
    date_result[5] = '0';
    date_result[7] = '-';
    if(date1 > 30){
        date1 -= 30;
        month += 1;
    }
    date_result[6] = (char)(month + 48);
    date_result[8] = (char)((date1 / 10)+48);
    date_result[9] = (char)((date1 - (date1/10) * 10) + 48);
}
int main()
{
    
    char date_result[11];
    char start_hour[6]; 
    char end_hour[6];
    reverse_translate(1,1,5,start_hour,end_hour,date_result);   // 这是运行方法
    printf("%s\n%s\n%s\n", date_result,start_hour,end_hour);
    return 0;
}
 reverse_translate 这个函数里头六个参数  前面三个参数输入其他的数字  最后的答案储存在最后三个参数头
 为啥这个end_hour会输入 date_result的内容???  求大神指点
 
前3个是数,后面3个是数组地址你调用函数之后,你函数里面的代码就对数组进行操作了,把存储结果写到数组里了
 | 
 |