• 第八周作业


    基础题
    题目6-1 函数实现字符串逆序 (15 分)
    本题要求实现一个字符串逆序的简单函数。
    1)实验代码

    void f(char *p)
    {
    char str;
    char temp;
    str=p+strlen(p)-1;
    while(str>p)
    {
    temp=
    p;
    p=str;
    *str=temp;
    p++;
    str--;
    }
    }

    2)设计思路

    3)本题调试过程及解决办法

    将if改成while

    4)运行结果截图

    题目6-3 字符串的连接 (15 分)
    本题要求实现一个函数,将两个字符串连接起来。
    1)实验代码

    char *str_cat(char *s, char *t)
    {
    int len;
    int i;
    len = strlen(s);
    for (i = 0; *(t + i) != ''; i++)
    {
    *(s + i + len) = *(t + i);
    }

    return s;
    }

    2)设计思路

    3)本题调试过程碰到的问题及解决办法

    将return 0;改成return s; 惯性思维
    4)运行结果截图

    题目7-1 输出学生成绩 (20 分)
    1)实验代码

    include<stdio.h>

    include<stdlib.h>

    int main(){
    int n,i;
    float p,sum,max,min,avg;
    scanf("%d",&n);
    if((p=(float
    )malloc(nsizeof(float)))==NULL){
    exit(1);
    }
    sum=0;
    max=-1;
    min=1000;
    for(i=0;i<n;i++)
    {
    scanf("%f",p+i);
    sum+=
    (p+i);
    if(min>(p+i))
    min=
    (p+i);
    if(max<(p+i))
    max=
    (p+i);
    }
    avg=sum/n;
    printf("average = %.2lf ",avg);
    printf("max = %.2lf ",max);
    printf("min = %.2lf ",min);
    free(p);

    return 0;
    }

    2)设计思路

    3)本题调试过程碰到的问题及解决办法

    将2f改成f
    4)运行结果截图

    题目7-4 字符串排序 (20 分)
    1)实验代码

    include<stdio.h>

    include<string.h>

    int main()
    {
    int i,j;
    char p[5][80],t[80];
    for(i=0;i<5;i++)
    {
    scanf("%s",&p[i]);
    }
    for(i=1;i<5;i++)
    {
    for(j=0;j<5-1;j++)
    {
    if(strcmp(p[j],p[j+1])>0)
    {
    strcpy(t,p[j]);
    strcpy(p[j],p[j+1]);
    strcpy(p[j+1],t);
    }
    }
    }
    printf("After sorted: ");
    for(i=0;i<5;i++)
    {
    printf("%s ",p[i]);
    }
    return 0;
    }

    2)设计思路

    3)本题调试过程碰到的问题及解决办法

    将%f改成%s

    4)运行结果截图

    预习题
    题目7-3 计算平均成绩 (15 分)

    1)实验代码

    include<stdio.h>

    include<string.h>

    struct student
    {
    char id[6];
    char name[11];
    float score;
    };

    int main()
    {
    struct student stu[10];
    int i, N;
    float sum = 0, average;
    scanf("%d ", &N);
    for (i = 0; i < N; i++)
    {
    scanf("%s%s%f", &stu[i].id, &stu[i].name, &stu[i].score);
    sum += stu[i].score;
    }
    average = sum / N;

    printf("%.2f ", average);
    for (i = 0; i<N; i++)
    {
    if (stu[i].score < average)
    {
    printf("%s %s ", stu[i].name, stu[i].id);
    }
    }

    return 0;
    }

    2)设计思路

    3)本题调试过程碰到的问题及解决办法

    4)运行结果截图

    结对编程感悟
    依葫芦画瓢 照着书来果然没错
    优点:相互促进,相互监督改正错误

    缺点各自有各自的想法 有时候会争论好久
    学习进度条

  • 相关阅读:
    Windows OpenGL ES 图像反色
    OpenGL ES EGL eglCreatePbufferSurface
    OpenGL ES 名词解释(一)
    干货推荐!13 个技术电子书资源站,从此看书不求人
    awk输出单引号'的几种方式
    Ubuntu20.04 中文输入法失效问题解决
    在node中import from引入的文件要跟.js后缀,但是webapck不用?
    Promise 只处理失败的回调
    babel 转义,webpack压缩
    Promise 只处理成功回调
  • 原文地址:https://www.cnblogs.com/lijiawei18/p/10736747.html
Copyright © 2020-2023  润新知