吉林化工学院C语言期末
本试卷为吉林化工学院C语言期末,题目包括:单项选择题,填空题,编程题。
覆盖的内容包括:理论题,基础知识,控制结构,循环结构,指针,数组/指针数组,字符串/字符串指针,函数/函数指针,结构体,程序题。
C语言期末
一、单项选择题 (共20题,每题2分,共计40分)
(  D  ) 
1、设变量已正确定义,则以下能正确计算f=n!的程序是________。
(  D  ) 
2、以下选项中能表示合法常量的是________。
(  C  ) 
3、设有定义:"double x[10],*p=x; ",以下能给数组x下标为6的元素读人数据的正确语句是________。
(  D  ) 
4、有以下程序 char fun(char x , char y)
{
if(x<y) return x;
return y;
}
main( )
{
int a=’9’,b=’8’,c=’7’;
printf("%c\n",fun(fun(a,b),fun(b,c)));
}
程序的执行结果是________。
(  B  ) 
5、当调用函数时,实参是一个数组名,则向函数传送的是 _______ 。
(  B  ) 
6、设有如下定义:
struct sk
{
int a ;
float b ;
}
data , *p ;
若有 p=&data ;
, 则对 data 中的 a 域的正确引用是______。
(  B  ) 
7、若有定义:int a[4][10]; 则以下选项中对数组元素a[i][j]引用错误的是______。 (0<=i<4,0<=j<10)
(  A  ) 
8、有以下程序
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  ) 
9、下述程序执行的输出结果是________。
#include<stdio.h>
main() {
char a[2][4];
strcpy(a,"are");
strcpy(a[1], "you");
a[0][3]='&';
printf("%s\n",a);
}
(  D  ) 
10、已有定义int a= -2; 和输出语句 printf("%8x",a); 以下正确的叙述是________。
(  A  ) 
11、有以下程序
#include <stdio.h>
main( )
{
int x = 0x13;
printf("int:%d\n", x+1);
}
程序运行后的输出结果是________。
(  C  ) 
12、以下各语句或语句组中,正确的操作是______。
(  A  ) 
13、有以下程序
main()
{
int a=15,b=21,m=0;
switch(a%3)
{
case 0:m++;
break;
case 1:m++;
switch(b%2)
{
default:m++;
case 0:m++;
break;
}
}
printf("%d\n",m);
}
程序运行后的输出结果是______。
(  B  ) 
14、已有定义:char c; 不能用于判断c中的字符是否为大写字母的表达式是______。
(  A  ) 
15、以下选项中不能作为c语言合法常量的是______。
(  A  ) 
16、若变量已正确定义,对以下while循环结束条件的准确描述是________。
flag = 1;
denominator = 1;
item = 1.0;
pi = 0;
while(fabs(item) >= 0.0001)
{
item = flag * 1.0 / denominator;
pi = pi + item;
flag = -flag;
denominator = denominator + 2;
}
(  C  ) 
17、如下程序段运行输出的结果为________。 int a=5,b=6,c; c=++a+b--; printf("%d,%d,%d%\n",a,b,c);
(  A  ) 
18、在C语言中,下面那种数据类型不属于构造类型____
(  A  ) 
19、结构体类型的定义允许嵌套是指()。
(  A  ) 
20、C语言程序中,当调用函数时()。
二、填空题 (共10题,每题2分,共计20分)
1、有以下程序
main( )
{
int n=0,m=1,x=2;
if(!n) x-=1;
if(m) x-=2;
if(x) x-=3;
printf("%d\n",x);
}
执行后输出结果是 ________。
2、已有定义int a; floatb,x; char c1,c2; 为使a=3,b=6.5,x=12.6,c1=’a’,c2=’a’正确的函数调用语句是______________,输入数据的方式是_________________。
3、以下sstrcpy( )函数实现字符串复制,即将t所指字符串复制到s所指向内存空间中,形成一个新的字符串s。请填空。
void sstrcpy(char *s,char *t)
{
while(*s++= ________);
}
main( )
{
char str1[100],str2[]="abcdefgh";
sstrcpy(str1,str2);
printf("%s\n",str1);
}
4、字母'a'的ascii码值为多少()
5、在c语言中,标识符是由英文字母、( )、下划线组成的。
6、若有int a[3]={1,2,3}; 则*(a+1)+1=________。
7、若int a=5,b=4,c=2; 表达式a>b!=c 的值是________。
8、对于文件末尾检测函数feof(),如果文件指针未到文件末尾,则函数返回值是________。
9、main()
{
int a,b;
for (a=1,b=1;a<=100;a++)
{
if(b>=20) break;
if(b%3==1)
{
b+=3;
continue;
}
b-=5;
}
}
程序的输出结果a的值为________。
10、要调用数学处理函数时,在 #include命令中应包含()头文件。
三、编程题 (共3题,每题0分,共计40分)
1、输入5位同学的一组信息,包括学号、姓名、数学成绩、计算机成绩,求得每位同学的平均分和总分,然后按照总分从高到低排序。
2、输入一个正整数n(n<=6),再输入n×n的矩阵,求其主对角线元素之和及副对角线元素之和并输出。
3、输入一个字符串和一个特定字符,在字符串中删除从该特定字符开始的所有字符。例如输入字符串为"abcdefg",特定字符为'd',删除后的字符串为"abc";输入字符串为"abcdefg",特定字符为'x',则输出“特定字符不存在”。
相关标签:
- C语言
 - 吉林化工学院
 - 期末