1、以下叙述中正确的是
(A) 用C程序实现的算法必须要有输入和输出操作
(B) 用C程序实现的算法可以没有输出但必须要有输入
(C) 用C程序实现的算法可以没有输入但必须要有输出
(D) 用C程序实现的算法可以既没有输入也没有输出
2、以下不能定义为用户标识符的是
(A) Main
(B) _0
(C) _int
(D) sizeof
3、以下选项中,不能作为合法常量的是
(A)1.234e04
(B)1.234e0.4
(C)1.234e+4
(D)1.234e0
4、数字字符0的ASCII值为48,若有以下程序
main()
{ char a=’1’,b=’2’;
printf (“%c,”,b++);
printf (“%dn”,b-a);
}
程序运行后的输出结果是
(A)3,2
(B)50,2
(C)2,2
(D)2,50
5、有以下程序
main()
{ int m=12, n=34
printf(“%d%d”,m++,++n);
printf(“%d%dn”,n++,++m);
}
程序运行后的输出结果是
(A) 12353514
(B) 12353513
(C) 12343514
(D) 12343513
6、有定义语句:int b;char c[10]; ,则正确的输入语句是
(A) scanf(“%d%s”,&b,&c);
(B) scanf(“%d%s”,&b,c);
(C) scanf(“%d%s”,b,c);
(D) scanf(“%d%s”,b,&c);
7、有以下程序
main()
{
int a,b,d=25;
a=d/10%9;
b=a&&(-1);
printf(“%d,%dn”,a,b);
}
程序运行后的输出结果是
(A)6,1
(B)2,1
(C)6,0
(D)2,0
8、有以下程序
main()
{
int p[8]={11,12,13,14,15,16,17,18}, i =0,j=0;
while(I++<7) if(p[i]%2) j+=p[i];
printf(“%dn”,j);
}
程序运行后的输出结果是
(A) 42
(B) 45
(C) 56
(D) 60
9、以下能正确定义一维数组的选项是
(A) int a[5]={0,1,2,3,4,5};
(B) char a[]={0,1,2,3,4,5};
(C) char a={‘A’,’B’,’C’};
(D) int a[5]=”0123”;
10、已有定义:char a[]=”xyz”,b[]={‘x’,’y’,’z’};,以下叙述中正确的是
(A) 数组a和b的长度相同
(B) a数组长度小于b数组长度
(C) a数组长度大于b数组长度
(D) 上述说法都不对
11、以下叙述中错误的是
(A) 对于double类型数组,不可以直接用数组名对对数组进行整体输入或输出
(B) 数组名代表的是数组所占存储区的首地址,其值不可改变
(C) 当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息
(D) 可以通过赋初值的方式确定数组元素的个数
12、有以下程序
#define P 3
#define F(int x) { return (P*x*x);}
main()
{
printf(“%dn”,F(3+5));
}
程序运行后的输出结果是
(A) 192
(B) 29
(C) 25
(D) 编译出错
13、有以下程序
main()
{
int c=35; printf(“%dn”,c&c
}
程序运行后的输出结果是
(A) 0
(B) 70
(C) 35
(D) 1
14、以下叙述中正确的是
(A) 预处理命令行必须位于源文件的开头
(B) 在源文件的一行上可以有多条预处理命令
(C) 宏名必须用大写字母表示
(D) 宏替换不占用程序的运行时间
15、若有以下说明和定义
union dt
{
int a; char b; double c;
}data
以下叙述中错误的是
(A) data的每个成员起始地址都相同
(B) 变量data所占每存字节树与成员c所占字节数相等
(C) 程序段:data.a=5;printf(“%fn”,data.c);输出结果为5.000000
(D) data可以作为函数的实参
16、以下语句或语句组中,能正确进行字符串赋值的是
(A) char *sp; *sp=”right!”;
(B) char s[10]; s=”right!”;
(C) char s[10]; *s=”right!”;
(D) char *sp=”right!”;
17、设有如下说明
typedef struct ST
{
long a;
int b;
char c[2];
}NEW;
则下面叙述中正确的是
(A) 以上的说明形式非法
(B) ST是一个结构体类型
(C) NEW是一个结构体类型
(D) NEW是一个结构体变量
18、有以下函数
fun(char *a,char *b)
{
while((*a!=’’)&&(*b!=’’)&&(*a==*b))
{ a++; b++;}
return (*a-*b);
}
该函数的功能是
(A) 计算a和b所指字符串的长度之差
(B) 将b所指字符串复制到a所指字符串中
(C) 将b所指字符串连接到a所指字符串后面
(D) 比较a和b所指字符串的大小



