C程序设计-----第1次作业

一、 PTA作业。
    在完成PTA作业的时候我没有认真读题。每次都是提交完整代码

  6-1(1)

 1 #include <stdio.h>
 2 
 3 //P++等价于(p)++还是等价于*(p++)?
 4 
 5 int main(){
 6     int *p, a = 3;
 7     p = &a;
 8     printf("*p = %d
",*p);
 9     printf("p = %d
",p);
10     printf("p++ = %d
",p++);
11     printf("(p)++ = %d
",(p)++);
12     printf("*p++ = %d
",*p++);
13     printf("*(p++) = %d
",*(p++));
14  } 

   6-2(1)

void splitfloat( float x, int *intpart, float *fracpart ){
    *intpart = x / 1;
    *fracpart = x - *intpart;
}

  6-1(2)

int search(int list[], int n, int x){
    int i;
    for(i = 0;i<n;i++){
        if(x == list[i]){
            return i;
        }
    }
    return -1;
}

  6-2(2)

int fun(int *a, int *b, int n){ 
    int *c,max=*a;
     for(c=a+1;c<a+n;c++)
          if(*c>max) {
               max=*c;
           *b=(c-a);
           }
  return max;
}

  6-1(3)

void input(int *arr, int n){
    int i;
    for(i = 0; i < 10; i++){
        scanf("%d",&*(arr+i));
    }
}

void max_min(int *arr,int n){ 
    int mark=0,flag=0;
      int j=0;
      int c1,c2;
     int max=*arr,min=*arr;
      for(j=0;j<10;j++){ 
      if(*(arr+j)>max){
          max=*(arr+j);
           mark=j;
        }
      if(*(arr+j)<min){
      min=*(arr+j);
      flag=j;
      }
    }
    c1=*arr;
    *(arr)=min;
    *(arr+flag)=c1;
    c2=*(arr+9);
    *(arr+9)=max;
    *(arr+mark)=c2; 
} 

void output(int *arr,int n){
    int k=0;
    for(k=0;k<10;k++){
        printf("%3d",*(arr+k));
        }
} 

  6-2(3)

void sort(int *x, int n){
    int i, j, k, mark, c1, max;
    for(i = 0; i<10; i++){
        max = *(x+i);
        for(j=i; j<10; j++){
            if(*(x+j)>max){
                max = *(x+j);
                mark = j;
            }
        }
        c1 = *(x+i);
        *(x+i) = *(x+mark);
        *(x+mark) = c1;
    }
}

  6-1(4)

bool palindrome( char *s ){
  int i=0,j=0,answer=1;
  char *b = s;
  for(;*b != '';b++) {
    i++;
  } 
  for(; *s != '';s++,j++) {
    if(*(s) != *(b-j-1)) {
        answer = 0;
      }
  }
    return (answer);
}  

  6-2(4)

void strmcpy( char *t, int m, char *s ){
    int i = 0;
    char *b = t;
    for(;*b!='';b++) {
        i++;
    }
    if(m>i) {
    *s='';
    } else {
        for(;*t!='';s++,t++){
            *s = *(t+m-1);
            }
        }
    *s = '';
     return 0;
}

二、PTA作业的解题思路和调试过程记录。

三、学习总结和进度
    1. 总结PTA知识点

    指针及相关应用
    2. 将PTA作业托管,截图及GIT地址(可访问)

    Github, 无法访问
    3. 点评三个同学的本周作业,并邀请同学点评我的作业

    WAIT
    4. 用表格和折线图呈现本周的代码行数和时间、博客字数和时间。

    本周使用C语言较少,自愿放弃本次作业相关分数。

    我尽量在清明放假之前结束所有外包工作。专注进入C语言的学习中。

原文地址:https://www.cnblogs.com/RLeeH/p/8574219.html