华南农业大学试卷。
2014学年第1学期考试科目:高级语言程序设计
考试类型:(闭卷) 考试时间:90分钟。
学号姓名年级专业。
考试须知:1. 请在答卷上作答,在试卷上作答不得分。
2. 必须在答卷上正确填写班级、学号、姓名等内容。
一、单选题(每题1分,共10分)
1. 调用scanf(“a=%d,b=%d”,&a,&b);时,正确的键盘输入是( )
a.12,23b. a=12,b=23
c.12:23d. 12 23
2. 若有int s[4] =则s[s[0]+s[3]-s[2]] 的值是( )
a. 4 b. 3 c. 2d. 1
3. 在c语言中,一般1个float类型变量占4个字节,则设float x[2][4];假设数组x开始于内存1000单元,则x[1][1]的存储始于( )
a.1004b. 1020c. 1024 d. 1012
4. 下面对c语言运算符的优先级叙述正确的是( )
a. 算术运算符 > 非) >关系运算符 > 与) >或) >赋值运算符。
b. !非) >算术运算符 > 关系运算符 > 与) >或) >赋值运算符。
c. 算术运算符 > 关系运算符 > 非) >与) >或) >赋值运算符。
d. !非) >关系运算符 > 算术运算符 > 与) >或) >赋值运算符。
5. 若有代数式,则正确的c语言表达式是( )
a. 2*x*x*y/b/c/3b.2/3*x*x*y/b/c
c.2*x^2*y/3/b/cd.2*x*x*y/3*b*c
6. 已知a=48, b=0, ch = a' 则表达式(a>=b &&ch='b') b)的值是( )
a.0b.1c.真d.非0
7. 在switch语句中,执行完一个case分支后要使流程跳出switch结构,应使用( )语句。
a.breakb. continue
c.elsed. return
8. 设x、y均为整型变量,且x=9,y=2,则以下语句的输出结果是()
printf(“%d,%d” ,x- -y);
a)9,2 b) 9,1 c)8,1d) 8,2
9. 设有如下程序段。
int k;scanf(“%d”,&k);
while(k!=123)
k+=2;为使程序不出现死循环,则下面描述中最恰当的是( )
a.输入的k除以2的余数应为1或-1 b.输入的k除以2的余数应为1
c.输入的k大于123,程序会死循环 d.循环体不会被执行。
10. 从以下表达式中选出判断a是否为奇数的表达式 (
a. a%2==1 b. a%2 c. a%2==0 d. a/2
二、写出下列程序段的输出结果(每小题4分,共24分)
1. 有下列程序段,请写出运行结果。
#include <>
int main( )
int i=0,a=0;
while(i<20)
i++;if(i%2==0) continue;
a+=i;printf("a=%d",a);
程序运行后的输出结果是:
2. 有下列程序段,请写出运行结果。
#include <>
int y=0;
int f1(int x)
static int z=0;
y++;z++;
return(x+y+z);
int main( )
int a=1,k;
for(k=0;k<4;k++)
printf("%4d",f1(a));
程序运行后的输出结果是:
3. 有下列程序段,请写出运行结果。
#include ""
int main()
int i;
for(i=0; i<=3; i++)
switch(i%3)
case 0: printf("*
case 1: printf("#
default: printf("");
case 2: printf("&
程序运行后的输出结果是:
4.有下列程序段,请写出运行结果。
#include ""
void swap(int*x,int *y)
int*t;
t=x;x=y;y=t;
printf("%d,%d",*x,*y);
int main( )
inta=3,b=4;
swap(&a,&b);
printf("%d,%d",a,b);
程序运行后的输出结果是:
#include<>
int main( )
请写出运行结果:
6.有下面结构体类型定义,struct node
假设已存在如下两个链表,以head、head2为实参调用如下函数,void func(struct node *head, struct node *head2)
struct node *p = head;
if (p==null) head=head2;
elsewhile(p->link!=null) p=p->link;
p->link = head2;
p=head;
if (p!=null)
while(p!=null)
请写出运行结果:
三、看程序填空题(每空2分, 共16分)
1. 下面程序实现由键盘输入3个数a、b、c,要求按由大到小的顺序输出,请填空。
#include ""
int main()
float a, b, c, t;
scanf("%f,%f,%f", a,&b,&c);
if ( a< b )
t=a;a=c;c=t;}
if (_1】 )
t=a;a=c;c=t;}
if ( b< c )
t=b; b=c; c=t;}
printf("%5.2f,%5.2f,%5.2f", a, b, c);
2. 下面程序实现由键盘输入一个3×4的矩阵,输出它的转置矩阵,请填空。
#include<>
int main()
int a[3][4],b[4][3],i,j;
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);
for(i=0; i<4;i++)
3. 下面是求数列:
前n项和的程序,结果保留四位小数。
#include ""
int main()
int i, n, a=2, b=1;
float c, sum=0;
scanf("%d", n);
for(i=0; i
printf("sum=%.4f", sum);
4. 在当前目录中存在文件名为""的文本文件,现要求你使用fopen函数命令打开该文件,读出里面的所有字符,遇到小写字母的,将其变为大写字母,其它字符不变,最后将所有字符按顺序在屏幕上输出,请填空。
如内容如下)
hello my dear
在屏幕上输出结果如下)
hello my dear
程序如下,请填空,#include ""
int main()
file *fp;
char ch;
if(( 5null)
return 0;
while( 【6】 )
if (ch>='a' &ch<='z')
ch=ch-32;
putchar(ch);
fclose(fp);
5. 下面程序的功能是输出如下n*n(n为正奇数)阶方阵。请填空。
2019秋高级语言程序设计A
哈尔滨工业大学 威海 2009 学年春季学期。高级语言程序设计a 试卷。考试形式 开 闭卷 闭答题时间 105 分钟 本卷面成绩占课程成绩 70 一 单项选择题 本题共20分,每小题2分 注意 请把答案填入下面框中,答在其它处无效。1.下面程序段的运行结果是 char s 20 sp morning...
高级语言程序设计
总分 100.00,做题时间 90分钟 一 单项选择题 总题数 15,分数 30.00 语言早期规定建立文件缓冲区采用的形式是 分数 2.00 a.缓冲文件系统。b.非缓冲文件系统。c.分页文件系统。解析 2.以下是对二维数组的正确说明的是 分数 2.00 a 3,4 a 1 4 a 3 4 解析 ...
高级语言程序设计
班级学号 021110212 姓名 卢荼 同组同学。成绩。时间 2011.6 28 题目 班级档案管理系统。一 设计任务与目标。对一个有n个学生的班级,通过该系统实现对该班级学生的基本信息进行录入 显示 修改 删除 保存等操作的管理。功能要求 1 本系统采用一个包含n个数据的结构体数组,每个数据的结...