当前位置:文档之家› 大一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]);return 0;}平方数:#include<stdio.h>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<stdio.h>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<stdio.h>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<stdio.h>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<stdio.h>float avernum(int a[20]){ int i;float sum=0,aver;for(i=0;i<20;i++)sum=sum+a[i];aver=sum/20.00;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<stdio.h>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<stdio.h>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<stdio.h>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<stdio.h>int main(){struct Time{int h;int m;int s;}t1,t2;scanf("%d:%d:%d",&t1.h,&t1.m,&t1.s);t2.s=t1.s+1;t2.m=t1.m;t2.h=t1.h;if(t2.s==60){t2.m=t1.m+1;t2.s=0;}if(t2.m==60){t2.h=t1.h+1;t2.m=0;}if(t2.h==24){t2.h=0;}printf("%d:%d:%d",t2.h,t2.m,t2.s); return 0;}#include<stdio.h>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;}。

相关主题