广西科技大学往年计算机C语言专升本

本试卷为广西科技大学往年计算机C语言专升本,题目包括:理论基础,控制结构,循环结构,数组/指针数组,字符串/字符串指针,函数/函数指针,指针,结构体,程序题。

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

计算机C语言专升本

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

(  B  )
1、设"int x=2,y=1; ",则表达式(!x || y--)的值i是________。
A、0
B、1
C、2
D、-1
(  B  )
2、以下所列的c语言常量中,错误的是________。
A、0xFF
B、1.2e0.5
C、2L
D、‘72’
(  B  )
3、设有条件表达式:(exp)? i++ ; j—,则以下表达式中与(exp)完全等价的是________。
A、(EXP=0)
B、(EXP!=0)
C、(EXP=1)
D、(EXP!=1)
(  B  )
4、有如下说明 int a[10]={ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 }, *p=a;则数值为 9 的表达式是______。
A、*p+9
B、* ( p+8 )
C、*p+=9
D、p+8
(  D  )
5、以下叙述中不正确的是________。
A、在C程序中,逗号运算符的优先级最低
B、在C程序中,APH和aph是两个不同的变量
C、若a和b类型相同,在计算赋值表达式a=b后,b中的值将放入a中,而b中的值不变
D、当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值
(  D  )
6、变量p为指针变量,若p=&a,下列说法不正确的有______。
A、&*p==&a
B、*&a==a
C、(*p)++==a++
D、*(p++)==a++
(  C  )
7、下列关于变量作用域的描述中,不正确的是________。
A、变量属性是用来描述变量作用域的
B、局部变量作用域只能是它所在方法的代码段
C、类变量能在类的方法中声明
D、类变量的作用域是整个类
(  D  )
8、已知int x=(1,2,3,4); 变量x的值是________。
A、1
B、2
C、3
D、4
(  B  )
9、字符的ascii编码在机器中的表示方法准确地描述应是________。
A、使用8位二进制代码,最右边一位为1
B、使用8位二进制代码,最左边一位为0
C、使用8位二进制代码,最右边一位为0
D、使用8位二进制代码,最左边一位为1
(  A  )
10、若整型变量a、b、c、d中的值依次为:1、4、3、2,则条件表达式a<b a:c<d c:d的值是________。
A、1
B、2
C、3
D、4
(  B  )
11、下列不属于简单数据类型的是________。
A、整数类型
B、类
C、浮点数类型
D、布尔类型
(  D  )
12、已知大写字母a的ascii码是65,小写字母a的ascii码是97,以下不能将变量c中的大写字母转换为对应小写字母的语句是______。
A、c=(c-'A')%26+'a'
B、c=c+32
C、c=c-'A'+'a'
D、c=('A'+c)%26-'a'
(  B  )
13、有如下程序段int *p,a=1,b=2; p=&b; a=*p+a; 执行该程序段后,a的值为______。
A、2
B、3
C、4
D、编译出错
(  A  )
14、若有定义语句:char c='\101'; 则变量 c 在内存中占()
A、1 个字节
B、2 个字节
C、3 个字节
D、4 个字节
(  C  )
15、表达式:10!=9的值是________。
A、ture
B、非零值
C、1
D、0
(  A  )
16、以下说法错误的是________。
A、C 语言中的常量是指在程序运行过程中经常被用到的变量
B、C 语言中的常量是指在程序运行过程中其值不能被改变的量
C、C 语言中的常量可以用一个符号名来代表
D、C 语言中的常量可以用宏来定义
(  B  )
17、下列运算符中优先级最高的是________。
A、<
B、+
C、&&
D、!=
(  D  )
18、设有char str[10] ,下列语句正确的是________ 。
A、scanf("%s",&str);
B、printf("%c",str);
C、printf("%s",str[0]);
D、printf("%s",str);
(  C  )
19、下述标识符中, ( )是合法的用户标识符。
A、A&B
B、void
C、_student
D、ab*
(  C  )
20、能将高级语言编写的源程序转换为目标程序的是()。
A、链接程序
B、解释程序
C、编译程序
D、编辑程序

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

(  C  )
1、在嵌套使用if语句时,c语言规定else总是________。
A、和之前与其具有相同缩进位置的if配对
B、和之前与其最近的if配对
C、和之前与其最近的且不带else的if配对
D、和之前的第一个if配对
(  D  )
2、三种基本结构中,能简化大量程序代码的是________。
A、顺序结构
B、分支结构
C、选择结构
D、重复结构
(  D  )
3、c语言对嵌套的if语句的规定是:else总是与 配对。
A、与之前最近的if
B、第一个if
C、缩进位置相同的if
D、与之前最近的且尚未配对的if
(  D  )
4、下列描述正确的是________。
A、表示m>n为true或m<n为true的表达式为m>n&&m<n
B、switch语句结构中必须有default语句
C、if语句结构中必须有else语句
D、如果至少有一个操作数为true,则包含||运算符的表达式为true
(  C  )
5、执行以下程序段后,w的值为________。
int w='a',x=14,y=15; w=((x||y)&&(w<'a'));
A、-1
B、NULL
C、1
D、0
(  C  )
6、下述语句中,_____中的if语句语法是错误的。 ( )
A、if(x>y);
B、if(x==y)x+=y;
C、if(x!=y)seanf("%d",&x)else scanf("%d",&y);
D、if(x<y)x++;y++;
(  C  )
7、若有定义:float x=1.5; int a=1,b=3,c=2; 则正确的switch语句是________。
A、switch(x) {
case 1.0 : printf("*\n");
case 2.0 : printf("**\n");
}
B、switch((int)x); {
case 1 : printf("*\n");
case 2 : printf("**\n");
}
C、switch(a+b) {
case 1: printf("*\n");
case 2+1: printf("**\n");
}
D、switch(a+b) {
case 1 : printf("*\n");
case c : printf("**\n");
}
(  A  )
8、选择出合法的if语句(设int x,a,b,c;)________。
A、if(a=b) x++;
B、if(a=<b) x++;
C、if(a<>b) x++;
D、if(a=>b) x++;
(  A  )
9、c语言的if语句嵌套时,if与else的配对关系是________。
A、每个else总是与它上面的最近的并且尚未与其他else匹配的if配对
B、每个else总是与最外层的if配对
C、每个else与if的配对是任意的
D、每个else总是与它上面的if配对
(  D  )
10、执行下列程序段后,m 的值是________.
int w=2,x=3,y=4,z=5,m;
m=(w
A、4
B、3
C、5
D、2

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

(  C  )
1、若有以下程序段,w和k都是整型变量:
w=k;
LB:if(w==0)
goto LE;
w--;
printf("*") goto LB;
LE;
则不能与上面程序段等价的循环语句是________。
A、for(w=k;w!—0;w--)printf(”*”);
B、for(w=k;W;--w)printf(”*”);
C、w=k;
while(w--!=O)printf(”*”);
D、w=k:
W++;do
{
w--;printf(”*”);)while(w!=O);
(  A  )
2、从循环体内某一层跳出,继续执行循环外的语句是:________。
A、break语句
B、return语句
C、continue语句
D、空语句。
(  A  )
3、当输入为"hello?"时,下面程序的执行结果是________。
main()
{
char c;
c=getchar();
while(c!='?')
{
putchar(e);
break;
}
}
A、Rvfsu
B、h
C、?
D、hello
(  A  )
4、c语言中while和do-while循环的主要区别是________。
A、do-while的循环体至少无条件执行一次
B、while的循环控制条件比do–while的循环控制条件严格
C、do-while允许从外部转到循环体内
D、do-while的循环体不能是复合语句
(  C  )
5、以下for循环是________。 for(x=0,y=0;(y!=123) && (x<4);x++)
A、无限循环
B、循环次数不定
C、执行4次
D、执行3次
(  C  )
6、下面程序的运行结果是________。
main( )
{
int m=7,n=5,i=1;
do
{
if (i%m==0);
if (i%n==0)
{
printf("%d\n",i);
break;
}
i++;
}
while(i!=0);
}
A、7
B、6
C、5
D、4
(  D  )
7、有以下程序
#include <stdio.h>
main()
{
int x=8;
for( ; x>0; x--)
{
if(x%3)
{
printf("%d,",x--);
continue;
}
printf("%d,",--x);
}
}
程序的运行结果是________。
A、7,4,2
B、8,7,5,2
C、9,7,6,4
D、8,5,4,2
(  C  )
8、以下for循环的执行次数是 for(x=0,y=0;(y=123)&&(x<4);x++);
()
A、是无限循环
B、循环次数不定
C、4次
D、3次
(  D  )
9、以下叙述正确的是()。
A、do-while 语句构成的循环不能用其它语句构成的循环来代替.
B、do-while 语句构成的循环只能用 break 语句退出.
C、用 do-while 语句构成的循环,在 while 后的表达式为非零时结束循环.
D、用 do-while 语句构成的循环,在 while 后的表达式为零时结束循环
(  B  )
10、以下程序段的输出结果为()。
for(i=4;i>1;i--)
for(j=1;j
A、无
B、######
C、#
D、###

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

(  D  )
1、下列选项中,能够正确定义数组的语句是________。
A、int num[0..2008];
B、int num[];
C、int N=2008;
D、#define N 2008
int num[N]; int num[N]
(  B  )
2、以下数组定义中错误的是________。
A、int x[][3]={0};
B、int x[2][3]={{l,2},{3,4},{5,6}};
C、int x[][3]={{l,2,3},{4,5,6}};
D、int x[2][3]={l,2,3,4,5,6};
(  D  )
3、有以下程序
#include <stdio.h>
void fun(int *a, int n)/*fun函数的功能是将a所指数组元数从大到小排序*/
{
int t,i,j;
for(i=o;i<n-1;j++) for(j=j+1;j<n;j++) if(a[i]<a[j])
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
}
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]);
}
程序的运行结果是________。
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,
(  B  )
4、有以下程序
main()
{
int a[4][4]={{1,4,3,2},{8,6,5,7},{3,7,2,5},{4,8,6,1}},i,k,t;
for(i=0;i<3;i++)
for(k=i+1;k<4;k++)
if(a[i][i]<a[k][k])
{
t=a[i][i];
a[i][i]=a[k][k];
a[k][k]=t;
}
for(i=0;i<4;i++)
printf("%d,",a[0][i]);
}
程序运行后的输出结果是________。
A、6,2,1,1,
B、6,4,3,2,
C、1,1,2,6,
D、2,3,4,6,
(  D  )
5、以下能正确定义数组并正确赋初值的选项是______。
A、int N=5,a[N][N];
B、int b[1][2]={{1},{2}};
C、int c[2][]={{1,2},{3,4}};
D、int d[3][2]={{1,2},{3,4}};
(  A  )
6、设有以下语句,其中不是对a数组元素的正确引用的是:______(其中0≤i<6)int a[6]= {11,22,33,44,55,66 },*m=a;
A、&(*(a+i) )
B、*(&a[i])
C、m[i]
D、a[i]
(  B  )
7、对于代码 char c1[8];
scanf("%s",c1);
printf("\n%s",c1);
在程序运行时,输入了"this pretty boy",则对应的运行输出显示结果是________。
A、this pre
B、this
C、this pretty boy
D、数组越界,不能显示
(  B  )
8、关于数组和指针,以下说法错误的是________。
A、数组名本身就是一个指针,指向数组内存的起始位置
B、既可以读入数据到数组中,也可以读入数据到未赋初值的指针中
C、可以让一个指针指向一个同类型的数组
D、指针可以指向同类型的数组中的任意一个元素
(  C  )
9、char a[10]; 不能将字符串"abc"存储在数组中的是________。
A、strcpy(a,"abc");
B、a[0]=0;strcat(a,"abc");
C、a="abc";
D、int i;for(i=0;i<3;i++)a[i]=i+97;a[i]=0;
(  D  )
10、下列哪个数组定义是正确的________。
A、int a[5)5];
B、INT a[10];
C、int a[n];
D、int a[3+2];

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

(  B  )
1、字符串 "\\\"abc\"\\" 的长度是______。
A、11
B、7
C、5
D、3
(  C  )
2、在下列各项中,运算级别最低的为________。
A、算术运算符
B、关系运算符
C、逻辑运算符
D、圆括号( )
(  D  )
3、表达式x+1>x是________。
A、算术表达式
B、非法表达式
C、字符串表达式
D、关系表达式
(  D  )
4、下列字符串中,正确的c标识符是________。
A、foo-1
B、2b
C、new
D、256
(  B  )
5、下列类型的数据不可以存储在可变型变量中的是________。
A、整型
B、字节型
C、单精度型
D、日期型
(  A  )
6、以下不能将s所指字符串正确复制到t所指存储空间的是______。
A、do*t++=*s++;while(*s);
B、for(i=0;t[i]=s[i];i++);
C、while(*t=*s)t++;s++;
D、for(i=0,j=0;t[i++]=s[j++];);
(  B  )
7、以下程序段的执行结果为
#define PLUS(X,Y)X+Y
main()
{
int x=1,y=2,z=3,sum;
sum=PLUS(x+y,z)*PLUS(y,z);
printf("SUM=%d",sum);
}
A、SUM=9
B、SUM=12
C、SUM=18
D、SUM=28
(  D  )
8、下列字符串中可以用作c标识符的是________。
A、2009var
B、goto
C、test-2009
D、-123
(  C  )
9、\、/、mod、*等4个算术运算符中,优先级最低的是________。
A、\
B、/
C、Mod
D、*
(  D  )
10、在宏定义#define PI 3.14159中,用宏名代替一个________。
A、常量
B、单精度数
C、双精度数
D、字符串

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

(  C  )
1、有以下程序片段:
y=-1;
if(x!=0)
if(x>0) y=1;
else y=0;
其能正确表示的数学函数关系是________。
A、-1(x-<0)
B、1(x<0)
0(x=0) -1(x=0)
1(x>0) 0(x>0)
C、0(x<0)
D、-1(x<0)
-1(x=0) 1(x=0)
1(X>0) 0(x>0)
(  D  )
2、若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是________。
A、函数的实参和其对应的形参共占同一存储单元
B、形参只是形式上的存在,不占用具体存储单元
C、同名的实参和形参占同一存储单元
D、函数的形参和实参分别占用不同的存储单元
(  D  )
3、putchar ( )函数可以向终端输出一个 ( ) 。
A、整型变量表达式值
B、实型变量值
C、字符串
D、字符或字符型变量值
(  C  )
4、计算斐波那契数列第n项的函数定义如下: int fib(int n)
{
if(n==0) return1;
else if(n==1)
return 2;
else
return fib(n-1)+fib(n-2);
}
若执行函数调用表达式fib(2),函数fib被调用的次数是________。
A、1
B、2
C、3
D、4
(  A  )
5、有以下程序
#include<stdio.h>
void fun(int n,int*s) {
int f;
if(n==1)*s=n+1;
else fun(n-1,&f);
*s=f;
}
main() {
int x=0;
fun(4,&x);
printf("%d\n",x);
}
程序运行后的输出结果是______。
A、2
B、1
C、3
D、4
(  D  )
6、有以下程序:
main()
{
int m=3,n=4,x;
x;
-m++;
x=x+8/++n;
printf("%d\n",x);
}
程序运行后的输出结果是________。
A、3
B、5
C、-1
D、-2
(  B  )
7、有以下程序:
void ss(char *s,char t)
{
while(*s)
{
if(*s==t)
*s=t-''a''+''a'';
s++;
}
}
main()
{
char strl[100]="abcddfefdbd",c=''d'';
ss(strl,c);
printf("%s\n",strl);
}
程序运行后的输出结果是________。
A、ABCDDEFEDBD
B、abcDDfefDbD
C、abcAAfefAbA
D、Abcddfefdbd
(  B  )
8、请选出合法的c语言赋值语句。( )
A、a=b=58
B、i++;
C、a=58,b=58
D、k=int(a+b);
(  B  )
9、有以下程序
main()
{
int a=666,b=888;
printf("%d\n",a,b);
}
程序运行后的输出结果是______。
A、错误信息
B、666
C、888
D、666,888
(  C  )
10、下面说法正确的是________。
A、任何包含数学运算的函数都只能使用单一的基本结构
B、每个 C 语言程序 MAIN()必须定义函数,否则编译失败
C、无论什么样的复杂算法,都可以使用三种基本结构来实现
D、只要程序是使用基本结构编写的,就不会出现算法错误

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

(  A  )
1、若程序中定义了以下函数 double myadd(double a,double b)
{
return (a+b);
}
并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是________。
A、double myadd(double a,b);
B、double myadd(double,double);
C、double myadd(double b,double a);
D、double myadd(double x,double y);
(  D  )
2、以下能正确定义数组并正确赋初值的语句是______。
A、int n=5,b[n][n];
B、int a[1][2]={{1},{3}};
C、int c[2][]={{1,2},{3,4}}
D、int a[3][2]={{1,2},{3,4}}
(  B  )
3、当调用函数时,实参是一个数组名,则向函数传送的是 _______ 。
A、数组的长度
B、数组的首地址
C、数组每一个元素的地址
D、数组每个元素中的值
(  D  )
4、已知3个字符为:a、z和8,按它们的ascii码值升序排序,结果是________。
A、8,a,Z
B、a,8,Z
C、a,Z,8
D、8,Z,a
(  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
(  B  )
6、设int x:,则经过______ 后,语句*px=0; 可将x值置为0。
A、int*px;
B、int const *px=&x;
C、int* const px=&x:
D、const int *px=&x;
(  B  )
7、以下关系表达式中,其值为true的是________。
A、"XYZ">"XYz"
B、"VisualBasic"<>"visualbasie"
C、"the"="there"
D、"Integer"<"Int\
(  C  )
8、下面程序段的运行结果是________。
char * format="%s,a=%d,b=%d\n";
int a=11,b=10;
a+=b;
printf(format,"a+=b",a,b);
A、for,"a+=b",ab
B、format,"a+=b"
C、a+=b,a=21,b=10
D、以上结果都不对
(  A  )
9、以下关于字符串的叙述中正确的是________。
A、空串比空格打头的字符串小
B、两个字符串中的字符个数相同时才能进行字符串大小的比较
C、可以用关系运算符对字符串的大小进行比较
D、C 语言中有字符串类型的常量和变量
(  D  )
10、下面说法中错误的是________。
A、共用体变量的地址和它各成员的地址都是同一地址
B、共用体内的成员可以是结构变量,反之亦然
C、在任一时刻,共用体变量的各成员只有一个有效
D、函数可以返回一个共用体变量

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

(  B  )
1、struct ex
{
int x ;
float y;
char z ;
}
example;
则下面的叙述中不正确的是________。
A、struct结构体类型的关键字
B、example是结构体类型名
C、x,y,z都是结构体成员名
D、struct ex是结构体类型
(  A  )
2、有以下程序 struc stu
{
char name[10];
int num;
};
void f1(struct stu c)
{
struct stu b={"lisiguo",2042};
c=b;
}
void f2(struct stu *c)
{
struct stu b={"sundan",2044} ;
*c=b;
}
main( )
{
struct stu a={"yangsan",2041},b={"wangyin",2043} ;
f1(a);
f2(&b);
printf("%d %d\n",a.num,b.num);
}
执行后的输出结果是________。
A、2041 2044
B、2041 2043
C、2042 2044
D、2042 2043
(  D  )
3、有以下程序
#include <stdio.h>
struct tt
{
int x;
struct tt*y;
}
*p;
struct tt a[4]={20,a+1,15,a+2,30,a+3,17,a};
main()
{
int i;
p=a;
for(i=1;i<=2,i++)
{
printf("%d,",p->x);
p=p->y;
}
}
程序的运行结果是________。
A、20,30,
B、30,17
C、15,30,
D、20,15
(  D  )
4、下面程序的输出是______。
main ()
{
struct cmplx
{
int x ;
int y ;
}
cnum[2]={1 , 3 , 2 , 7};
printf ( "%d\n" , cnum[0].y/cnum[0].x*cnum[1].x );
}
A、0
B、1
C、3
D、6
(  C  )
5、设有如下枚举类型定义: enum language
{
basic=3 , assembly , ada=100 , cobol , fortran
};
枚举量 fortran 的值为 。
A、4
B、7
C、102
D、103
(  A  )
6、设有以下语句
typedef struct s
{
int g;
char h;
}
t;
则下面叙述中正确的是________。
A、可用S定义结构体变量
B、可以用T定义结构体变量
C、S是struct类型的变量
D、T是struct S类型的变量
(  D  )
7、设有以下语句
typedef struct tt
{
char c;
int a[4];
}
cin;
则下面叙述中正确的是______。
A、可以用TT定义结构体变量
B、TT是struct类型的变量
C、可以用CIN定义结构体变量
D、CIN是struct TT类型的变量
(  C  )
8、以下scanf函数调用语句中不正确的是__。
struct pupil
{
char name[20];
int age;
int sex;
}
pup[5], *p=pup;
A、scanf("%s", pup[0].name);
B、scanf("%d", &pup[0].age);
C、scanf("%d", p->age);
D、scanf("%d", &(p->sex));
(  A  )
9、在下列程序段中,枚举变量c1,c2的值依次是________。
enum color
{
red,
yellow,
blue=4,
green,
white
}
c1,c2;
c1=yellow;
c2=white;
printf("%d,%d\n",c1,c2);
A、1,6
B、2,5
C、1,4
D、2,6
(  A  )
10、在C语言中,下面那种数据类型不属于构造类型____
A、枚举类型
B、数组类型
C、结构体类型
D、共用体类型

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

(  B  )
1、已知在ascii代码中,字母b的序号为66,以下程序的输出的结果是________。
main()
{
char c1='b', c2='d';
printf("%d,%c\n",c1,c2);
}
A、B, 66
B、66,D
C、B,D
D、66,68
(  C  )
2、以下程序段的输出结果是________。 int k,n,m;
n=10;
m=1;
k=1;
while (k<=n)
{
m*=2;
k+=4;
}
printf("%d\n",m);
A、4
B、16
C、8
D、32
(  C  )
3、有以下程序
#include <stdio.h>
main()
{
char *s={"abc"};
do
{
printf("%d",*s%10);
s++;
}
while(*s);
}
注意:字母a的ascⅱ码值为65。程序运行后的输出结果是________。
A、5670
B、656667
C、567
D、ABC
(  A  )
4、有以下程序
#include <stdio.h>
void f(int *p,int *q);
main()
{
int m=1,n=2,*r=&m;
f(r, &n);
printf("%d,%d",m,n);
}
void f(int *p,int *q)
{
p=p+1;
*q=*q+1;
}
程序运行后的输出结果是________。
A、1,3
B、2,3
C、1,4
D、1,2
(  B  )
5、有以下程序
#include <stdio.h>
int fun(int x,int y)
{
if(x==y) return(x);
else return((x+y)/2);
}
main()
{
int a=4,b=5,c=6;
printf("%d\n",fun(2*a,fun(b,c)));
}
程序运行后输出的结果是________。
A、3
B、6
C、8
D、12
(  B  )
6、执行下列程序时输入12345678,程序的运行结果是______。
#include<stdio.h>
main()
{
int x,y;
scanf("%2d%2d");
printf("%d\n",x+y);
}
A、17
B、46
C、15
D、9
(  A  )
7、两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是________。
#include<stdio.h>
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
(  C  )
8、以下程序执行后SUm的值是________。
main()
{
int i,sum;
for(i=1;i<6;i++) sum+=i;
printf(”%d”,sum);
}
A、15
B、14
C、不确定
D、0
(  C  )
9、有以下程序:
int fun(int x)
{
int P;
if(x==0||x==1)return(3);
p=x-fun(x-2);
return P;
}
main()
{
printf(”%d”,fun(7));
}
执行后的结果是________。
A、7
B、3
C、2
D、0
(  C  )
10、以下程序的输出结果是________。
main() 
{
int a=100;
printf("%d\n",++a);
 
}
A、0
B、100
C、101
D、无法确定