早教吧 育儿知识 作业答案 考试题库 百科 知识分享

c语言入门。作业有两题不会做一题50分编写程序,计算公式:-1+1/2+3/4+5/8+7/16+9/32+...的前n项合并输出结果(n<20)。要求有必要的输入输出提示。编写程序,输入整型矩阵的行、列数m和n(m、n

题目详情
c语言入门。作业有两题不会做

一题50分

  1. 编写程序,计算公式:-1+1/2+3/4+5/8+7/16+9/32+...的前n项合并输出结果(n<20)。要求有必要的输入输出提示。

  2. 编写程序,输入整型矩阵的行、列数m和n(m、n不大于6),然后输入矩阵元素的值,分别统计并输出矩阵正负值元素之和,最后如果正值元素的总和大于负值元素之和的绝对值,则输出"YES!",否则输出"NO!"。要求程序要有必要的输入输出提示。

     


▼优质解答
答案和解析

#include<stdio.h>


int main(){

    double sum, j;

    int i, n, c;

    printf("请输入n的值:n = "); scanf("%d", &n);

    for(i = -1, j = 1.0, sum = 0.0, c = 1; c <= n; i += 2, j *= 2, c++){

        sum += (i / j);

    }

    printf("\n前%d项和为:sum = %lf\n\n", n, sum);

    return 0;

}


======================================================

#include<stdio.h>


#define M 6

#define N 6


int main(){

    int array[M][N];

    int m, n, i, j;

    int a = 0, b = 0;

    printf("请输入矩阵行数和列数空格隔开:");scanf("%d%d", &m, &n);

    printf("\n请输入%d行整数,每行%d个数字用空格隔开:\n\n", m, n);

    for(i = 0; i < m; i++){

        for(j = 0; j < n; j++){

            scanf("%d", &array[i][j]);

            if(array[i][j] > 0) a += array[i][j];

            else b += array[i][j];

        }

    }

    printf("\n正数之和为:%d\n", a);

    printf("\n负数之和为:%d\n", b);

    if(a + b > 0) printf("\nYES!\n\n");

    else printf("\nNO!\n\n");

    return 0;

}