您的当前位置:首页正文

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

来源:汇意旅游网
 输出众数: int main()

{int a[10],b[10]={0}; int i,j,max;

for(i=0;i<10;i++) scanf(\"%d\ 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\"); else

for(i=0;i<10;i++) if(b[i]==max)

printf(\"%d,%d\\n\

1

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\

return 0;

}

排序:由小到大

#include<> int main()

2

{int a[10]; int i,j,t; for(i=0;i<10;i++) scanf(\"%d\ 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\ printf(\"%d\ return 0; } # {

3

int a[11]; int n,i,j; for(i=0;i<10;i++) scanf(\"%d\ scanf(\"%d\ 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 \ printf(\"%d\ return 0; }

4

总平均成绩,各科平均成绩: #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\

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 \

5

printf(\"%.2f\ printf(\"\\n\");

printf(\"%.2f\\n\

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\

6

min=a[0][0]; for (i=0;i<3;i++) for(j=0;j<4;j++) if(a[i][j]min=a[i][j]; row=i; colum=j;}

printf(\"min=%d\\n%d,%d\

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/;

7

return(aver); }

int main(){ int a[20],i; float x;

for(i=0;i<20;i++) scanf(\"%d\ x=avernum(a); printf(\"%f\ return 0; }

编写一个函数fun,函数的功能是:判断一个整数是否既是5又是7的整倍数。若是,输出yes,否则输出no。在主函数中输入任意一个正整数,调用fun函数,输出该数对应的结果。主函数形式如下:

int main(){ int n;

scanf(\"%d\ fun(n);

8

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\ fun(n); return 0; }

9

#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\ for(i=1;i<=n;i++) if(i%5==0)

printf(\"%d\\n\ else

printf(\"%d \ return 0; }

将数组a 的数据逆序复制到数组b中,并输出数组b的值

#include<> int main()

10

{int i,*p;

int a[10],b[10]; for(i=0;i<10;i++) {scanf(\"%d\ p=a;

b[i]=*p;

printf(\"%d \ }

return 0; }

结构体

定义时间结构体,输入某一时刻的时间,输出下一秒的时间

#include<> int main() {struct Time {int h; int m; int s; }t1,t2;

11

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()

12

{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\

scanf(\"%f%f%f\]); }

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)

13

{max=sum[i]; k=i;}

printf(\"%d %s \

printf(\"%.1f %.1f %.1f\\n\.score[2]); for(j=0;j<3;j++) for(i=0;i<5;i++) sum1[j]+=s[i].score[j];

printf(\"%.1f %.1f %.1f\

return 0; }

14

因篇幅问题不能全部显示,请点此查看更多更全内容