C语言给的考前复习资料不大会

复习资料只给了题目,没有给解析,求各路能人帮帮忙,马上考试了,需要这个资料进行考前复习,有劳大家了。

img

img

img

img

img

img

这个你得找学校的师兄师姐,上学校论坛,找同学解决
代码还是要思路清晰,只要理解了自然就猜得出它的下一步

供参考:

//第六题 补充函数编程题
#include <stdio.h>
void s_out_l(int* a, int n);
void s_plus_l(int* a, int n, int m);
void pick(int* a, int n);
int main()
{
    int a[10] = { 5,-2,0,-4,57,0,0,35,27,-6 }, m;
    s_out_l(a, 10);
    printf("请输入一个小于10的正整数:");
    scanf("%d", &m);
    s_plus_l(a, 10, m);
    pick(a, 10);
    return 0;
}
void s_out_l(int* a, int n)
{
    int i, t;
    for (i = 0; i < n / 2; i++) {
        t = a[i];
        a[i] = a[n - 1 - i];
        a[n - 1 - i] = t;
    }
}
void s_plus_l(int* a, int n, int m)
{
    int i;
    for (i = 0; i < n; i++) {
        if (a[i] > 0) {
            a[i] *= m;
        }
    }
}
void pick(int* a, int n)
{
    int i, j, b[10] = { 0 };
    for (i = 0, j = 0; i < n; i++) {
        if (a[i] % 2 == 0 && a[i] % 3 == 0)
            b[j++] = a[i];
    }
    for (i = 0; i < j; i++)
        printf("%d ", b[i]);
}


//第五题 程序填空
#include <stdio.h>
int main()
{
    int a[5] = { 0 }, b[5] = { 0 }, * p, i, j = 0;
    p = a;   //【1】
    for (i = 0; i < 5; i++)
        scanf("%d", p + i);  // 【2】
    for (i = 0; i < 5; i++)
        printf("%d ", p[i]);
    printf("\n");
    for (i = 0; i < 5; i++)
        if (p[i] % 2)  // 【3】
        {
            b[j] = p[i]; // 【4】
            j++;
        }
    for (i = 0; i < j; i++)
        printf("%d ", b[i]);
    return 0;
}




//第四题 独立编程题
#include <stdio.h>
#include <string.h>
int main()
{
    char s[50], t[50];
    scanf("%s %s", s, t);
    if (strlen(s) > strlen(t))
        strcat(s, t);
    else {
        strcat(t, s);
        strcpy(s, t);
    }
    puts(s);
}

// 第三题 独立编程题
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 10
int main()
{
    int a[N], i, sum, cnt;
    srand((unsigned int)time(NULL));
    for (i = 0, sum = 0, cnt = 0; i < N; i++)
    {
        a[i] = rand() % 100 + 1;
        sum += a[i];
        if (a[i] > 30 && a[i] % 5 == 0) cnt++;
        printf("%d ", a[i]);
    }
    printf("\n");
    printf("平均值:%d, 个数:%d", sum / N, cnt);
    return 0;
}


//第二题 根据提示编程题
#include <stdio.h>
int main()
{
    float x, t;
    scanf("%f", &x);
    if (x < 0)
        t = x - 2;
    else if (x >= 0 && x < 1)
        t = (x * x) / 3.0;
    else if (x == 1)
        t = 4.0;
    else if (x > 1)
        t = 5.0 * x;
    printf("%f", t);
    return 0;
}