c语言二级试题.docx

上传人:b****7 文档编号:9402663 上传时间:2023-02-04 格式:DOCX 页数:15 大小:18.10KB
下载 相关 举报
c语言二级试题.docx_第1页
第1页 / 共15页
c语言二级试题.docx_第2页
第2页 / 共15页
c语言二级试题.docx_第3页
第3页 / 共15页
c语言二级试题.docx_第4页
第4页 / 共15页
c语言二级试题.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

c语言二级试题.docx

《c语言二级试题.docx》由会员分享,可在线阅读,更多相关《c语言二级试题.docx(15页珍藏版)》请在冰豆网上搜索。

c语言二级试题.docx

c语言二级试题

在C语言中,不正确的int类型的常数是

A)32768B)0C)037D)0xAF

(18)语句:

printf(“%d”,(a=2)&&(b=——2);的输出结果是

    A)无输出B)结果不确定C)——1D)1

19)下列描述中不正确的是

    A)字符型数组中可以存放字符串

    B)可以对字符型数组进行整体输入、输出

    C)可以对整型数组进行整体输入、输出

    D)不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值

    (20)设有如下定义:

intx=l,y=——1;,则语句:

printf(“%d、n”,(x——&y));的输出结果是

    A)1B)0C)——1D)2

    (21)当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是

    A)c=b=a;B)(a=c)‖(b=c);

    C)(a=c)&&(b=c);C)a=c=b;

    (22)以下程序的输出结果是

    A)10192B)9876C)10990D)101091

    main()

    {intx=10,y=10,I;

    for(i=0;x》8;y=i)

    printf(“%d,%d”,x——,y);

    }

    (23)以下程序的输出结果是

    A)52B)51C)53D)97

    main()

    {inti,x[3][3]={9,8,7,6,5,4,3,2,1},*p=&x[1][1];

    for(i=0;i《4;i=2)printf(“%d”,p[i]);

    }

    (24)以下程序的输出结果是

    A)6B)6789C)'6'D)789

    main()

    {chara[10]={'1','2','3','4','5','6','7','8','9',0},*p;

    inti;

    i=8;

    p=aI;

    printf(“%s、n”,p——3);

    }

(25)以下程序的运行结果是

    A)运行后报错B)66C)612D)55

#include“stdio.h”

    main()

    {

    inta[]={1,2,3,4,5,6,7,8,9,10,11,12,};

    int*p=a5,*q=NULL;

    *q=*(p5);

    printf(“%d%d、n”,*p,*q);

    }

    (26)以下说法中正确的是

    A)#define和printf都是C语句B)#define是C语句,而printf不是

    C)printf是C语句,但#define不是D)#define和printf都不是C语句

    (27)语句:

printf(“%d、n”,12&012);的输出结果是

    A)12B)8C)6D)012

    (28)能正确表示a和b同时为正或同时为负的逻辑表达式是

    A)(a》=0‖b》=0)&&(a《0‖b《0)

    B)(a》=0&&b》=0)&&(a《0&&b《0)

    C)(ab》0)&&(ab《=0)

    D)a*b》0

    (29)以下程序的输出结果是

    A)20B)31C)321D)210

    main()

    {intn=4;

    while(n——)printf(“%d”,——n);

    }

    (30)若已定义:

inta[9],*p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是

    A)p1B)a1C)aD)p

    (31)以下程序的输出结果是

    A)17,021,0x11B)17,17,17

    B)17,0x11,021D)17,21,11

    main()

    {intk=17;

    printf(“%d,%o,%x、n”,k,k,k);

    }

    (32)以下程序的输出结果是

    A)——11B)01C)10D)00

    main()

    {inta=——1,b=1,k;

    if((a《0)&&!

(b——《=0))

    printf(“%d%d、n”,a,b);

    else

    printf(“%d%d、n”,b,a);

    }

    (33)若有说明:

long*p,a;则不能通过scanf语句正确给输入项读入数据的程序段是

    A)*p=&a;scanf(“%ld”,p);

    B)p=(long*)malloc(8);scanf(“%ld”,p);

    C)scanf(“%ld”,p=&a);

    D)scanf(“%ld”,&a);

(35)若有以下的说明和语句,则在执行for语句后,*(*(ptl)2)表示的数组元素是

    A)t[2][0]B)t[2][2]C)t[l][2]D)t[2][l]

    intt[3][3],*pt([3],k;

    for(k=0;k《3;k)pt[k]=&t[k][0];

    (36)下面程序把数组元素中的最大值放入a[0]中。

则在if语句中的条件表达式应该是

    A)p》aB)*p》a[0]C)*p》*a[0]D)*p[0]》*a[0]

    main()

    {inta[10]={6,7,2,9,1,10,5,8,4,3},*p=a,I;

    for(i=o;i《10;i,p)

    if(________)*a=*p;

    printf(“%d”,*a);

    }

    (37)以下程序的输出结果是

    A)ihgfedcbaB)abcdefghiC)abcdedebaD)ihgfefghi

    #include

    main()

    {char*a=“abcdefghi”;intk;

    fun(a);puts(a);

    }

    fun(char*s)

    {intx,y;charc;

    for(x=0,y=strlen(s)——1;x0)fun(k——1);

    printf(“%d”,k);

    }

    (42)以下程序的输出结果是

    A)699B)669C)61515D)6615

    intd=1;

    fun(intp)

    {staticintd=5;

    d=p;

    printf(“%d”,d);

    return(d);

    }

    main()

    {inta=3;printf(“%d、n”,fun(afun(d)));}

    (43)以下程序的输出结果是

    A)123456780B)123456780C)12345678D)147

    main()

    {charch[3][4]={“123”,“456”,“78”},*p[3];inti;

    for(i=0;i《3;i)p[i]=ch[i];

    for(i=0;i《3;i)printf(“%s”,p[i]);

    }

(44)以下程序的输出结果是

    A)1B)4C)7D)5

    #include

    inta[3][3]={1,2,3,4,5,6,7,8,9,},*p;

    main()

    {p=(int*)malloc(sizeof(int));

    f(p,a);

    printf(“%d、n”,*p);

    }

    f(int*s,intp[][3])

    {*s=p[1][1];}

    (45)以下程序的输出结果是

    A)9B)6C)36D)18

    #definef(x)x*x

    main()

    {inta=6,b=2,c;

    c=f(a)/f(b);

    printf(“%d、n”,c);

    }

    (46)以下程序的输出结果是

    A)4211B)0008C)4678D)8888

    main()

    {char*s=“12134211”;intv[4]={0,0,0,0},k,i;

    for(k=0;s[k];k)

    {switch(s[k])

    {case'1':

i=0;

    case'2':

i=1;

    case'3':

i=2;

    case'4':

i=3;

    }

    v[i];

    }

    for(k=0;k《4;k)printf(“%d”,v[k]);

    }

    (47)以下程序的输出结果是

    A)AfghdEFGB)AbfhdC)AfghdD)Afgd

    #include

    main()

    {char*p1,*p2,str[50]=“ABCDEFG”;

    p1=“abcd”;p2=“efgh”;

    strcpy(str1,p21);strcpy(str3,p13);

    printf(“%s”,str);

    }

    (48)以下程序的输出结果是

    A)#*#*#B)#####C)*****D)*#*#*

    main()

    {inti;

    for(i=1;i《6;i)

    {if(i%2){printf(“#”);continue;}

    printf(“*”);

    }

    printf(“、n”);

    }

    (49)若有以下定义和语句:

    doubler=99,*p=&r;

    *p=r;

    则以下正确的叙述是

    A)以下两处的*p含义相同,都说明给指针变量p赋值

    B)在“doubler=99,*p=&r;”中,把r的地址赋值给了p所指的存储单元

    C)语句“*p=r;”把变量r的值赋给指针变量p

    D)语句“*p=r;”取变量r的值放回r中

    (50)以下程序的输出结果是

A)编译不通过,无输出B)aceg

    C)acegiD)abcdefghi

    main()

    {inti;

    for(i='A';i《'I';i,i)printf(“%c”,i32);

    printf(“、n”);

    }

(7)下列程序的输出结果是_____7____。

    #include

    main()

    {charb[30],*chp;

    strcpy(&b[0],“CH”);

    strcpy(&b[1],“DEF”);

    strcpy(&b[2],“ABC”);

    printf(“%s、n”,b);

    }

    (8)下列程序的输出结果是____8____。

    intt(intx,inty,intcp,intdp)

    {cp=x*xy*y;

    dp=x*x——y*y;

    }

    main()

    {inta=4,b=3,c=5,d=6;

    t(a,b,c,d);

    printf(“%d%d、n”,c,d);

    }

    (9)下列程序中字符串中各单词之间有一个空格,则程序的输出结果是____9____。

    #include

    main()

{charstrl[]=“Howdoyoudo”,*p1=strl;

    strcpy(strlstrlen(strl)/2,“esshe”);

    printf(“%s、n”,pl);

    }

    (10)以下程序的功能是:

从键盘上输入若干个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成绩,用输入负数结束输入。

请填空。

    main()

    {floatx[1000],sum=0.0,ave,a;

    intn=0,i;

    printf(“Entermark:

、n”);scanf(“%f”,&a);

    while(a》=0.0&&n《1000)

    {sum____10____;x[n]=_____11____;

    n;scanf(“%f”,&a);

    }

    ave=____12____;

    printf(“Output:

、n”);

    printf(“ave=%f、n”,ave);

    for(i=0;i

    main()

    {FILE*fp;

    charch,fname[32];intcount=0;

    printf(“Inputthefilename:

”);scanf(“%s”,fname);

    if((fp=fopen(____16____,“w”))==NULL)

    {printf(“Can'topenfile:

%s、n”,fname);exit(0);}

    printf(“Enterdata:

、n”);

    while((ch=getchar())!

=“#”){fputc(ch,fp);count;}

    fprintf(____17____,“、n%d、n”,count);

    fclose(fp);

    }

    (13)以下函数creatlist用来建立一个带头节点的单链表,链表的结构如下图所示,新的结点总是插入在链表的末尾。

链表的头指针作为函数值返回,链表最后一个节点的next域放入NULL,作为链表结束标志。

data为字符型数据域,next为指针域。

读入时字符以#表示输入结束(#不存入链表)。

请填空。

    structnode

    {chardata;

    structnode*next;

    };

    。

    。

    。

    _____18_____creatlist()

    {structnode*h,*s,*r;charch;

h=(structnode*)malloc(sizeof(structnode));

    r=h;

    ch=getchar();

    {s=(structnode*)malloc(sizeof(structnode));

    s——》data=____19____;

    r——》next=s;r=s;

    ch=getchar();}

    r——》next=____20_____;

    returnh;

    }

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 纺织轻工业

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1