高级语言程序设计(一) 00342 全国高等教育自学考试 第1章 概述
一、选择题
1、正确的C语言用户自定义标识符是 【A】 P5
A. print B. float C. when? D.random﹪2
2、C语言程序编译时,程序中的注释部分 【 D】 P8
A. 参加编译,并会出现在目标程序中
B. 参加编译,但不会出现在目标程序中
C. 不参加编译,但会出现在目标程序中
D. 不参加编译,也不会出现在目标程序中
3、C语言中,″\x3d″在内存中占用的字节数是( B )
A.1 B.2 C.4 D.5
第2章 基本数据类型和运算
一、选择题
1、下列表达式的值为0的是 【 C 】
A. 3﹪5 B. 3/5.0 C. 3/5 D. 3<5
2、4. 设int a = 3;则表达式a<1&& - - a>1的运算结果和a的值分别是【B 】 A. 0和2 B. 0和3 C. 1和2 D. 1和3
3、属于C语言基本数据类型的是(B ) P10
A.指针型 B.无符号整型 C.数组型 D.结构型
4、C语言的长整型数值在计算机中占用的字节个数是(D)
A.1 B.2 C.3 D.4
5、设int x;则执行printf(″%x\n″,~x^x);的结果是( D )
A.0 B.1 C.ff D.ffff
6、设int a=9,b=20;则printf(″%d,%d\n″,a--,--b);的输出结果是( A)
A.9,19 B.9,20 C.10,19 D.10,20
二、填空题
1、初始化值是0.618的双精度变量a的定义形式为 double a=0.618 。
2、表达式 !10! = 1的值是 1 。
3、“20<x≤30”的C语言表达式是.x>20&&x<30或者(x>20)&&(x<30)。
4、表达式a = 1,a + 1,a + + 的值是 2 。
5、设int y;执行表达式(y=4)||(y=5)||(y=6)后,y的值是 4 。
6、设char ch=′A′;则printf(″%c″,(ch>=′A′ &&
ch<=′Z′)?ch+32:ch);的值是 a 。
第3章 顺序结构和循环结构
一、选择题
1、下列保留字中用于构成循环结构的是 【B】
A. if B. while C. switch D. default
2、 与语句if(a>b)if(c>d)x = 1;else x = 2;等价的是【A 】
A. if(a>b){if(c>d) x = 1;else x = 2;}
B. if(a>b){if(c>d) x = 1;} else x = 2;
C. if((a>b) && (c>d)) x = 1;else x = 2;
D. if(a< =b) x = 2;else if (c>d) x = 1;
3、设 char x =′a′;则printf(″x = ﹪c, y = ﹪c \ n″,x,97);的输出是【 D】
A. x = a,y = 97 B. x = 97,y = a C. x = 97,y = 97 D. x = a,y = a
4、对于while语句,错误的说法是( B)
A.用条件控制循环体的执行次数 B.循环体至少要执行一次
C.循环体有可能一次也不执行 D.循环体中可以包含若干条语句
5、执行下列语句
int a=8,b=7,c=6;
if(a<b)if(b>c){a=c;c=b;}
printf(″%d,%d,%d\n″,a,b,c);
后输出的结果是( C)A.6,7,7 B.6,7,8 C.8,7,6 D.8,7,8
5、设int b[ ]={1,2,3,4},y,*p=b; 则执行语句y=*p++;之后,变量y的值为( A ) A.1 B.2 C.3 D.4
二、填空题
1、设int i = 5;则循环语句while (i > = 1) i - -;执行后,i的值为0 。
2、结构化程序设计的三种基本结构是:选择结构、循环结构和顺序结构 。
3、下列程序
int x=3;
do{printf(″%d″,--x);}while(!x);
循环执行的次数是 1 。
三、程序分析题
1、 # include ″stdio.h″
main()
{char c;
c = getchar();
if(c> =′a′&&c< =′z′) ‖c> =′X′&&c< =′Z′)c = c - 23;
printf(″﹪c \ n″,c);
}
设从键盘上输入Next ↙
答:Q
2、.main( )
{
int s=0,i;
for(i=1;;i++)
{
if(s>50)break;
if(i%2==0) s+=i;
}
printf(″i=%d,s=%d\n″,i,s);
}
答: i=15,s=56
四、程序填充题
1、输入一字符串(换行为结束标志)统计其中数字(0,1,2,…,9不单独统计)、空白和其它字符出现的次数。
# include ″stdio.h″
main()
{ char c;
int ___________________________;
while((c = getchar())! =′\ n′)
{
if(__________________________)digit + + ;
else if(c = =′′‖c = =′\ t′) ++ blank;
else __________________________;
}
printf(″digit =﹪d,blank =﹪d,other =﹪d \ n″,digit,blank,other);
}
答:.(1)digit=0,blank=0,other=d (2)c>=’0’&&c>=’9’
(3)++other或者 othe++
五、程序设计题
1、 求出10至1000之内能同时被2、3、7整除的数,并输出。
答:main()
{int i;
for(I=10;I<=1000;I+++)
if(I%2= =0)&&(I%3= =0)&&(I%7= =0)
print(“I=%d/n”,i);
}
2、 求1到100之间的奇数之和及偶数之和,并将二者输出。
答:main()
{int a=0,b=0,I;
for(I=2;I<=100;I+=2
{a+=I;b+=i-1}
printf(“Sum of even umberz%d/n”,a);
printf(“Sum of odd umberz%d/n”,b),
}
3、计算e=1+的值并输出(设n=20)。
答:40、main()
{double e,f ; int i;
e=f=1;
for(i=1;i<=20;i++)
{f*=i;e+=1/f ;}
printf(“\ne=%f”,e)}
|