c语言简单题型复习资料.docx

上传人:b****5 文档编号:5901907 上传时间:2023-01-02 格式:DOCX 页数:34 大小:23.38KB
下载 相关 举报
c语言简单题型复习资料.docx_第1页
第1页 / 共34页
c语言简单题型复习资料.docx_第2页
第2页 / 共34页
c语言简单题型复习资料.docx_第3页
第3页 / 共34页
c语言简单题型复习资料.docx_第4页
第4页 / 共34页
c语言简单题型复习资料.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

c语言简单题型复习资料.docx

《c语言简单题型复习资料.docx》由会员分享,可在线阅读,更多相关《c语言简单题型复习资料.docx(34页珍藏版)》请在冰豆网上搜索。

c语言简单题型复习资料.docx

c语言简单题型复习资料

//*************************************************************

考试说明:

10个单选题+一个简单题型+一个复杂题型===《本科》

***************************************************

10个单选题+二个简单题型================《专科》

以下题型全为简单题型,复杂题型主要考数组的应用(字符串)和指针

//*************************************************************

1、编写一计算阶乘的函数fac,在主函数中从键盘输入一个正整数,

调用阶乘函数fac计算阶乘并输出计算结果。

#include

longfac(intn)

{longf;

if(n==0)

f=1;

else

f=n*fac(n-1);

returnf;

}

main()

{longy;

intn;

printf("pleaceintuponenumber:

");

scanf("%d",&n);

y=fac(n);

printf("%d!

=%ld",n,y);

}

2、编写一个求x的y次幂的函数pw,在main函数中从键盘输入a、b的值,

然后调用pw函数求a的b次幂,并输出结果。

#include

longpw(intx,inty)

{

longs=1;

inti;

for(i=1;i<=y;i++)

s=s*x;

returns;

}

main()

{

longsum;

inta,b;

printf("\nEntera,b:

");

scanf("%d%d",&a,&b);

sum=pw(a,b);

printf("Thesumis%ld",sum);

}_

3、写一函数max,计算三个数中最大数。

在主函数中输入三个数,

调用该函数求出其中最大数并输出。

(要求:

三个数为实数)

#include

intmax(inta,intb,intc)

{

intmax;

if(a>b)

max=a;

else

max=b;

if(max

max=c;

returnmax;

}

main()

{

intx,y,z;

intm;

printf("\nEnterx,y,z:

");

scanf("%d%d%d",&x,&y,&z);

m=max(x,y,z);

printf("themaxis%d.",m);

}_

4、写一个函数计算两个正整数的最大公约数,在主函数中用scanf输入m,

n两个正整数,调用函数后,打印函数返回值(即这两个正整数的最大公约数)。

#include

intgcd(intm,intn)

{

if(m%n==0)

returnn;

else

returngcd(n,m%n);

}

main()

{

inta,b,c,temp;

scanf("%d%d",&a,&b);

if(a

{

temp=a;

b=temp;

a=b;

}

c=gcd(a,b);

printf("%d",c);

}

5、编写一个函数,该函数的功能是判断一个整数是不是素数,在main函数中

调用该函数,输出200以内所有的素数。

(待定)

#include

voidf(intn)

{(原题:

输出1-1000以内所有的素数,并按每行5个输出。

inti;

for(i=2;i

if(n%i==0)

break;

if(i==n)

printf("%d\t",n);

}

main()

{

intj;

for(j=2;j<200;j++)

f(j);

}_

请编一个自定义函数,功能:

将给定的字符串中的所有字母改为小写字母。

字符串在主函数中从键盘任意输入(容许包含空格)

7、编写一个函数,该函数的功能是判断一个整数是不是素数,在main函数

中输入一个整数,调用该函数,判断该数是不是素数,若是则输出“yes”,

否则输出“no”

#include

voidf(intn)

{

inti;

for(i=2;i

if(n%i==0)

break;

if(i==n)

printf("yes");

else

printf("no");

}

main()

{

intm;

printf("\nEnterthem:

");

scanf("%d",&m);

f(m);

}_

8、将1--1000中所有21的倍数存到一个一维数组中,再按每行5个数据输出到

屏幕上。

#include

main()

{inti,j=0,a[50];

for(i=1;i<=1000;i++)

{if(i%21==0)

{a[j]=i;

printf("%5d",a[j]);

if(j%5==4)

printf("\n");

j++;

}

}

}

或:

#include

main()

{

inti,j=0,m=0;

inta[100];

for(i=1;i<=1000;i++)

if(i%21==0)

{

a[j]=i;

j++;

}

for(i=0;i

{

printf("%d\t",a[i]);

m++;

if(m%5==0)

printf("\n");

}

}_

8、在屏幕上打印以下图案:

(要求打印N行,N用符号常量定义为7)

*

**

***

****

*****

******

*******

#include

#defineN7

main()

{

inti,j,m;

for(i=1;i<=N;i++)

{

for(j=1;j<=N-i;j++)

printf("");

for(m=1;m<=i;m++)

printf("*");

printf("\n");

}

}

9、输出所有在正整数200和300之间能被6整除、但不能被4整除的数,并统计

这样的数有多少个。

#include

main()

{inti,j=0;

for(i=200;i<=300;i++)

{if(i%6==0&&i%4!

=0)

{j++;

printf("%d\n",i);

}

}

printf("%d\n",j);

}

10、求S=1/1+1/2+1/3+……+1/100(精确到小数点后三位)。

#include

main()

{

inti;

floatsum=0;

for(i=1;i<=100;i++)

{sum=sum+1.0/i;}

printf("1/1+1/2+...+1/100=%7.3f\n",sum);

}

(不要)编程计算1到20的平方和,并输出结果。

(要求用for循环)

#include

main()

{

inti;

longs=0;

for(i=1;i<=20;i++)

s=s+i*i;

printf("%ld",s);

}

(不要)编写一个程序从键盘任意个整数,求均值及低于均值的个数,

输出到屏幕。

#include

main()

{

intn;

inta[1000],i,j=0;

longs=0;

floatave;

printf("\nEnterthenums:

");

scanf("%d",&n);

printf("\nEnterthexs:

");

for(i=0;i

{

scanf("%d",&a[i]);

s=s+a[i];

}

ave=s*1.0/n;

printf("Theaveis%f.",ave);

for(i=0;i

if(a[i]

j++;

printf("%d",j);

}

(不要)编写一个程序从键盘输入10个学生的成绩到数组score中,将最高分、

最低分输出,要求将该程序以文件名test1.c保存到K盘根目录。

main()

{

intscore[10];

inti;

intmax,min;

for(i=0;i<10;i++)

scanf("%d",&score[i]);

max=min=score[0];

for(i=0;i<10;i++)

{

if(max

if(min>score[i])min=score[i];

}

printf("Themaxis%d.Theminis%d.",max,min);

}

()在main()函数中输入一个人的年龄和性别,女士55岁退休,男士60岁退休。

编写一个函数根据年龄和性别判断一个人士工作还是退休,若工作,则输出“Working!

”,退休则输出“Retired!

#include

main()

{

ints,a;

scanf("%d%d",&s,&a);

if(s=0)

if(a<=55)printf("sheiswork!

");

elseprintf("shehasRetired!

");

else

if(a>60)printf("heiswork!

");

elseprintf("hehasRetired!

");

}

11、编写一个程序从键盘输入10个学生的成绩到数组score中,将最高分、

最低分输出。

main()

{intscore[10],i,max,min;

for(i=0;i<10;i++)

scanf("%d",&score[i]);

max=score[0];

min=score[0];

for(i=0;i<10;i++)

{if(max

if(min>score[i])min=score[i];}

printf("%d%d",max,min);}

12、编写一个函数求一个实数的绝对值。

然后在main函数中用scanf输入

任意个实数,调用该函数求它的绝对值并输出。

#include

floatfab(floatx)

{

if(x>0)

returnx;

else

return-x;

}

main()

{

floatn;

floats;

printf("\nEntern:

");

scanf("%f",&n);

s=fab(n);

printf("Thefabis%f\t",s);

}_}

13、编写一个求1——n内的偶数和的函数,在main()函数中输入n,然后

调用该函数求1——n的偶数和并输出。

#include

longsum(intn)

{

inti;

longsum=0;

for(i=1;i<=n;i++)

{

if(i%2==0)

sum=sum+i;

}

returnsum;

}

main()

{

intn;

longs;

printf("\nEntern:

");

scanf("%d",&n);

s=sum(n);

printf("Thesis%ld",s);

}

14、编写一个求1——n内的奇数和的函数,在main()函数中输入n,然后

调用该函数求1——n的奇数和并输出。

#include

longsum(intn)

{

longs=0;

inti;

for(i=1;i<=n;i++)

{

if(i%2!

=0)

s=s+i;

}

returns;

}

main()

{

intn;

longs;

printf("\nEntern:

");

scanf("%d",&n);

s=sum(n);

printf("Thesis%ld",s);

}

15、编写函数打印以下图形,将图形中的行数作为函数的形参。

在main()

函数中输入行数n,调用该函数打印行数为n的图形。

(如:

输入5,则打

印出5行的三角形)

*****

****

***

**

*

#include

voidprint(intn)

{

inti,j;

for(i=0;i

{

for(j=n-i;j>=1;j--)

printf("*");

printf("\n");

}

}

main()

{

intn;

printf("\nEntern:

");

scanf("%d",&n);

print(n);

}

16、编写一个函数,将摄氏温度转换成华氏温度,转换公式为:

f=1.8*c+32.0。

在main函数中调用该函数,计算并在屏幕上显示从摄氏0度到100度,每隔10度

转换一次的华氏温度。

#include

floatf(intc)

{

floatf;

f=1.8*c+32.0;

returnf;

}

main()

{

inti;

floats;

for(i=0;i<=100;i=i+10)

{

s=f(i);

printf("%f\n",s);

}

}

15

(1)编写一个函数,将三个数按由小到大的顺序排列并输出。

在main函数中

输入三个数,调用该函数完成这三个数的排序。

++***(如果是20个数,请用自定义函数来实现它的排序,要求用指针作为函数的形式参数)*******

#include

voidsort(inta,intb,intc)

{

inttemp;

if(a>b)

{

temp=a;

a=b;

b=temp;

}

if(a>c)

{

temp=a;

a=c;

c=temp;

}

if(b>c)

{

temp=b;

b=c;

c=temp;

}

printf("Thesortis%d,%d,%d",a,b,c);

}

main()

{

intx,y,z;

printf("\nEnterx,y,z:

");

scanf("%d%d%d",&x,&y,&z);

sort(x,y,z);

}

15

(2)编写一个函数,将三个数按由大到小的顺序排列并输出。

在main函数

中输入三个数,调用该函数完成这三个数的排序。

#include

voidsort(inta,intb,intc)

{

inttemp;

if(a

{

temp=a;

a=b;

b=temp;

}

if(a

{

temp=a;

a=c;

c=temp;

}

printf("Thesortis%d,%d,%d",a,b,c);

}

main()

{

intx,y,z;

printf("\nEnterx,y,z:

");

scanf("%d%d%d",&x,&y,&z);

sort(x,y,z);

}

16、编写一个函数,该函数的功能是打印1——n中所有7的倍数,在

main()中输入n,调用该函数输出结果。

#include

voidprint(intn)

{

inti;

for(i=1;i<=n;i++)

if(i%7==0)

printf("%d\t",i);

}

main()

{

intn;

printf("\nEntern:

");

scanf("%d",&n);

print(n);

}

17、写一个函数判断一个正整数是否为奇数,在主函数中用scanf输入

正整数m,调用函数后,根据函数返回值判断这个正整数是否为奇数,

若是则输出“yes”,否则输出“no”

#include

intodd(intn)

{

if(n%2!

=0&&n>0)

return1;

else

return0;

}

main()

{

intm;

ints;

printf("\nEnterm:

");

scanf("%d",&m);

s=odd(m);

if(s==0)

printf("no");

else

printf("yes");

}

18、写一个函数判断一个正整数是否为偶数,在主函数中用scanf输入

正整数m,调用函数后,根据函数返回值判断这个正整数是否为偶数,

若是则输出“yes”,否则输出“no”

#include

inteven(intn)

{

if(n>0&&n%2==0)

return1;

else

return0;

}

main()

{

intm;

ints;

scanf("%d",&m);

s=even(m);

if(s==1)

printf("yes");

else

printf("no");

}

(不要)写一个函数,判断某一个四位数是不是玫瑰花数(所谓玫瑰花数即

该四位数各位数字的四次方和恰好等于该数本身,如:

1634=14+64+34+44)。

在主函数中调用该函数,输出所有玫瑰花数。

voidrose(intn)

{

inta,b,c,d;

a=n/1000;

b=n/100%10;

c=n/10%10;

d=n%10;

if(a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d==n)

printf("%d\t",n);

}

main()

{

inti;

for(i=1000;i<10000;i++)

rose(i);

}

19、写一个函数,判断某一个四位数是不是玫瑰花数(所谓玫瑰花数即

该四位数各位数字的四次方和恰好等于该数本身,如:

1634=14+64+34+44)

在主函数中从键盘任意输入一个四位数,调用该函数,判断该数是否

为玫瑰花数,若是则输出“yes”,否则输出“no”。

introse(intn)

{

inta,b,c,d;

a=n/1000;

b=n/100%10;

c=n/10%10;

d=n%10;

if(a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d==n)

return1;

else

return0;

}

main()

{

intm;

ints;

printf("\nEnterm<4nums>:

");

scanf("%d",&m);

s=rose(m);

if(s==1)

printf("yes");

else

printf("no");

}

20、编写一个函数,判断某一个三位数是不是水仙花数(所谓水仙花数

即该三位数各位数字的立方和恰好等于该数本身,如:

153=13+53+33)

在主函数中调用该函数,输出所有水仙花数。

voiddaffodil(intn)

{

inta,b,c;

a=n/100;

b=n/10%10;

c=n%10;

if(a*a*a+b*b*b+c*c*c==n)

printf("%d\t",n);

}

main()

{

inti;

for(i=100;i<1000;i++)

daffodil(i);

}

21、编写一个函数,函数的功能是求出所有在正整数M和N之间能被5整除

但不能被3整除的数并输出,其中M<N。

在主函数中调用该函数求出100

至200之间,能被5整除、但不能被3整除的数。

要求将该程序以文件名

test2.c保存到K盘根目录。

main()

{intn=200,m=100;

voidfn(intx,inty);

fn(m,n);}

voidfn(intx,inty)

{intj;

for(j=x;j<=y;j++)

if(j%5==0&&j%3!

=0)printf("%5d",j);}

intdhj(intx,inty)

{intn;

for(n=x;n<=y;n++)

if(n%5==0&&n%3!

=0)

printf("%d\t",n);}

22、编写一个函数,其功能是;检验一个输入的四位数字是否是闰年,

如果是闰年则返回1,否则返回0。

在主函数中从键盘输入一个四位数XXXX

,调用该函数进行判断,如果是则输出”yes”,否则输出”no”(提示

如果该四位数能被4整除但不能被100整除,则是闰年;如果该四位数能

被400整除,则是闰年)要求将该程序以文件名test2.c保存到K盘根目录。

intleap(inty)

{intr=0;

if(y%4==0&&y%100!

=0||y%400==0)r=1;

elser=0;

returnr;}

main()

{inty;

printf("lnputyear:

");

scanf("%d",&y);

if(leap(y)==1)

printf("yes");

elseprintf("no");

}

23、编写一个函数求两数中的较大数,在main()函数输入三个数,调用该

函数求这三个数的较大数并在屏幕上输出。

floatmax(floata,floatb)

{floatt=a;

if(b>t)t=b;

returnt;}

main()

{floata,b,c;

printf("lnputa,b,c:

");

scanf("%f%f%f",&a,&b,&c);

printf("%f",max(max(a,b),c));}

24写一函数min,返回三个数中最小数。

在主函数中用键盘输入三个数,

调用该函数求出其中最小数并输出。

(要求:

三个数为实数)

floatmin(inta,intb,intc)

{

floattemp

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 文学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1