中国美术学院2022年C语言期末考题

本试卷为中国美术学院2022年C语言期末考题,题目包括:理论基础,控制结构,循环结构,数组/指针数组,字符串/字符串指针,函数/函数指针,指针,结构体,程序题。

覆盖的内容包括:理论题,基础知识,控制结构,循环结构,数组/指针数组,字符串/字符串指针,函数/函数指针,指针,结构体,程序题。

C语言期末考题

一、理论基础 (共20题,每题1分,共计10分)

(  C  )
1、表达式________的值是0。
A、3%5
B、3/5.0
C、3/5
D、3<5
(  C  )
2、若有代数式(3ae)/( ),则下面不正确的c语言表达式是________。
A、a/b/c*e*3
B、3*a*e/b/c
C、3*a*e/b*c
D、a*e/c/b*3
(  A  )
3、有定义语句:int x, y; 若要通过scanf("%d,%d",&x,&y); 语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,错误的是________。
A、11 12<回车>
B、11, 12<回车>
C、11,12<回车>
D、11,<回车>
12<回车>
(  D  )
4、不合法的常量是: 。
A、‘ \2 ’
B、" "
C、‘ 3 ’
D、‘ \483 ’
(  C  )
5、以下各选项企图说明一种新的类型名,其中正确的是______。
A、typedef v1 int;
B、typedef v2=int;
C、typedef int v3;
D、typedef v4: int;
(  D  )
6、若有说明 :char c[10]= { 'e','a','s','t','\0' };, 则下述说法中正确的是 __ __________.
A、c[7] 不可引用
B、c[6] 可引用 , 但值不确定
C、c[4] 不可引用
D、c[4] 可引用,其值为空字符
(  D  )
7、设int a=0; 错误的语句是________。
A、++a;
B、a++;
C、a=-a;
D、(-++a);
(  D  )
8、关于字符常量,以下叙述正确的是________。
A、空格不是一个字符常量
B、字符常量能包含大于一个的字符
C、单引号中的大写字母和小写字母代表的是相同的字符常量
D、所有的字符常量都可以作为整型量来处理
(  C  )
9、将用高级程序语言编写的源程序翻译成目标程序的程序称______。
A、连接程序
B、编辑程序
C、编译程序
D、诊断维护程序
(  B  )
10、有如下程序段int *p,a=5,b=1; p=&a; a=*p+b; 执行该程序段后,a的值为______。
A、5
B、6
C、7
D、编译出错
(  D  )
11、以下选项中不属于c语言类型的是______。
A、signed short int
B、unsigned char
C、singed long
D、long short
(  C  )
12、不正确的赋值或赋初值的方式是____。
A、char str[]="string";
B、char str[7]={'s', 't', 'r', 'i', 'n', 'g'};
C、char str[10];str="string";
D、char str[7]={'s', 't', 'r', 'i', 'n', 'g', '\0’};
(  B  )
13、判断实数 x 属于闭区间 [a, b ] 的表达式为 ▁▁▁▁▁设a为整型变量,不能正确表达数学关系10<a<15的c语言表达是________。
A、a>10&&a<15
B、a>10||a<15
C、!(a<=10||a>=15)
D、!(a<=10)&&!(a>=15)
(  A  )
14、以下不符合c语言语法的赋值语句是________。
A、a+b=23;
B、a=1,b=2;
C、a=b=5;
D、y=(a=3,6*5);
(  B  )
15、下列表达式中,可作为c合法表达式的是________。
A、[3,2,1,0]
B、(3,2,1,0)
C、3=2=1=0
D、3/2/1/0
(  D  )
16、若变量c定义为float型变量,能给变量c正确赋值的语句是________。
A、scanf("%f",c)
B、scanf("%8.4f",&c)
C、scanf("%d",&c)
D、scanf("%f",&c)
(  A  )
17、下列两条语句"
int c1=1,c2=2,c3;
c3=1.0/c2*c1;
"执行后变量c3的值是________。
A、0
B、0.5
C、1
D、2
(  B  )
18、假设所有变量均为整型,则表达式(a=2,b=5,a+b++,a+b) 的值是________。
A、7
B、8
C、5
D、2
(  D  )
19、设有char str[10] ,下列语句正确的是________ 。
A、scanf("%s",&str);
B、printf("%c",str);
C、printf("%s",str[0]);
D、printf("%s",str);
(  D  )
20、设已定义整型变量k,则下面的程序输出为________。k=017 ;
s=111;
printf ( ''%d'', ++k);
printf ( ''%x\n'' ,s++);
A、15 6f
B、16 70
C、15 71
D、16 6f

二、控制结构 (共10题,每题1分,共计10分)

(  A  )
1、下列程序的输出结果是________。
main()
{
int a=0,i;
for(i=1;i<5;i++)
{
switch(i)
{
case 0: case 3:a+=1;
case 1;
case 2:a+=2;
default:a+=3;
}
}
printf("%d",a);
}
A、19
B、1
C、6
D、8
(  A  )
2、有以下程序
main()
{
int i;
for(i=0;i<3;i++)
switch(i)
{
case 1: printf("%d",i);
case 2: printf("%d",i);
default: printf("%d",i);
}
}
执行后输出的结果是________。
A、011122
B、012
C、012020
D、120
(  A  )
3、以下程序的输出结果是________。
#include<stdio.h>
main()
{
int a=4,b=3,c=2,d=1;
printf("%d",a<b?a:d<c?d:b);
}
A、1
B、3
C、2
D、4
(  C  )
4、c语言中下面哪个不是条件语句?
A、if
B、if else
C、NSLog
D、switch
(  A  )
5、有如下程序
main()
{
int x=1,a=5,b=5;
switch(x)
{
case 0: b--;
case 1: a--;
case 2: a--;
b--;
}
printf("a=%d,b=%d\n",a,b);
}
该程序的输出结果是______。
A、a=3,b=4
B、a=3,b=3
C、a=4,b=5
D、a=4,b=4
(  B  )
6、以下叙述中正确的是________。
A、在 C 语言中,逻辑真值和假值分别对应 1 和 0
B、关系运算符两边的运算对象可以是语言中任意合法的表达式
C、对于浮点变量 x 和 y,表达式:x==y 是非法的,会出编译错误
D、分支结构是根据算术表达式的结果来判断流程走向的
(  A  )
7、c语言的if语句嵌套时,if与else的配对关系是________。
A、每个else总是与它上面的最近的并且尚未与其他else匹配的if配对
B、每个else总是与最外层的if配对
C、每个else与if的配对是任意的
D、每个else总是与它上面的if配对
(  A  )
8、c 语言中逻辑表达式的值为________。
A、0 或1
B、非零值或零值
C、true 或false
D、'true'或'false'
(  C  )
9、a,b 为整型变量,二者均不为 0,以下关系表达式中恒成立的是()。
A、a*b/a*b==1
B、a/b*b/a==1
C、a/b*b+a%b==a
D、a/b*b==a
(  A  )
10、执行下面语句后的输出为____
int i= -1;
if (i < =0)printf("****\n");
else printf("%%%%\n");
A、****
B、%%%%
C、%%%%C
D、有语法错,不能执行

三、循环结构 (共10题,每题1分,共计10分)

(  D  )
1、有以下程序:
main()
{
int i,n=0: for(i=2;i<5;i++)
{
do
{
if(i%3) continue: n++;
}
while(!i);
n++;
}
printf("n=%d\n",n);
}
程序执行后输出结果是________。
A、n=5
B、n=2
C、n=3
D、n=4
(  C  )
2、以下for循环是________。 for(x=0,y=0;(y!=123) && (x<4);x++)
A、无限循环
B、循环次数不定
C、执行4次
D、执行3次
(  A  )
3、下列语句中,可以作为无限循环语句的是________。
A、for(;;)
B、for(int i=0;i<10000;i++)
C、while(false)
D、do)while(false)
(  B  )
4、有下列程序:
main()
{
int i,j;
for(i=1;i<4;i++)
{
for(j=i;j<4;j++) printf("%d*%d=%d",i,j,i*j);
printf("\n");
}
}
程序运行后的输出结果是________。
A、1*1=1 1*2=2 1*3=3 2*1=2 2*2=4 3*1=3
B、1*1=1 1*2=2 1*3=3 2*2=4 2*3=6 3*3=9
C、1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9
D、1*1=1 2*1=2 2*2=4 3*1=3 3*2=6 3*3=9
(  B  )
5、下面程序段执行后输出的结果是________
#include<stdio.h>
main()
{
int i;
for(i=1;i<8;i++)
{
{
if(i%3)
{
printf("*");
continue;
}
}
printf("#");
}
printf("\n");
}
A、*#**#**#
B、**#**#*
C、*#**#**
D、**#**
(  D  )
6、有以下程序
#include <stdio.h>
main()
{
int i,j;
for(i=3;i>=-1;i-)
{
for(i=1;j<=2;j++) printf("%d",i+j);
printf("\n");
}
}
程序的运行结果是______。
A、234 345
B、432 543
C、23 34 45
D、45 34 23
(  A  )
7、以下程序的输出结果是 _______ 。
main()
{
int x=1,y=0,a=0,b=0;
switch(x)
{
case 1:switch(y)
{
case 0:a++;
break;
case 1:b++;
break;
}
case 2:a++;
b++;
break;
}
printf("%d,%d\n",a,b);
}
A、2,1
B、2,2
C、1,1
D、2 1
(  B  )
8、执行下面程序片段的结果是______。int x=23;
do
{
printf("%2d",x--);
}
while(!x);
A、打印出321
B、打印出23
C、不打印任何内容
D、陷入死循环
(  B  )
9、有以下程序
main( )
{
int c=5,x;
scanf("%d",&x);
switch(x+1)
{
case 6: c++;
case 8: ++c;
break;
default:c+=3;
}
printf("%d",c);
}
程序运行时,从键盘输入: 5<回车>,程序执行后的输出结果是________。
A、6
B、7
C、8
D、语法错
(  A  )
10、设n 为整型变量,则循环语句for(n=10;n > 0;n--) 的循环次数为________。
A、10
B、9
C、11
D、12

四、数组/指针数组 (共10题,每题1分,共计10分)

(  A  )
1、下列字符数组初始化语句中,不正确的是________。
A、char c[]='goodmorning';
B、char e[20]="goodmorning":
C、char c[]=('a','b','c','d');
D、char c[]={”ffgoodmorning”);
(  B  )
2、若有定义"int b[8],*p=b;",则p+6表示( )。
A、数组元素b[6]的值
B、数组元素b[6]的地址
C、数组元素bE73的地址
D、数组元素hEo]的值加上6
(  B  )
3、若有以下数组说明,则i=10; a[a[i]]元素数值是________。 int a[12]= { 1,4,7,10,2,5,8,11,3,6,9,12 } ;
A、10
B、9
C、6
D、5
(  D  )
4、设有二维数组a(12,10),其每个元素占4个字节,数据按列优先顺序存储,第一个元素的存储地址为100。则元素a(5,5)的存储地址为________。
A、176
B、276
C、208
D、308
(  B  )
5、有如下定义语句:int a[]= {1,2,3,4,5 },则对语句int * p=a; 正确的描述是________。
A、语句int * p=a;定义不正确
B、语句int * p=a;初始化变量p,使其指向数组对象a的第一个元素
C、语句int * p=a;是把a[0]的值赋给变量p
D、语句int * p=a;是把a[1]的值赋给变量p
(  A  )
6、设有定义 double a[10],*s=a; 以下能够代表数组元素a[3]的是______。
A、*(s+3)
B、(*s)[3]
C、*s[3]
D、*s+3
(  A  )
7、下面程序的运行结果是
#include<stdio.h>
main()
{
static char a[]="languagef" ,b[]="programe";
char *p1,*p2;
int k;
p1=a;
p2=b;
for(k=0;k<=7;k++) if(*(p1+k)==*(p2+k))
printf("%c",*(p1+k));
}
A、gae
B、ga
C、LanSuage
D、有语法错
(  D  )
8、下面关于数组的初始化正确的是________。
A、chara[]='a','b','c'
B、chara[2]='a','b','c'
C、chara[2][3]='a','b','e','d','e','f'
D、chara[]="a","b","c"
(  D  )
9、要定义一个字符串,下列选项中错误的是________。
A、char s[5] = "hello";
B、char s[] = "hello";
C、char *s = "hello";
D、char s[] = {"h","e","l","l","o"};
(  D  )
10、在c语言中,一维数组的定义方式为:类型说明符 数组名____
A、[常量表达式]
B、[整型表达式]
C、[整型常量]或[整型表达式]
D、[整型常量]

五、字符串/字符串指针 (共10题,每题1分,共计10分)

(  D  )
1、以下选项中能表示合法常量的是________。
A、整数:1,200
B、实数:1.5E2.0
C、字符斜杠:"\"
D、字符串:"\007"
(  A  )
2、下列数据中属于"字符串常量"的是________。
A、“a”
B、{
ABC}
C、‘abc\0’
D、‘a’
(  A  )
3、下列字符串是标识符的是: 。
A、_HJ
B、9_student
C、long
D、LINE 1
(  C  )
4、在下列各项中,运算级别最低的为________。
A、算术运算符
B、关系运算符
C、逻辑运算符
D、圆括号( )
(  B  )
5、下列选项中,值为1的表达式是________。
A、1-'0'
B、1-'\0'
C、'1'-0
D、'\0','0'
(  B  )
6、下列类型的数据不可以存储在可变型变量中的是________。
A、整型
B、字节型
C、单精度型
D、日期型
(  D  )
7、以下程序运行后的输出结果是
main( )
{
char s[]="ABCD",*p;
for(p=s+1;p<s+4;p++)printf("%s\n",p);
}
A、ABCD
BCD
CD
D
B、A
B
C
D
C、B
C
D
D、BCD
CD
D
(  D  )
8、下列字符串中可以用作c标识符的是________。
A、2009var
B、goto
C、test-2009
D、-123
(  B  )
9、字符串指针变量中存入的是________。
A、字符串
B、字符串的首地址
C、第一个字符
D、字符串变量
(  D  )
10、若有char s1[]="abc",s2[20],*t=s2;gets(t);则下列语句中能够实现当字符串 s1 大于字符串 s2 时,输出 s2 的语句是()。
A、if(strcmp(s1,s1)>0)puts(s2);
B、if(strcmp(s2,s1)>0)puts(s2);
C、if(strcmp(s2,t)>0)puts(s2);
D、if(strcmp(s1,t)>0)puts(s2);

六、函数/函数指针 (共10题,每题1分,共计10分)

(  D  )
1、下列叙述中正确的是________。
A、C语言编译时不检查语法
B、C语言的子程序有过程和函数两种
C、C语言的函数可以嵌套定义
D、C语言的函数可以嵌套调用
(  B  )
2、下列说法不正确的是________。
A、调用函数时,实参可以是表达式
B、调用函数时,实参与形参可以共用内存单元
C、调用函数时,将实参的值复制给形参,使实参变量和形参变量在数值上相等
D、调用函数时,实参与形参的类型必须一致
(  B  )
3、在传值调用中,要求________。
A、形参和实参类型任意,个数相等
B、形参和实参类型一致,个数相等
C、形参和实参类型一致,个数不等
D、形参和实参类型任意,个数任意。
(  B  )
4、下面的描述中错误的是________。
A、调用函数时,实参可以是表达式
B、调用函数时,实参与形参可以共用内存单元
C、调用函数时,将为形参分配内存单元
D、调用函数时,实参与形参的类型必须一致
(  B  )
5、以下叙述中不正确的是________。
A、在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
B、在C的函数中,最好使用全局变量
C、在C中,形式参数只是局限于所在函数
D、在C中,函数名的存储类别为外部
(  D  )
6、有以下函数:fun(char *a,char *b)
{
while((*a!='\0')&&(*b!='\0')&&(*a==*b))
{
a++;
b++;
}
return(*a-*b);
}
该函数的功能是______。
A、计算 a 和 b 所指字符串的长度之差
B、将 b 所指字符串连接到 a 所指字符串中
C、将 b 所指字符串连接到 a 所指字符串后面
D、比较 a 和 b 所指字符串的大小
(  C  )
7、关于strcmp()函数,下列描述中错误的是________。
A、strcmp()函数用于比较两个字符串的内容是否相等
B、如果两个字符串的内容相同,strcmp()函数返回0
C、strcmp()函数是可变参数的函数
D、strcmp()函数只能接收字符指针作为参数,并不接收单个字符
(  C  )
8、阅读以下函数fun(char *sl,char *s2)
{
int i=0;
while(sl[i]==s2[i]&&s2[i]!='\0') i++;
return(sl[i]=='\0'&&s2[i]=='\0');
}
此函数的功能是______。
A、将s2所指字符串赋给s1
B、比较s1和s2所指字符串的大小,若s1比s2的大,函数值为1,否则函数值为0
C、比较s1和s2所指字符串是否相等,若相等,函数值为1,否则函数值为0
D、比较s1和s2所指字符串的长度,若s1比s2的长,函数值为1,否则函数值为0
(  B  )
9、c语言中不可以嵌套的是________。
A、函数调用
B、函数定义
C、循环语句
D、选择语句
(  C  )
10、用户定义的函数不可以调用的函数是()。
A、非整型返回值的
B、本文件外的
C、main 函数
D、本函数下面定义的

七、指针 (共10题,每题1分,共计10分)

(  D  )
1、有以下程序
void fun(int*a,int n)/*fun函数的功能是将a所指数组元素从大到小排序*/
{
int t,i,j;
for(i=0;i<n一1;j++) for(j=i+1;j<n;j++) if(a[i]
}
main()
{
int c[10]={1,2,3,4,5.6,7,8,9,0 },i;
fun(c+4.6): for(i=0;i<10;i++)printf("%d,",c[i]);
printf("n"):
}
}
程序运行的结果是________。
A、1,2,3,4,5,6,7,8,9,0,
B、0,9,8,7,6,5,1,2,3,4,
C、0,9.8,7.6,5,4,3,2,1.
D、1,2,3,4,9,8,7,6,5,0,
(  C  )
2、以下对二维数组a的正确说明是________。
A、int a[3][]
B、float a(3,4)
C、double a[1][4]
D、float a(3)(4)
(  C  )
3、若有定义语句:int a[2][3],*p[3]; 则以下语句中正确的是________。
A、p=a;
B、p[0]=a;
C、p[0]=&a[1][2];
D、p[I]=&a;
(  B  )
4、定义如下一维数组:int a[5],*p; 则下列描述错误的是________。
A、表达式p=p+l是合法的
B、表达式a=a+l是合法的
C、表达式p-a是合法的
D、表达式a+2是合法的
(  B  )
5、int a[5],*p=a; 对a数组元素地址的正确引用是________。
A、p+5
B、&a[0]
C、&a+1
D、*a+1
(  D  )
6、下列关于函数的调用方式,说法不正确的是________?
A、可以将函数作为表达式调用
B、可以将函数作为语句调用
C、可以将函数作为实参调用
D、以上选项都错误
(  A  )
7、关于函数参数,说法正确的是________。
A、实参与其对应的形参各自占用独立的内存单元
B、实参与其对应的形参共同占用一个内存单元
C、只有当形参与实参同名时才占用同一个内存单元
D、形参是虚拟的,不占用内存单元
(  B  )
8、下列数据中属于"字符串常量"的是________。
A、ABC
B、"ABC"
C、'ABC'
D、'A'
(  B  )
9、c语言程序中必须有的函数是________。
A、#include "stdio.h"
B、main
C、printf
D、scanf
(  B  )
10、若执行 fopen 函数时发生错误,则函数的返回值是()。
A、地址值
B、0
C、1
D、EOF

八、结构体 (共10题,每题1分,共计10分)

(  B  )
1、有以下结构体说明和变量的定义,且指针p指向变量a’指针q指向变量b,则不能把结点b连接到结点a之后的语句是________。
struct node
{
char data;
struct node*next;
}
a,b,*p=&a,*q=&b;
A、a.next=q;
B、P.next=&b:
C、p—>next=&b;
D、(*p).next=q;
(  C  )
2、有以下程序
typedef struct
{
char name[9];
char sex;
float score [2];
} stu;
stu f(stu a) {
stu b={"zhao", 'm', 85.0, 90.0};
int i;
strcpy(a.name, b.name);
a.sex=b.sex:;
for(i=0;i<2;i++) a.score[i]=b.score[i];
return a:
}
main() {
stu c=
{
"qian", 'f', 95.0, 92.0
};
stu d=f(c);
printf("%s, %c, %2.0f, %2.0f", d.name, d.sex, d.score[0], d.score[1]); ) 程序的运行结果是________。
A、Qian,f,95,92
B、Qian,m,85,90
C、Zhao,m,85,90
D、Zhao,f,95,92
(  A  )
3、有以下程序
struct stu
{
char name[10];
int num;
};
void f(char *name, int num)
{
struct stu s[2]={{"sundan",20044},{"penghua",20045}};
num = s[0].num;
strcpy(name, s[0].name);
}
main()
{
struct stu s[2]={{"yangsan",20041},{"lisiguo",20042}},*p;
p=&s[1];
f(p->name, p->num);
printf("%s %d\n", p->name, p->num);
}
程序运行后的输出结果是________。
A、SunDan 20042
B、SunDan 20044
C、LiSiGuo 20042
D、YangSan 20041
(  A  )
4、若有下面的说明和定义:
struct test
{
int ml;
char m2;
float m3;
union uu
{
char ul[5];
int u2[2];
}
ua;
}
myaa;
则sizeof(struct test )的值是________。
A、12
B、16
C、14
D、9
(  B  )
5、下面结构体的定义语句中,错误的是________。
A、struct ord {
int x;int y;int z;};struct ord a;
B、struct ord {
int x;int y;int z;} struct ord a;
C、struct ord {
int x;int y;int z;} n;
D、struct {
int x;int y;int z;} a;
(  D  )
6、下列选项中属于c语言构造类型的是________。
A、指针类型
B、空类型
C、枚举类型
D、数组类型
(  D  )
7、表达式 *((int *)(p+1)+2)的值时_______.
static struct
{
int x, y[3];
}
a[3] = {{1,2,3,4},{5,6,7,8},{9,10,11,12}}, *p;
p = a+1;
A、3
B、7
C、10
D、11
(  A  )
8、以下叙述中正确的是________。
A、使用 typedef 定义新类型名后,新类型名与原类型名实际上是等价的
B、结构体类型中的各个成分均不能是数组或指针
C、结构体类型的变量,不能在声明结构体类型组成时一起定义
D、元素为结构体类型的数组,只能在声明过结构体类型之后,单独进行定义
(  A  )
9、以下关于 c 语言数据类型使用的叙述中错误的是________。
A、若只处理“真”和“假”两种逻辑值,应使用逻辑类型
B、若要保存带有多位小数的数据,可使用双精度类型
C、整数类型表示的自然数是准确无误差的
D、若要处理“人员信息”等含有不同类型的相关数据,应自定义结构体类型
(  D  )
10、在说明一个结构体变量时系统分配给它的存储空间是________ 。
A、该结构体中第一个成员所需存储空间
B、该结构体中最后一个成员所需存储空间
C、该结构体中占用最大存储空间的成员所需存储空间
D、该结构体中所有成员所需存储空间的总和

九、程序题 (共10题,每题1分,共计10分)

(  B  )
1、下列程序的输出结果是________。
int b=2: int func(int*a)
{
b+=*a;
return b;
}
main()
{
int a=1,t=2;
t+=func(&a): printf("%d\n",t);
}
A、4
B、5
C、6
D、8
(  C  )
2、有以下程序
#include <stdio.h>
int f(int x)
{
int y;
if(x==0||x==1) return (3);
y=x*x-f(x-2);
return y;
}
main()
{
int z;
z=f(3);
printf("%d\n",z);
}
程序的运行结果是________。
A、0
B、9
C、6
D、8
(  A  )
3、有以下程序
#include <stdio.h>
main( )
{
int x = 0x13;
printf("int:%d\n", x+1);
}
程序运行后的输出结果是________。
A、INT:20
B、INT:13
C、INT:12
D、INT:14
(  D  )
4、有如下程序
main( )
{
int a[3][3]={{1,2,3},{3,4,5},{5,6,7}}, i,j,s = 0;
for(i=0; i<3; i++)for(j=0; j<=i; j++) s+=a[i][j]];
printf("%d\n",s);
}
该程序的输出结果是______。
A、18
B、19
C、36
D、26
(  C  )
5、若有以下程序段int m=0xabc,n=0xabc;
m-=n;
printf("%x\n",m);
执行后输出结果是______。
A、0X0
B、0x0
C、0
D、0XABC
(  C  )
6、执行如下程序段,打印输出的内容是________。
#include <stdio.h>
void fun (intc, int *d)
{
c++;
(*d)++;
}
int main ( )
{
int a=5, b=9;
fun(a, &b);
printf("%d, %d",a, b);
return 0;
}
A、5, 9
B、6, 10
C、5, 10
D、6, 9
(  D  )
7、执行printf("%x",100); 后的输出结果是________。
A、100
B、0x100
C、0X64
D、64
(  A  )
8、当执行下面程序且输入:abc时,输出的结果是______。
#include <stdio.h>
#include <string.h>
main( )
{
char ss[10]="12345";
strcat(ss,"6789");
gets(ss);
printf("%s\n",ss);
}
A、ABC
B、ABC9
C、123456ABC
D、ABC456789
(  B  )
9、下列程序的输出结果是________。
main()
{
char c1=97,c2=98;
printf("%d %c",c1,c2);
}
A、97 98
B、97 b
C、a 98
D、a b
(  A  )
10、下述程序的输出结果是________。
#include<stdio.h>
void main()
{
printf("%f",2.5+1*7%2/4);
}
A、2.500000
B、2.750000
C、3.375000
D、3.000000