(完整版)程序设计基础试题_07_答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

学院领导

A / B卷

审批并签名

广州大学学年第学期考试卷

课程高级语言程序设计考试形式(开/闭卷,考试/查)学院系专业班级学号姓名

题次一二三四五六七八九十总分评卷人分数

评分

一、填空题(每空1分,共10分)

1.C源程序的基本单位是(函数)。

2.一个C源程序中至少应包含一个(主函数或Main函数)。

3.在C语言中,表示逻辑“真”值用(非0的值)表示。

4.若a、b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,a值为

(6),b值为( 4),c值为(2 )。

5.表达式8.2-2/3 的计算结果是(8.2 )。

6.在C语言中,整数可用三种数制表示,它们分别是(八进制)、(

十进制)和(十六进制)。

二、程序计算题(每小题5分,共15分)

1.以下有一程序,输出结果是:()。

main()

{ int x=2,y,z;

x*=3+2;

printf(“%d\n”,x);

x*=y=z=4

printf(“%d\n”,x);

x=y=1;

z=x++-1;

printf(“%d,%d\n”,x,z);

z+=-x+++(++y);

printf(“%d,%d\n”,x,z); }

答案:

10

40

2,0

3,0

2.

main()

{ int a,b;

for(a=1,b=1;a<=100;a++)

{ if(b>=10) break;

if(b%3==1)

{ b+=3;

continue;

}

}

printf(“%d\n”,a);

}

3.

fa(int a ,int b)

{ return a+b; }

fb(int a,int b)

{ return a-b; }

cut(int (*t)(),int x,int y)

{ return(*t)(x,y); } main()

{ int x,(*p)(int,int);

p=fa;

x=cut(p,9,3);

x+=cut(fb,8,3);

printf(“%d\n”,x);

3.程序填空题(每空4分,共40分)

1.以下程序对输入的一个小写字母,将字母循环后移5个位置后输出。如“a”变为“f”,“w”变成“b”。请填空。

#include “studio.h”

main()

{ char c;

c=getchar();

if(c<=’a’&&c<=’u’)

putchar(c)

}

2. mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回,请填空。

int mystrlen(char *str)

{ int i;

}

3. 鸡兔共有30只,脚共有90只,下面的程序段是计算鸡兔各有多少只,请填空。

for(x=1;x<=29;x++)

{

printf(“%d,%d\n”,x,y);

}

4.完成下面程序的链表建立:

#include

#include

#define LEN sizeof(struct link)

struct link

{ char name[10];

main()

{ struck link *head,*p;

int i;

head=null;

{

scanf(“%c,%d”,&p->name,&p->num);

p->next=head;

head=p;

}

}

5. 下面程序以每行4个数据的形式输出a数组,请填空。

#define N 20

main()

{ int a[N],i;

for(i=0;i

{

printf(“%3d”,a[i]);

}

printf(“\n”);

}

四.编程(第1小题20分,第2小题15分,共35分)

1.编写一个函数atoi,其作用是将一个整数字符串转换成整数(说明:字符串不能进行四则运算,而整数能进行四则运算)。

答案:

#include “stdio.h”

main()

{

int atoi(char str[10]);

char s[10];

int number;

printf(“input a digit string\n”);

scanf(“%s”,s);

number=atoi(s);

printf(“%d”,number);

}

int atoi(char str[10])

{

int i,j,n,num,len,m;

num=0;

len=strlen(str);

for(i=0;i

{

n=1;

j=len=len-1;

while(j>0)

{

n=n*10;

j--;

}

m=str[i ]-48;

num=num+m*n;

}

return(num);

}

2.利用结构类型编写一个程序,计算一名同学5门功课的平均分,并打印。答案:

main()

{

struct student

{

char name[20];

int order;

int score[5];

float average;

}x;

int sum=0, i;

printf(“Input:name,order and 5 scores.\n”);

scanf(“%s”,);

scanf(“%d”,&x.order);

相关文档
最新文档