学历类 自考 工学类 计算机信息管理
高级语言程序设计全真模拟 34 题 含答案 计算机信息管理
1 单选题 1 / 34
[单选题]世界上第一台计算机ENIAC问世的同时,冯•诺伊曼提出的概念是( ).
A 过程控制 B 存储程序 C 程序控制 D 进程管理
查看答案 B. 存储程序
2 单选题 2 / 34
[单选题]C程序的组成是( ).
A 若干子程序 B 循环体 C 若干过程 D 语句
查看答案 D. 语句
3 单选题 3 / 34
[单选题]下列运算符中,优先级最高的是( ).
A [ ] B + + C % D &&
查看答案 A. [ ]
4 单选题 4 / 34
[单选题]设a=1,b=2,c=8,d=7,x=10,y=10,执行(x=a>b)&&(y=c >d)后y的值是( ).
A 1 B 2 C 10 D 4
查看答案 C. 10
5 单选题 5 / 34
[单选题]正确的字符常量是( ).
A ’/1010’ B ’68’ C “B” D GO
查看答案 A. ’/1010’
6 单选题 6 / 34
[单选题]为了避免二义性,C语言规定else子句总是与( )匹配。
A 同一行上的if B 缩进位置相同的If C 其之前最近的if D 其之后最近的if
查看答案 C. 其之前最近的if
7 单选题 7 / 34
[单选题]设int m = 5;,语句while(m = = 0) printf("%d" ,m - =2);的循环休执行的次数是( ).
A 0 B 1 C 2 D 无限
查看答案 A. 0
8 单选题 8 / 34
[单选题]设char str[20];,从键盘能完=整地输入字符串“I am a student.”的语句是( ).
A str= gets( ); B gets(str); C scanf( " %s" ,str); D scanf( "%c" ,str);
查看答案 B. gets(str);
9 单选题 9 / 34
[单选题]设有数组定义语句”int a [50];”,下列数组元素引用中下标不越界的是( ).
A a[0] B a[ -1] C a[50] D a[51]
查看答案 A. a[0]
10 单选题 10 / 34
[单选题]在一个文件的不同函数中不能重名的是( ).
A 函数名 B 形式参数 C auto型内部变量 D register型内部变量
查看答案 A. 函数名
11 单选题 11 / 34
[单选题]设int x =5,* p = &x;,表达式的值为5的是( ).
A p B *p C &x D *x
查看答案 B. *p
12 单选题 12 / 34
[单选题]关于指针运算符“*”的说法错误的是( ).
A 是单目前缀运算符 B 运算对象只能是指针变量 C 运算结果是运算对象对应的变量或数组元素等 D 运算结合性是自右向左
查看答案 B. 运算对象只能是指针变量
13 单选题 13 / 34
[单选题]设有下列数据定义语句,则表达式sizeof( )的值是( ). struct {char a; short b; float c;} abc;
A 3 B 7 C 8 D 6
查看答案 B. 7
14 单选题 14 / 34
[单选题]条件编译的基本形式如下: #XXX 标识符 程序段1 #else 程序段2 #endif 其中XXX可以是( ).
A ifdef 或 include B ifdef 或 ifndef 或 define C ifdef 或 ifndef 或 if D define 或 include
查看答案 C. ifdef 或 ifndef 或 if
15 单选题 15 / 34
[单选题]下列语句中,能将c定义为文件型指针的是( ).
A FILEc B FILE *c C file c D file * c
查看答案 B. FILE *c
16 填空题 16 / 34
[填空题]将高级语言编写的源程序边解释边执行的程序称为 __ 。
查看答案 解释程序
17 填空题 17 / 34
[填空题]结构化程序由三种基本结构构成,在每一个模块内部以及模块与模块之间都有三种基本结构,分别是顺序、选择和 __ 。
查看答案 循环
18 填空题 18 / 34
[填空题]C程序通常包括一个或多个函数,其中有且只有一个函数称为主函数,其函数名为 __ 。
查看答案 main
19 填空题 19 / 34
[填空题]“&”在位逻辑运算中表示双目的 __ 运算。
查看答案 位与逻辑
20 填空题 20 / 34
[填空题]设i,j,k均int型变量,则执行下面的for循坏后,k的值为 __ 。for( i =0,j=10;i < = j;i + + ,j - -)k = i + j;
查看答案 10
21 填空题 21 / 34
[填空题]break语句可在循环或 __ 语句中使用。
查看答案 switch
22 填空题 22 / 34
[填空题]设char s[20] =“My”;,则执行strcat(s,”Sun”)后s的内容是 __ 。
查看答案 MySun!
23 填空题 23 / 34
[填空题]函数中的形参和调用时的实参都是数组名时,传递方式为 __ 。
查看答案 地址传递
24 填空题 24 / 34
[填空题]设int a[10], *p =a;,则对a[2]的引用可以是p[2]和*p __ 。
查看答案 +2
25 填空题 25 / 34
[填空题]设有语句typedef float *F;,则数据定义语句F x,y,z[2];,相当于数据定义语句 __ 。
查看答案 float *x,*y,*z[2];
26 主观题 26 / 34
#include < stdio.h > void main( ) { int i; for(i=10;i > = 1;i - -) { if(i < =5)break; printf(“%3d”,i); } printf(“\n”); }
查看答案 10 9 8 7 6
27 主观题 27 / 34
#include < stdio.h > int x = 1;/*全局变量*/ int fx (int p) { x + = p + +; return p; } void main( ) { int y = 1; x + +; printf(“x =%d,fx =%d\n”,x,fx(y) ); }
查看答案 x=3,fx=2
28 主观题 28 / 34
#include < stdio.h > void main( ) { int i; char *country[ ] ={“Brazil”,”Russia”,”India”,”China”,”SouthAfrica”}; for ( i = 1;i < 4;i + =2) printf(“% s\n”,country[ i ] ); }
查看答案 Russia China
29 主观题 29 / 34
#include < stdio.h > struct node { char name[20]; int age; }; void fun1 (struct node s ) { struct node n = {“zhangsan”,23}; s = n; } void fun2 (struct node *t ) { struct node n = {“lisi”,24}; *t = n; } int main (void) { struct node stu1 = {“wangwu”,25}, stu2 = {“zhaoliu’,26}; fun1 (stu1); fun2 (&stu2); printf (“%d,%d\n”,stu1.age,stu2.age); return 0; }
查看答案 25,24
30 填空题 30 / 34
下面程序实现输出两个字符串对应位置相等的字符。 #include < stdio.h > main( ) { char a[ ] =”helloworld”,b[ ] =”helloC”; int i = 0; while (a[ i ] ! =’ \0’&& __ ) if ( a[ i ] = = b[ i ] ) printf (“% c”, __ ); else __ ; return 0; }
查看答案 31 填空题 31 / 34
以下程序的功能是将无符号八进制数字构成的字符串转换为十进制整数。 #include < stdio.h > #include < string.h > main ( ) { char s[6], *p __ ; int n; gets(p); n = *p - __ ; while( __ p ! = ‘ \0’) n = n * 8 + * p - ‘0’; printf(“%d\n”,n); }
查看答案 32 填空题 32 / 34
下列函数的主要功能是从形参fp指向的文件中读取形参n-1个字符(或读到字符’\n’,或遇到文件尾,)补充字符串结束标记符组成字符串,存入形参str指向的内存。 #include <stdio.h> void f(char *st,in n,FILE *fp) { int k; for(k=0;k<n-1;k+ +) { if(feof(fp)) break; __ ; if( *(st+k)= ='\n') { __ ; break;} } __ =’\0’; return; }
查看答案 *(st+k)=fgetc(fp) k++ *(st+k) 33 连线题 33 / 34
利用循环嵌套输出以下图形。 1 2 1 1 2 3 2 1 1 2 3 4 3 2 1 1 2 3 4 5 4 3 2 1
查看答案 #include <stdio.h> void main( ) { int i,j; for(i=1;i<=5;i+ +) { for(j=1;j<=5-i;j+ +)printf(" "); for(j=l;j<=i;j+ +) printf("%2d",j); for(j=i-1;j>=1;j--) printf("%2d",j); printf("\n"); } }
34 连线题 34 / 34
在主函数中输入不同大小的实型数组,计算数组中元素的平均值。
查看答案 #include < stdio. h > float average( float array[ ],int n) { int i; float sum=0, av; for(i=0;i<n;i++ ) sum = sum + array[i]; av = sum/n; return av; } main( ) { int i; float score1[6] ,score2[10],ave; printf( " please input 6 scores for score1:"); for(i=0;i<6;i++) scanf(" %f",&score1[i]); ave = average( score1 ,6); printf( "average score is %5.2f\n" ,ave); printf( " please input 10 scores for score2:" ) ; for(i=0;i<10;i++ ) scanf( " % f" ,&score2[i]); ave = average( score2,10) ; printf( "average score is%5.2f\n". ,ave) ; }