注册 登录
编程论坛 C语言论坛

c语言考试题求解答?

小丹丹有角角 发布于 2021-12-21 18:59, 1847 次点击
1、阅读以下程序,写出功能 #include"stdio .h"void     mian(){int   sum;int  i,j=1;sum=0;    for(i=1;i<=100;i++){sum=sum+i*j;j=-j;}printf("sum=%d,sum);return  0;}
2、阅读程序:描述程序的功能并写出程序的输出结果。 #include int main() {int a=[3][3]={1,3,5,7,9,11,13,15,17},sum=0,i,j; for (i=0;i<3;i++) for (j=0;j<3;j++) if (i==j) sum=sum+a[j]; printf(“sum=%d\n”,sum); return 0; }
4 回复
#2
notime2022-01-22 00:22
1,功能:1至100的所有奇数之和减去1至100的所有偶数之和
#include <stdio.h>
int main()
{
    int sum;
    int i, j = 1;
    sum = 0;
    for (i = 1; i <= 100; i++)
    {
        sum = sum + i * j;
        j = -j;
    }
    printf("sum=%d", sum);
    return  0;
}
输出
sum=-50

2,功能:左上到右下对角线上数相加
#include <stdio.h>
int main()
{
    int a[3][3] = { 1,3,5,7,9,11,13,15,17 }, sum = 0, i, j;
    for (i = 0; i < 3; i++)
        for (j = 0; j < 3; j++)
            if (i == j)
                sum = sum + a[i][j];
    printf("sum = %d\n", sum);
    return 0;
}
输出:
sum = 27
#3
abminage2022-02-11 15:30
回复 2楼 notime
int main()
{
    int a[3][3] = { 1,3,5,7,9,11,13,15,17 }, sum = 0, i, j;
    for (i = 0; i < 3; i++)
    {
        for (j = 0; j < 3; j++)
        {
            if (i == j)
            {
            sum = sum + a[i][j];
            printf("sum = %d\n", sum);
            }
        }
    }
   
    return 0;
}
大佬,请教一下啊  第二题跟着一段区别在哪,谢谢
#4
不会游泳的虾2022-02-18 10:33
第二题修改见注释处,供参考:
程序代码:
#include <stdio.h>
int main()
{
    int a[3][3] = { 1,3,5,7,9,11,13,15,17 }, sum = 0, i, j;//a=[3][3]={1,3,5,7,9,11,13,15,17}数组定义错误
    for (i = 0; i < 3; i++)
        for (j = 0; j < 3; j++)
            if (i == j)
                sum = sum + a[i][j]; //sum = sum + a[j]; 修改
    printf("sum = %d\n", sum);
    return 0;
}
#5
notime2022-03-19 23:03
回复 3楼 abminage
因为for,if只有一句,所以都没加大括号,最好像你写的那样,加上大括号。
你的printf的位置,导致每次累加都输出一次,如果只是输出最后结果,要放在retur前。
1