C语言程序设计2019 含答案 1

发布 2024-01-02 09:00:16 阅读 7196

12年的试题比13年的难很多,笔者费了一早上加一中午才全部做完。如果对答案有疑问或者觉得**有问题请联系我 李添锐。

一、 写出下列程序段的运行结果(40分)

1、 (4分)

char a='d'-'a',b='\010',c,d;

c = a ||b++;

d = a-- b--;

printf("%d,%d,%d,%d",a,b,c,d);

输出:3,7,1,1

2、 (4分)

char a=0x123fff;

printf("%d,",a);

a=127;

printf("%d",+a);

输出:-1,-128

3、 (4分)

int a=5,y=0;

int main()

while(a=5)

a+=5;

y+=a;printf("%d,%d,",a, y);

if (y>18) break;

return 0;

输出:10,10,10,20

4、 (4分)

int i=1, j=2, k=4;

printf("%f,",i-(float)j/k);

printf("%d,",j>1k+=5/10*i ;

printf("%d,",k);

printf("%d", j=1)?2:0);

输出:0.500000,1,4,2

5、 (4分)

int a[2]=;

printf("%d",a[0][1]);

输出:46、 (4分)

int **e(int x, int y)

return (x+y)/2;

int main()

int a=1, b=2, c=3;

printf("%d",**e(**e(a,b), **e(b,c)))

return 0;

输出:1()

7、 (4分)

void exc(int x, int *y)

int t;

t=x; x=*y; *y=t;

int main()

int a=5,b=8;

exc(a,&b);

printf("a=%d,b=%d",a,b);

return 0;

输出:a=5,b=5

8、 (4分)

char str[10]="believe";

char *p=str;

(str+5)=0;

puts(2+p);

输出:lie

9、 (4分)

struct pt

int x; int y;

p[2]=;

printf("%3f",

p[1].y/(float)p[0].y

+ p[1].x/p[0].x);

输出:7.333

10、 (4分)

file *fp;

char c=49;

int d=50, e;

fp=fopen(""w");

fprintf(fp,"%c%d", c, d);

fclose(fp);

fp=fopen(""r");

fscanf(fp,"%d",&e);

printf("%d",e);

输出:150()

二、 改错题(20分)

以下程序实现:从键盘输入若干个学生的成绩数据,将这些数据存到磁盘文件上,并求这些学生的最高成绩。程序21行前存在4个错误,其余部分存在若干错误,指出错误所在位置并改正。

#define size 80第1行*/去掉分号;

#include <>第2行*/

struct stu第3行*/

第4行*/char name[10第5行*/

double score第6行*/

第7行*/ 后加分号;

void s**e(struct stu stud[size]) 第8行*/

第9行*/file fp第10行*/ fp

int i第11行*/

if((fp=fopen("stu-list","wb"))null) /第12行*/

第13行*/

printf("cannot open file");第14行*/

return第15行*/

第16行*/

for(i=0;i if(fwrite(stud[i],sizeof(struct stu),1,fp)!=1) /第18行*/&stud[i]

printf("file write error");第19行*/

fclose(fp第20行*/

第21行*/

int main第22行*/

第23行*/

struct stu stud[size第24行*/

double maxscore第25行*/函数声明double max(struct stu stud[size]);

for(i=0;i第27行*/

scanf("%lf%s ",stud[i].score,&stud[i].name); 第28行*/去掉第二个&

第29行*/

s**e(struct stud第30行*/去掉struct

maxscore = max(stud[size]);第31行*/去掉[size]

printf("maxscore is :%8.2lf", maxscore); 第32行*/

return 0第33行*/

第34行*/

double max(struct stu stud[size])/第35行*/

第36行*/

double tmp第37行*/tmp=0;

int i第38行*/

for(i=0;i if(tmp> stud[i].score第40行*/>改<

第41行*/

tmp= stud[i].score第42行*/

第43行*/

return tmp第44行*/

第45行*/

三、编程题(40分) 注意:程序中请添加必要的注释。

1、编程实现以下功能:输入星期几的第一个字母来判断输入的是星期几,如果第一个字母一样,则要求用户继续输入第二个字母。程序要求可以进行多轮判断,直到输入为字符‘#’为止。

其中输入的星期的首字母必须大写,其余字母小写。如果输入的字母不合法,则输出:data error。

(12分)

一周7天是monday、tuesday、wednesday、thursday、friday、saturday、sunday)

解:本题看似简单,其实难度不小,稍不留神就会出错,希望读者可以先自己试着编一遍,体会一下这道题的陷阱。

#include<>

int main()

char c[2],a;//定义三个字符,前两个用来储存字母,第三个用来吸收“回车”字符。

2019C语言程序设计基础 答案

c语言程序设计基础 试卷参 一 填空题 每空1分,共15分 1 函数 2 1 3 1 4 2.5 5 24 6 6 7 地址 8 行指针,指向有四个元素的一维数组 9 指针数组名,该数组有四个元素,每个元素都是指针。10 russia 11 i 12 h 13 c 14 d 15 7 二 判断题 每...

2019C语言程序设计

c语言程序设计专周。专周报告。班级 10611学号 20姓名 设计时间 2011 5 30至2011 6 3 一 设计题目 职工工资管理小软件。二 实习目的。1 通过这次专题实习,可以巩固和加深对所学相关知识点的理解。2 进一步熟悉基本的流程控制结构 实现分支的if else语句 switsh语句和...

1253 C语言程序设计A

试卷代号 1253 广播电视大学2009 2010学年度第二学期 开放本科 期末考试。c语言程序设计a试题。一 单选题 每小题2分,共20分 1 在每个c语言程序中都必须包含有这样一个函数,该函数的函数名为 a.mainb.main c.named.function 2 每个c语言程序文件的编译错误...