C程序设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
离线考核
《C程序设计(高起专)》
满分100分
一、阅读程序,写出运行结果(每小题8分,共40分。)
1.int x=6, y=7;
printf(“%d,”,x++); printf(“%d\n”,++y);
程序的输出结果是6,8 。
2.float f=;
printf(“%,%”
3.a=3;
a+=(a<1)a:1; printf(“%d”,a);
结果是 4 。
4.main( )
{ int a[5]={2,4,6,8,10},*p;
p=a;
printf("%d,",*(p++));
printf("%d\n",*(p+2)); }
程序的输出结果是2,4 。
( )
{ int i=29,j=6,k=2,s;
s=i+i/j%k-9;
printf(“s=%d\n”,s);
}
程序的输出结果是8。
二、程序填空题(每空3分,共30分。)
1.求矩阵的主、次对角线之和。
main()
{static int a[3][3]={9,7,5,1,2,4,6,8,0};
int i,j,s1=0,s2=0;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{if((1)I==J )
s1=s1+a[i][j];
if((2)I+j==2 )
s2=s2+a[i][j];
}
printf(“%d\n%d\n”,s1,s2);
}
2.从键盘上输入10个数放入一维数组,然后求其平均值。
main()
{int i;
float a[10], sum,avg;
for(i=0;i<10;i++)
(3)scanf("%d", &num[i]); ;
(4);
for(i=0;i<10;i++)
(5){
sum += num[i];
} ;
(6)avg = sum * /10; ;
printf(“average=%f\n”,avg);
}
3.以下程序是建立一个名为myfile的文件,并把从键盘输入的字符存入该文件,当键盘上输入结束时关闭该文件。
#include <>
main()
{
(7)FILE *fp;
char c;
fp= (8)fopen(“myfile”),w ;
do
{
c=getchar();
(9)fputs(c,fp) ;
}while(c!=EOF);
(10)fclose(fp) ;
}
三、编程题(每题10分,共30分。)
1.三个整数a、b、c,由键盘输入,输出其中最大的数。
main()
{int a,b,c;
printf(“请输入三个整数:”);
scanf(“%d,%d,%d”,&a,&b,&c);
if(a
if(b else printf(“max=%d\n”,b) else if (a else printf(“max=%d\n”,a); 2.从键盘输入的10个整数中,找出第一个能被7整除的数。若找到,打印此数后退出循环;若未找到, 打印“not exist”。 #include<> intmain(void) { inti,number; for(i=0;i<10;i++) { zdscanf("%d",&number); if(number%7==0) { break; } } if(i<10)//如果找到了跳出循环,那么i必然小于10 { printf("Ok!Thenumberis%d\n",number); } else//否则如果没有找到,i必然为答10,因为i循环知道i为10就退出 { printf("Notexist!\n"); } return0; } 3.有一维数组float a[10],其中存放10个学生成绩,写一个函数,求出平均分。 float average(float array[ ],int n) { int I; float aver,sum=array[0]; for(I=1;Isum=sum+array[I]; aver=sum/n; return(aver); } main { float ave,score[10]; int I; for(I=0;I<10;I++) scanf("%f",&score[I]); ave=average(score,10); printf("%f\n",ave); } }