1.若有如下程序:
main()
{chara[]="china\0name\0";
printf("%d,",strlen(a));
printf("%d\n",sizeof(a));}
则程序运行后的输出结果是()
A)5,11
B)5,12
C)11,11
D)12,12
2.指针变量p的基类型为int,并已指向一连续存储区,若p中当前的地址值为1234,则执行p++后,p中的值为()
A)1234
B)1235
C)1236
D)1237
3.函数调用“strcat(strcpy(str1,str2),str3)”的功能是()
A)将串str1拷贝到串str2中后再连接到串str3之后
B)将串str1连接到串str2之后再拷贝到串str3之后
C)将串str2拷贝到串str1中后再将串str3连接到串str1之后
D)将串str2连接到串str1之后再将串str1拷贝到串str3中
4.下面宏定义正确的是()
A)#defineSa*b
B)#definePI3.14;
C)#definemax(a,b) ((a)>(b)?(a)∶(b))
D)#defines(x)(x)*(x);
5.下面叙述正确的是()
A)函数调用不可以出现在表达式中
B)函数调用可以作为一个函数的实参
C)函数调用可以作为一个函数的形参
D)函数不可以直接调用其本身
6.有如下程序
#include
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);
}
如果从键盘上输入china#<回车>,则程序运行结果为()
A)2,0
B)5,0
C)5,5
D)2,5
7.程序中头文件type1.h的内容是:
#defineN5
#defineM1N*3
程序如下:
#include"type1.h"
#defineM2N*2
main()
{inti;
i=M1+M2;printf("%d\n",i);}
程序编译运行后的输出结果是()
A)10
B)20
C)25
D)30
8.C语言规定函数返回值的类型由()
A)在定义时所指定的函数类型所决定
B)调用该函数时的主调函数类型所决定
C)return语句中的表达式类型所决定
D)调用该函数时系统临时决定
9.若有如下程序:
main()
{int a[3][4]={1,2,3,4,5,6,7,8,9};
printf("%d%d%d\n",a[0][1],a[1][2],a[2][3]);}
则程序运行后的输出结果是()
A)270
B)480
C)160
D)不定值
10.以下能将字符串:youareluck!正确读入的语句组是()
A)chars[80];scanf("%s",s);
B)char*s;scanf("%s",s);
C)chars[80];gets(s);
D)char*s;gets(s);
答案:1.B 2.C 3.C 4.C 5.B 6.C 7.C 8.A 9.A 10.C