近年《程序设计基础》期末试卷
(2016-01-21 20:06:57)| 分类: C 试卷 |
一、选择题(每题2分,共40分)
(1)以下说法中正确的是______
A)continue语句的作用是结束整个循环的执行
B)只能在循环体内和switch语句体内使用break语句
C)在循环体内使用break语句或continue语句的作用相同
D)从多层循环嵌套中退出时,只能使用goto语句
(2)以下为不合法的用户标识符的是______
(3)设int
n=10,i=2;则赋值运算n%=i+2执行后,n的值是______
(4)定义 int
y=7,z=5,执行语句(++z>=y- -)?++z:y-
-后
(5)有以下程序
(6)凡是函数中未指定存储类别的局部变量其隐含的存储类别是______
(7)下列代码段将打印出 ______.
#include
int main (void)
{
char
for(p=a+6;p
{
}
}
A、Zho
(8)数组 int
a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12}中,a[2][2]的值是______
(9)下面关于运算符优先顺序的描述中正确的是______
(10)有以下程序
(11)要求以下程序的功能是计算:s=
(12)已定义ch为字符型变量,以下赋值语句中错误的是______
(13)C语言中函数返回值的类型由______
(14)若有说明 int
x,y;不能实现以下函数关系的程序段是______
y=-1
y=0
y=1
A)
else
C)
{if
else
(15)以下while循环____次。
#include
int
main()
{
int num=0;
while(num<=2)
{num++;printf("%d\n",num);}
}
A) 1 2 3 4
(16)以下程序的输出结果是______
int main()
(17)fun函数前面应该写哪种类型
______
(18)定义如下数组:
int i;
int x[3][3]={1,2,33,4,5,62,73,86,91};
则下面语句的输出结果是_________
printf(“ %d”,x[i][3-i]);
A) 2
(19)设有以下函数:
int main()
A) 1
(20)若有以下定义和语句:
double r=99,*p=&r;
*p=r;
则叙述中正确的是______
B)
C)
D)
(1)两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是〖1〗
#include
int main(void)
{
int x;
scanf ("%d",&x);
if (x++>5) printf("%d\n",x);
else printf("%d\n",- -x);
return 0;
}
(2)以下程序运行后的输出结果是〖2〗
#include
int main (void)
{
x=7;
p=&x;
pp=&p;
printf("x=%d\n",(*p)*(**pp));
return 0;
}
(3)以下程序运行后的输出结果是〖3〗
#include
int main (void)
{
}
(4) 以下程序运行后的输出结果是〖4〗
#include
#include
int main (void)
{
char a[] = "Zhong Guo";
char b[20] , *p1, *p2;
p1 = a; p2 = b;
for(; *p1 != '\0'; p1++, p2++)
*p2 = '\0';
printf("string a is: %s\n", a);
printf("string b is: ");
p2 = b;
puts(p2);
return 0;
}
(5) 以下程序运行后的输出结果是〖5〗
#include
#include
int main(void)
{
}
(6)
以下程序运行后的输出结果是〖6〗
#include
int main (void)
{
}
int max(int a,int b)
{
if(a>b)
return a;
else
return b;
}
(7)
以下程序运行后的输出结果是〖7〗
#include
int main(void)
{
int a,b,c,d,x;
a=c=0;
b=x=1;
d=10;
if(a) d=d-5;
else if(!b)
if(!c) x=5;
else x=25;
printf("d=%d,x=%d\n",d,x);
return 0;
}
(8) 以下程序运行后的输出结果是〖8〗
#include
int swap(int *p1, int *p2)
{
int p;
p = *p1;
*p1 = *p2;
*p2 = p;
return 0;
}
int main (void)
{
int a=17, b=79;
int *pointer_1, *pointer_2;
pointer_1 = &a; pointer_2 = &b;
if (a
printf("%d,%d\n",a,b);
return 0;
}
(9) 以下程序运行后的输出结果是〖10〗
#define S(r) r*3
#include
int main (void)
{
}
(10) 以下程序运行后的输出结果是〖10〗
#include
int main (void)
{
int x=1,y=0,a=0,b=0;
switch (x)
{ case
{ case 0: a++; break;
}
}
printf("\na=%d,b=%d", a, b);
return 0;
}
三、程序设计题(每题10分,共30分)
1.
2.
要求:
(a)学生信息包括:学号、姓名、成绩;
(b)学生信息必须采用结构体类型;
(c)用指针完成操作。
3. 输入正整数n,将1~n中的所有完数一个占一行保存到文本文件”d:\\result.txt”中。
说明:完数是指一个正整数,它除本身之外的所有因子和等于自身。例如:正整数6除
自身之外的因子为1,2,3,
6 = 1+2+3
所以6是完数。

加载中…