二、读程序
1.写出下列程序段的输出结果:
main()
{int x=5;
int y=10;
printf("%d/n",x++);
printf("%d/n",++y); }
2.写出下列程序的输出结果:
main()
{int x,y,z;
x=y=z=-1;
printf("x=%d/ty=%d/tz=%d/n",x,y,z);
++y&&++x||++z;
printf("x=%d/ty=%d/tz=%d/n",x,y,z);
x=y=z=-1;
++x||y++&&z;
printf("x=%d/ty=%d/tz=%d/n",x,y,z);}
3.下面程序的输出结果是什么?
#include "stdio.h"
main()
{ int x=3;
switch(x)
{ case 1:
case 2:printf("x<3/n");
case 3:printf("x=3/n");
case 4:
case 5:printf("x>3/n");
default:printf("x unknow/n"); } }
4.标记出变量 p、q、 a、b、c、x、y和c1的作用范围和变量性质(局部、全局)
int p=1,q=5;
float f1(int a)
{int b,c;
char ch;
… 局部变量ch在此范围内有效
}
char c1;
char f2(int x,int y)
{int i,j;
5.根据源程序,写出相应的数学表达式
#include “stdio.h”
main()
{int x,y;
scanf(“%d”,&x);
if (x<0) y= -1;
else if (x= = 0)
y=0;
else y=1;
printf(“x=%d,y=%d/n”,x,y); }
6.分析下列程序所完成的功能。
main()
{int a,b,c,*pa=&a,*pb=&b,*pc=&c,*p;
scanf("%d,%d,%d",pa,pb,pc);
if (*pa>*pb)
p=pa,pa=pb,pb=p;
if (*pa>*pc)
p=pa,pa=pc,pc=p;
if (*pb>*pc)
p=pb,pb=pc,pc=p;
printf("%d<=%d<=%d",*pa,*pb,*pc); }
三、 程序填空:(根据题意,将空缺的语句补上。)
1.该程序完成的功能是求1+2+3+…+10的累加和,并进行累加和的输出打印。变量sum是存放累加值的。
#include "stdio.h"
main()
{ ________________
i=1,sum=0;
for(; i<=10;)
{sum+=i;
_________ }
printf("%d/n",sum); }
2.阅读函数,根据函数完成的主要功能,补充、完善主函数。
float av(float a[],int n)
{int i;float s;
for (i=0,s=0;i<n;i++) s=s+a[i];
return (s/n); }
main()
{float a[10];
_______________
for (i=0;_________)
scanf("%f"______);
printf("%f",av(a,10)); }
3.从键盘输入一些字符,逐个把它们送到磁盘文件TEXT.txt中,直到输入一个“$”为止。请将空缺地方补充完善。
#include "stdio.h"
main()
{FILE *fp;
char ch;
if ((fp=fopen("test.txt","w"))==NULL)
{printf("cannot open file/n");
;
}
;
while(ch!=’$’)
{ fputc(ch,fp);putchar(ch);
ch=getchar(); }
_______________________; }
四、编程:
1.输入一单精度二维数组a[4][3],计算该二维数组中的最大元素的值及其所在位 置(行、列),并输出计算结果。
2.个学生,每个学生的信息包括学号、性别、姓名、四门课的成绩,从键盘上输入N个学生的信息,要求输出总平均成绩最高的学生信息,包括学号、性别、姓名和平均成绩。
① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;
② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。