当前位置:文档之家› 大一C语言编程重点复习题

大一C语言编程重点复习题

输出众数:int main(){int a[10],b[10]={0};int i,j,max;for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)for(j=i;j<10;j++)if(a[i]==a[j])b[i]++;max=b[0];for(i=0;i<10;i++)if(b[i]>max)max=b[i];if(max==1)printf("No");elsefor(i=0;i<10;i++)if(b[i]==max)printf("%d,%d\n",a[i],b[i]);v1.0 可编辑可修改return 0;}平方数:#include<>int main(){int i,a,b;for(i=1000;i<=9999;i++){a=i/100;b=i%100;if(i==(a+b)*(a+b))printf("%d\n",i);}return 0;}排序:由小到大#include<>int main()int i,j,t;for(i=0;i<10;i++) scanf("%d",&a[i]); for(j=0;j<9;j++)for(i=0;i<9-j;i++) if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1]; a[i+1]=t;}for(i=0;i<9;i++) printf("%d\n",a[i]); printf("%d",a[9]); return 0;}#{int n,i,j;for(i=0;i<10;i++) scanf("%d",&a[i]);scanf("%d",&n);if(n>a[9])a[10]=n;else{ for(i=0;i<9;i++)if(a[i]>n){ for(j=9;j>=i;j--) a[j+1]=a[j];a[i]=n;break;}}for(i=0;i<10;i++)printf("%d ",a[i]); printf("%d",a[10]); return 0;}总平均成绩,各科平均成绩:#include<>int main(){int a[3][5];int i,j;float sum[3]={0,0,0},total=0; for(i=0;i<3;i++)for(j=0;j<5;j++){scanf("%d",&a[i][j]);sum[i]+=a[i][j];}for(i=0;i<3;i++)for(j=0;j<5;j++)total+=a[i][j];for(i=0;i<2;i++)printf("%.2f ",sum[i]/5);printf("%.2f",sum[i]/5); printf("\n");printf("%.2f\n",total/15);return 0;}*/找出最小数,输出其下标:/*#include<>int main(){int i,j,row=0,colum=0,min; int a[3][4];for (i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);min=a[0][0];for (i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]<min){min=a[i][j];row=i;colum=j;}printf("min=%d\n%d,%d",min,row,colum);return 0;*/*/求平均值:#include<>float avernum(int a[20]){ int i;float sum=0,aver;for(i=0;i<20;i++)sum=sum+a[i];aver=sum/;return(aver);}int main(){int a[20],i;float x;for(i=0;i<20;i++)scanf("%d",&a[i]);x=avernum(a);printf("%f",x);return 0;}编写一个函数fun,函数的功能是:判断一个整数是否既是5又是7的整倍数。

若是,输出yes,否则输出no。

在主函数中输入任意一个正整数,调用fun函数,输出该数对应的结果。

主函数形式如下:int main(){int n;scanf("%d",&n);fun(n);return 0;}要求:(1)本题main函数已在后台给出,不需要再写了,但需要给出合适的头文件。

(2)给出fun函数#include<>void fun(int x){if(x%5==0&&x%7==0)printf("yes");else printf("no");}int main(){int n;scanf("%d",&n);fun(n);return 0;}#include<>int fac(int n){ if(n==1||n==2)return 1;else return fac(n-1)+fac(n-2);}int main(){int i,n;scanf("%d",&n);for(i=1;i<=n;i++)if(i%5==0)printf("%d\n",fac(i));elseprintf("%d ",fac(i));return 0;}将数组a 的数据逆序复制到数组b中,并输出数组b的值#include<>int main(){int i,*p;int a[10],b[10];for(i=0;i<10;i++){scanf("%d",&a);p=a;b[i]=*p;printf("%d ",b[i]);}return 0;}结构体定义时间结构体,输入某一时刻的时间,输出下一秒的时间#include<>int main(){struct Time{int h;int m;int s;}t1,t2;scanf("%d:%d:%d",&,&,&; =+1;=;=;if==60){=+1;=0;}if==60){=+1;=0;}if==24){=0;}printf("%d:%d:%d",,,; return 0;}#include<>int main(){struct Stu{int num;char name[20];float score[3];};struct Stu s[5];int i,j;int k=0;k必须要赋初值float max;float sum[5]={0},sum1[3]={0};for(i=0;i<5;i++){scanf("%d%s",&s[i].num,s[i].name);scanf("%f%f%f",&s[i].score[0],&s[i].score[1],&s[i].score[2 ]);}max=s[0].score[0]+s[0].score[1]+s[0].score[2];for(i=0;i<5;i++)sum[i]=s[i].score[0]+s[i].score[1]+s[i].score[2];for(i=0;i<5;i++)if(sum[i]>max){max=sum[i];k=i;}printf("%d %s ",s[k].num,s[k].name);printf("%.1f %.1f %.1f\n",s[k].score[0],s[k].score[1],s[k] .score[2]);for(j=0;j<3;j++)for(i=0;i<5;i++)sum1[j]+=s[i].score[j];printf("%.1f %.1f %.1f",sum1[0]/5,sum1[1]/5,sum1[2]/5);return 0;}。

相关主题