大理大学往年计算机C语言专升本复习题
本试卷为大理大学往年计算机C语言专升本复习题,题目包括:单项选择题,填空题,编程题。
覆盖的内容包括:理论题,基础知识,控制结构,循环结构,指针,数组/指针数组,字符串/字符串指针,函数/函数指针,结构体,程序题。
计算机C语言专升本复习题
一、单项选择题 (共20题,每题2分,共计40分)
( C )
1、若有以下说明,则( )不是对strcpy库函数正确的调用。 strcpy库函数用于复制一个字符串:char*str1=="abed", strz[10],*str3="hijklmn",*str4[-2],*str5="aaaa";
( C )
2、avg功能是求整形数组中的前若干个元素的平均值,设数组元素个数最多不超过则下列函数说明语句错误的是________。
( A )
3、下面程序段执行结果是________。 int i=5; printf("%d,%d,%d", i,(++i)+(++i)+(i++),i);
( B )
4、以下能正确定义一维数组的选项是________。
( C )
5、在函数中默认存储类型说明符的变量应该是________存储类型。
( B )
6、下列选项中均属于c语言合法的标识符是________。
( B )
7、在一个应用程序中有如下定义:int a[]= {1,2,3,4,5,6,7,8,9,10 },为了打印输出数组a的最后一个元素,下面正确的代码是________。
( C )
8、以下对结构体类型变量的定义中,不正确的是________。
( B )
9、下列程序段执行后的输出结果为 int x=3; int y=10; printf("%d",y%x);
( B )
10、有以下定义和语句:
struct students {
int num;
char name[20];
char c;
struct {
int grade1;
int grade2;
} s;
};
struct students w,*pw;
*pw=w;
下列赋值语句不正确的是________。
( A )
11、已知英文字母m的ascii码值为109,那么英文字母p的ascii码值是________。
( B )
12、现代计算机中采用二进制数制是因为二进制数的优点是______。
( C )
13、设有如下说明
typedef struct st
{
long a;
int b;
char c[2];
}
new;
则下面叙述中正确的是______。
( C )
14、下列程序的输出结果是________。
main ()
{
int a = 4, b = 5, c;
if (a < b)
{
c = a * b;
printf ("%d,%d,%d\n", b, a, c);
}
else
{
c = b / a;
printf ("%d,%d,%d\n", b, a, c);
}
}
( D )
15、有以下程序
#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");
}
}
程序的运行结果是______。
( C )
16、下面各语句行中,能正确进行给字符串赋值操作的语句行是______。
( B )
17、已知字母a的ascii码为十进制数65,且ch为字符型变量,则执行语句ch='a'+'6'-'3'; 后,ch中的值为__。
( A )
18、定义变量 int a; ,则表达式 a = 3, 5; 执行过后,a的值和表达式的值分别是________。
( D )
19、巳知字母a 的ascii 码是65,以下程序的执行结果是________。
main()
{
char c1='a',c2='y';
printf("%d,%d\n",c1,c2);
}
( A )
20、若使用一维数组名作函数实参,则以下正确的说法是________。
二、填空题 (共10题,每题2分,共计20分)
1、若i为整型变量,且i%2==0的值为1,则变量i为________数。
2、以下函数值的类型是【1】。
fun (float x)
{
float y;
y= 3*x-4;
return y;
}
3、下列程序段的运行结果是________。
main()
{
int n,s=0 ;
for(n=1; n<=5; n++)
{
if(n%2==0) continue;
s=s+n;
}
printf("%d\n", s);
}
4、开发一个c程序要经过编辑、编译、()和运行4个步骤、
5、下列程序段的运行结果是_____。
#define sub(x , y) x-y
main( )
{
int a , b , s;
A=5, b=6;
S=sub(a,b);
printf("s=%d\n" , s);
}
6、下列程序段的运行结果是________。
void fun()
{
int a=3;
}
main()
{
int a=1;
fun(- );
printf("a=%d",a);
}
7、#include <stdio.h>
void main()
{
int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;
for (i=1;i<3;i++) for (j=0;j<i;j++) s+=a[i][j];
printf("%d\n",s);
}
8、|x|<10,写作程序为
9、函数del 的作用是删除有序数组a 中的指定元素x。已有调用语句n=del(a,n,x);
其中实参n 为删除数组元素的个数,赋值号左边的n 为删除后数组元素的个数。请填空。del(int a[],int n,int x)
{
int p,i;
p=0;
while (x>=a[p]&&p<n)【1】________;
for(i=p-1;i<n;i++)【2】________;
n=n-1;
return n;
}
10、赋值语句是由______加上一个分号构成。
三、编程题 (共3题,每题0分,共计40分)
1、编写程序:实现求1-1000之间的所有奇数的和并输出。
2、编写input()和output()函数,输入输出5个学生记录,每个记录包括num、name、score[3],使用结构体实现。
3、用空格或换行分开的字符串称为单词。输入多行字符串,直到遇到了单词 "stop" 时才停止。最后输出单词的数量。用于分割单词的空格或换行可能多于1个。单词数量不包括"stop" 。
相关标签:
- C语言
- 大理大学
- 专升本复习题