单选题
1、若定义a=3,b=4,执行printf(“%d, %d”,(a,b),(b,a));的输出结果为().
A.3,4
B。4,3
C。3,3
D.4,4
2、如果要求在if后的判断条件是a不等于0,则下列选项中能正确表达这一关系的是()。
A.a<>0
B。!a
C.a=0
D.a
3、为了避免嵌套的if—else语句的二义性,C语言规定else总是与()组成配对关系.
A.缩排位置相同的if
B.在其之前未配对的if
C。在其之前尚未配对的最近的if
D。同一行上的if
4、有定义int t = 0;则有循环while(t=1){…},则下列关于while循环语句的描述中正确的是()。
A.循环控制表达式的值为0
B.循环控制表达式的值为1
C.循环控制表达式的值不合法
D.以上说法都不对
5​、若有定义:int x ,i;则下列for循环语句:
for(i = 0,x = 0; i〈= 9 && x!=876;i++)
scanf(“%d”,&x);
下列选项中,描述正确的是(  )
A.最多执行10次
B。最多执行9次
C。是无限循环
D。循环体一次也不执行
6、​关于下面的for循环语句
int i,k;
for(i = 0,k = -1;k = 1;i++,k++)  printf(“*****");
下列选项中,描述正确的是(  )
A。判断循环结束的条件非法
B。是无限循环
C.只循环一次
D.一次也不循环
7、C语言程序的三种基本结构是(  )。
A。顺序结构,选择结构,循环结构
B.递归结构,循环结构,转移结构
C。嵌套结构,递归结构,顺序结构
D.循环结构,转移结构,顺序结构
8、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为(  )。
A.a<>0
B。!a
C。a=0
D.a
9、​两次运行下面的程序,如果从键盘上分别输入6和4,那么输出结果是(  )。
void main()
    int x;
    scanf(”%d",&x);
    if (x++ > 5)
        printf(”%d",x);
    else
        printf("%d\n”,x-—);
}
A。7和5
B.6和3
C.7和4
D。6和4
10、运行以下程序后,如果从键盘上输入china#,那么输出结果为(  ).
#include〈stdio.h>
void main()
{
    int v1=0,v2=0;
    char ch;
    while ((ch=getchar())!='#')
        switch (ch)
        {
            case 'a':
            case ’h':
            default:
                v1++;
            case '0':
                v2++;
        }
    printf("%d,%d\n",v1,v2);
}
A。2,0
B。5,0
C.5,5
D.2,5
11​、有如下程序:
void main()
    int x=1,a=0,b=0;
    switch(x)
    {
        case 0:
            b++;
        case 1:
            a++;switch语句表示范围
        case 2:
            a++;
            b++;
    }
    printf("a=%d,b=%d\n”,a,b);
该程序的输出结果是(  ).
A。a=2,b=1
B。a=1,b=1
C。a=1,b=0
D。a=2,b=2
12​、下面程序的输出是(  )。
void main()
    char *a="12134211”;
    int v1=0,v2=0,v3=0,v4=0,k;
    for (k=0;s[k];k++)
        switch (s[k])
        {
            default:
                v4++;
            case ’1':
                v1++;
            case ’3’:
                v3++;
            case '2':
                v2++;
        }
    printf(”v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4);
A.v1=4,v2=2,v3=1,v4=1
B.v1=4,v2=9,v3=3,v4=1
C.v1=5,v2=8,v3=6,v4=1
D.v1=8,v2=8,v3=8,v4=8
13​、下列程序段的输出结果为(  )。
int y=1;
while(y-—);
printf("y=%d\n”,y);
A.y=-1
B.y=0
C。死循环
D。y=9
14、​当输入数据:27 63 时,下面程序的运行结果是(  )。
#include〈stdio。h>
int gbs(int a, int b)
    int c;
    a=a>0?a:-a;
    b=b>0?b:-b;
    c=a*b;
    if (c==0)
        return 0;
    while (a!=b)
        if (a〉b)
            a—=b;
        else
            b-=a;
    return c/a;
int gys(int a, int b)
    if (a*b==0)
        return 0;
    a=a>0?a:-a;
    b=b〉0?b:—b;
    while (a!=b)
        if (a〉b)
            a-=b;
        else
            b—=a;
    return a;
void main()
{
    int a,b,c,d;
    scanf("%d%d”,&a,&b);
    c=gbs(a,b);
    d=gys(a,b);
    printf(”a=%d b=%d gbs=%d gys=%d\n",a,b,c,d);
A.a=30 b=63 gbs=189 gys=9
B.a=27 b=63 gbs=190 gys=10
C。a=27 b=63 gbs=189 gys=9
D.a=27 b=63 gbs=188 gys=10
15、假设有程序段:int k=0; while(k=1) k++; while语句的循环次数是(  ).
A。无限次
B.有语法错,不能执行
C.一次也不执行
D.执行1次
16、​执行下面程序片段的结果是(  )。
int x=23;
do
{
    printf("%2d",x—-);
} while (!x);
A。打印出321
B。打印出23
C.不打印任何内容

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。