第七章测试
1.

程序功能:输入n的值(n<10),计算1!+2!+3!+......+n!,并输出计算结果。

程序中空白处应该填________。

#include <stdio.h>

int main()

{

    int i, n;

    long sum=0,fac=1;                    //fac存储每个加项(阶乘)的值

    printf("请输入n的值:");

    scanf("%d",&n);

    for( i=1; i<=n; i++)

    {   

     ___________              //后一加项与前一加项的关系

       sum=sum+fac;

    }

    printf("和为%ld",sum);

    return 0;

}



A:fac=fac*i; B:fac++; C:sum=sum*i; D:fac=fac+sum;
答案:A
2.

若有整型变量i,j,则以下程序段中内循环体“printf("ok");”的循环次数为________。

for (i=5; i; i--)

{

        for (j=0; j<4; j++)

        {

                printf("ok");

        }

}




A:20 B:24 C:30 D:25 3.

以下程序段的输出结果是________。

int i=0, a=0;        

while (i < 20)

{

        for (; ;)

        {

                if (i % 10 == 0)

                {

                        break;

                }

                else

                {

                        i--;

                }

        }

        i += 11;

        a += i;

}

printf("%d", a);



A:11 B:33 C:32 D:21 4.

假定abint型变量,则执行以下语句后b的值为________。

a = 1;

b = 10;

do

{

        b -= a;

        a++;

} while (b-- < 0);



A:9 B:-2 C:-1 D:8 5.

xy均为int型变量,则执行下面的循环后y的值为

for (y=1, x=1; y<=50; y++)

{

        if (x >= 10)

        {

                break;

        }

        if (x % 2 == 1)

        {

                x += 5;

                continue;

        }

        x -= 3;

}



A:2 B:6 C:4 D:8 6.

i,j,k均为整型变量,则执行如下语句后,k的值为________。

for (i=0, j=10; i<=j; i++, j--)

{

        k = i + j;

}



A:11 B:9 C:8 D:10 7.

以下程序段的输出结果是________。

int a=0, i;

for (i=1; i<5; i++)

{

        switch(i)

        {

                case 0:

                case 3:

                        a += 2;

                case 1:

                case 2:

                        a += 3;

                default:

                        a += 5;

        }

}

printf("%d", a);



A:10 B:20 C:31 D:13 8.

以下程序段运行时,如果从键盘输入1298再回车,则输出结果为

int n1, n2;

scanf("%d", &n2);

while (n2 != 0)

{

        n1 = n2 % 10;

        n2 = n2 / 10;

        printf("%d", n1);

}



A:8921 B:1298 C:9 D:1 9.

以下程序段的输出结果是________。

int i=10, j=0;

do

{

        j = j + i;

        i--;

} while (i > 2);

printf("%d", j);



A:52 B:48 C:54 D:25 10.

for(;;)和while(1)构成的都是无限循环。


A:对 B:错

温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!
点赞(146) dxwkbang
返回
顶部