Chs97's Blog

作业二

作业二

1.初识github

很久很久以前就听说github这个神器。
今天从创建仓库到本地提交到服务器尝试了一遍。
了解了几个命令。
入门文章1
入门2
比如本地初始化一个项目 git init;git add 添加追踪本地文件,git push -u origin master 更改推送到服务器。
git commit 提交更改
在git problem.txt的过程中遇到一个问题。文本编码的问题。好像github的txt只支持UTF-8。
在本地上传上传非UTF-8文档时候乱码。
我的github仓库


2.PAT 1001

此处输入图片的描述
第一次接触这个题库,然后百度了一下PAT是什么。(计算机程序设计能力考试)
看到这题,这不是常见的A+B problem吗。然后看了一下样例,有些许不同。
三位数组有一个逗号,1,000,000 这样子。然后数据范围不大,不需要高精度。
然后就先算a+b然后模拟那个操作。
一开始是把每个数组转换成字符 存到字符数组里面,然后三位后加个“,”号 最后倒序输出。

#include <stdio.h>
int main()
{
    int a, b;
    scanf("%d%d",&a,&b);
    int c=a+b;
    char ans[20];
    int cnt=0;
    if(c<0)c=-c;
    int temp=0;
    while(c)
    {
        ans[cnt++]=c%10+'0';
        temp++;
        c/=10;
        if((temp)%3==0&&c!=0){ans[cnt++]=',';temp=0;}

    }
    if(a+b<0)ans[cnt++]='-';
    int i;
    for(i=cnt-1;i>=0;i--)printf("%c",ans[i] );
        return 0;
}

这是我的第一次代码。结果发现WA第四个点。
然后换了一个思路,三位存在一个数组里面然后还是WA第4个点。
然后问了一下泡泡犇犇。。他说看起来没错。我也是不解。

#include <stdio.h>
int main()
{
    int a, b;
    scanf("%d%d",&a,&b);
    int c=a+b;
    int ans[20];
    int cnt=0;
    if(c<0)c=-c;
    int temp=0;
    while(c)
    {
        ans[cnt++]=c%1000;
        c/=1000;
    }
    if(a+b<0)printf("-");
    int i;
    printf("%d",ans[cnt-1] );
    for(i=cnt-2;i>=0;i--)printf(",%03d",ans[i] );
        return 0;
}

这个三位存的时候记得后面的数不满3位要前补0 例如1003 存后会ans[0]=1,ans[2]=3;于是需要 %03d 就是不满3位前补0
最后实在没办法了。。发现这个数不大 最多分成9位的样子。然后就分段输出。

#include <stdio.h>
int main()
{
    int a, b;
    scanf("%d%d",&a,&b);
    int c=a+b;
    if(c<0)
    {
        printf("-");
        c=-c;
    }
    if(c<1000)printf("%d\n",c );
    else if(c<1000000)printf("%d,%03d\n",c/1000,c%1000 );
    else printf("%d,%03d,%03d\n",c/1000000,c%1000000/1000,c%1000 );
        return 0;
}

这样A掉了。

打完游戏。泡泡犇犇和我说 a+b=0的时候可能会出错,但是我本地调试是没错的。
然后仔细看了一下代码,a+b=0的时候访问了负数的数组,应该是这个原因导致WA。最后特判了一下a+b=0才过。

总结git使用教程

1.安装msygit
2.配置用户名和油箱
git config --global user.name <用户名>
git config --global user.email <邮箱>
3.生成ssh-key
命令为ssh-keygen ssh和-之间没有空格。
如果有空格会出现 Bad escape character 'ygen'
4.找id_isa.pub。
以我的经验 一般在C盘 user或者用户 文件夹里面 然后当前登录账户 文件夹 .ssh文件夹里面
5.上传sshkey
此处输入图片的描述
6.本地初始化仓库。
cd 仓库路径
git init
7.添加监视文件
git add . 或者 git add -A
8.提交更改
git commit -am "注释"
9.push
git push origin master
//另一些命令
git clone --从服务器上克隆到本地,如果服务器上面已经有项目了,直接使用这个命令clone到本地进行使用
git status --查看版本信息

几个同学使用git出现的问题总结

A同学:
nothing to commit。没有文件为监视状态。
也就是说add 整个文件夹的文件失败了
我尝试了add单个文件成功了
然后提交成功了。。然后我重新添加了一遍文件夹。。莫名其妙也成功了。。不知道为什么。
B同学:
在服务器端莫名其妙出现了一些 README之类的文件,然后本地push上去失败。
然后只能先把服务器上的文件clone下来,然后再push上去。
具体错误忘记截图了 Orz。。。
C同学:
本地化初始项目的时候初始错文件夹了。然后add不到文件。。

//大部分同学都会遇到问题,很少能一步按着教程成功的。所以我每次帮他们解决问题都会有不同的收获。增加经验。

posted @ 2016-01-28 15:03  Chs97  阅读(200)  评论(0)    收藏  举报