08级计算机技术基础试题A_模板_
学院 专业 级 学号 姓名
………………………密………………………封………………………线……………………
山东大学 《计算机技术基础》 课程试卷
2008-2009 学年 二 学期
………………………密………………………封………………………线……………………
3. 以下程序的运行结果为 。
#include
main( )
{static char str[]=”how old are you?”;
char *p;
int i; p=str;
for(i=0;str[i]!=’\0’;i++)
{if(str[i]= =’ ’) break;
*p++=str[i]; }
*p=’\0’;
puts(str);
} 4. 以下程序的运行结果为 。
#include
struct STU
{char num[10];
float score[3]; }
void main( )
{struct STU s[3]={{“20021”,90,95,85},
{“20022”,100,95,90},{“20023”,95,80,
75}},*p=s;
int i;
float sum=0;
for(i=0;i<3;i++)
sum=sum+p->score[i];
printf(“%6.2f\n”,sum); }
5. 以下程序的运行结果为 。
#include
void fun( int d[10])
{ static int j=0;
do
d[j]+=d[j+1];
while(++j<2); }
main( )
{ int k,a[10]={1,2,3,4,5};
for(k=1; k<3; k++) fun(a);
for(k=1; k<5; k++)
printf(“%d”, a[k]); }
6. 以下程序的运行结果为 。
#include
#define PR(ar) printf("%d ",ar)
main( ) { int j, a[]={1,3,5,7,9,11,13,15}, *p=a+5;
for(j=3; j; j--)
{ switch( j)
{case1:
case2: PR(*p++); break;
case3: PR(*(--p));
}
}}得分阅卷人四、编程题(共46分)
设计一程序输入下列字符串A123B456C789D0X,将此字符串中的数字与非数字分离出来,得1234567890与ABCDX。(8分)
编写程序,用递归函数Sum(int n)完成计算。(8分)
有一圆心在原点,半径为10的圆。编写一个程序,将圆内所有的整点(即点的纵横坐标均为整数的点)的坐标输出。(10分)
8位参赛人,10 位评委。对每位参赛人输入10个评委的分数,去掉最高分与最低分后求其平均分,并对所有参赛者按平均分高低排序。(10分)
编程实现将文件A.DAT中的大写字母变成小写字母,然后将所有内容写入到另一文件B.DAT中。(10分)
题号一二三四五六七八九十总分总分人得分
得分阅卷人一、单项选择题 (共20分, 每小题1分)
1. 不是C语言的特点。
A. 运算符丰富 B. 数据结构丰富
C. 可以直接访问物理地址 D. C函数包含的语句数目没有限制
2. 是C程序的基本结构单位。
A. 文件 B. 语句 C. 函数 D. 表达式
3. 以下可用作C语言用户标识符的一组标识是 。
A.void define WORD B. a3-3 _123