北工大C语言题库完美版文档格式.docx

上传人:b****6 文档编号:16782089 上传时间:2022-11-26 格式:DOCX 页数:46 大小:30.71KB
下载 相关 举报
北工大C语言题库完美版文档格式.docx_第1页
第1页 / 共46页
北工大C语言题库完美版文档格式.docx_第2页
第2页 / 共46页
北工大C语言题库完美版文档格式.docx_第3页
第3页 / 共46页
北工大C语言题库完美版文档格式.docx_第4页
第4页 / 共46页
北工大C语言题库完美版文档格式.docx_第5页
第5页 / 共46页
点击查看更多>>
下载资源
资源描述

北工大C语言题库完美版文档格式.docx

《北工大C语言题库完美版文档格式.docx》由会员分享,可在线阅读,更多相关《北工大C语言题库完美版文档格式.docx(46页珍藏版)》请在冰豆网上搜索。

北工大C语言题库完美版文档格式.docx

time2);

time1=time1/100*60+time1%100;

time2=time2/100*60+time2%100;

hours=(time2-time1)/60;

mins=(time2-time1)%60;

Thetrainjourneytimeis%dhrs%dmins.\n"

hours,mins);

5大写字母转换成小写字母

输入一个大写英文字母,输出相应的小写字母.例:

输入G输出g#include<

intmain()

charch;

%c"

ch);

ch=ch-'

A'

+'

a'

;

%c\n"

ch);

6显示两级成绩

输入一个正整数repeat(0<

repeat<

10),做repeat次下列运算:

输入一个学生的数学成绩,如果它低于ω,输出"

Fail"

,否则,输出"

Pass"

.

intmark;

%d"

mark);

if(mark>

59)printf("

Pass\n"

);

elseprintf("

Fail\n"

7找最小值#include<

inta,b,c,d,min;

%d%d%d%d"

b,&

c,&

d);

min=a;

if(min>

b)min=b;

if(min>

c)min=c;

d)min=d;

minis%d\n"

min);

8求三角形面积和周长

输入三角形的三条边a,b,c.如果能构成一个三角形,输出面积area和周长perimete保留2位小数);

否则,输出(Thesesidesdonotcorrespondtoavalidtriangle"

.在一个三角形中,任意两边之和大于第三边.

floata,b,c,area,perimeter,s;

scanf("

%f%f%f"

c);

if(a+b>

c&

&

a-b<

c)

s=(a+b+c)/2;

area=sqrt(s*(s-a)*(s-b)*(s-c));

perimeter=a+b+c;

printf("

area=%f"

area);

perimeter=%f"

perimeter);

else

Thesesidesdonotcorrespondtoavalidtriangle"

9判断数的符号

输入整数x,若x大于0,y=l;

若x等于0,y=0;

否则,y=-I,最后输出y#include<

intx,y;

if(x<

0)y=-1;

elseif(x>

0)y=1;

elsey=0;

y=%d\n"

y);

10显示水果价格

以下4种水果的单价分别是3.00元/公斤,2.50元/公斤,4.10元/公斤,10.20元/公斤.[1]apples

[2]pears[3]oranges[4]grapes输入水果的编号,输出该水果的单价(保留2位小数).如果输入不正确的编号,显示单价为0.

intmain()

intchoice;

floatprice;

[1]apples\n"

[2]pears\n"

[3]oranges\n"

[4]grapes\n"

choice);

price=(choice==1)*3+(choice==2)*2.50+(choice==3)*4.1+(choice==4)*10.2;

price=%0.2f\n"

price);

11读入1个正整数n(n<

=100),计算并输出1+1/2+1/3++1/n(保留3位小数).

inti,n;

floatsum;

scanf("

n);

sum=0;

for(i=1;

i<

=n;

i++)sum=sum+1.0/i;

%0.3f\n"

12求n的阶乘#include<

doublefact;

fact=1;

i++)

fact=fact*i;

%0.0f\n"

fact);

13求X的n次幂#include<

doublex,mypow;

%lf%d"

x,&

mypow=1;

for(i=1;

i++)mypow*=x;

%.2f\n"

mypow);

14摄氏华氏转换表#include<

intbegin,c,end,f;

%d%d"

begin,&

end);

CelsiusFahrenheit\n"

for(c=begin;

c<

=end;

c++)

f=32+c*9/5;

%d%10d\n"

c,f);

15求整数的位数以及各位数之和

intnumber,sum;

longin;

in);

number=0;

if(in<

0)in=-in;

do

number++;

sum+=(in%10);

while((in/=10)!

=0);

number=%d,sum=%d\n"

number,sum);

16求最大值#include<

inti,max,n,x;

if(i==1)max=x;

elseif(x>

max)max=x;

%d\n"

max);

17求a+aa+aaa+aaa

voidmain()

longinta,sn,tn;

%ld%d"

tn=a;

sn=0;

for(i=1;

sn+=tn;

tn=10*tn+a;

%ld\n"

sn);

18输入1个正整数n,计算s的前n项的和(保留4位小数)。

floats,t;

s=0;

t=1;

for(i=1;

t=t*1.0/i;

s=s+t;

%0.4f\n"

s);

19求奇数和#include<

inti,n,x,sum;

输入数字个数:

"

i=1;

输入数字:

while(i<

=n)

{i++;

if(x%2!

=0)

sum=sum+x;

sum=%d\n"

sum);

20统计素数并求和输入2个正整数m和n(1<

=m,n<

=5ω),统计并输出m和n之间的素数的个数以及这些素数的和。

intcount,digit,i,j,k,m,n,sum;

m,&

count=0;

if(m<

2)m=2;

for(digit=m;

digit<

digit++)

j=sqrt(double(digit));

boolisPrime=true;

for(k=2;

k<

=j;

++k)

if(digit%k==0)

isPrime=false;

break;

if(isPrime)

count++;

sum+=digit;

count=%d,sum=%d\n"

count,sum);

22输入1个正整数n,计算s的前n项的和(保留4位小数)。

s=1+J/2!

++l/n!

要求定义并调用函数fact(n)计算n的阶乘.#include<

intmain()

doubles;

doublefact(intn);

i++)s+=fact(i);

%0.4f\n"

doublefact(intn)

intj,t=1;

doublex;

for(j=1;

j<

j++)

t*=j;

x=1.0/t;

return(x);

23统计一个整数中数字的个数

读入1个整数,统计并输出该数中2的个数。

要求定义并调用函数countdigit(number,digit),它的功能是统计整数number中数字digit的个数.例如,countdigit(l0090,0)的返回值是3.

#include<

intcount;

intcountdigit(longnumber,intdigit);

%ld"

count=countdigit(in,2);

count=%d\n"

count);

intcountdigit(longnumber,intdigit)

inti,sum;

if(number<

0)number=-number;

while(number!

i=number;

if(i%10==2)sum++;

number=number/10;

return(sum);

24输入2个正整数m和n(I<

=01,n<

=10000),输出m和n之间所有的Fibonacci数..

Fibonacci序列(第1项起):

1123581321•要求定义并调用fib(n)时,它的功能是返回第n项

目Fibonacci数.

intfib(intn);

inti,n,m,t;

请输入mn:

t=fib(i);

if(t>

=m&

t<

%d\n"

t);

elseif(t>

n)break;

\n"

intfib(intn)

if(n==1||n==2)

return1;

elsereturn

fib(n-1)+fib(n-2);

25将一个整数逆序输出输入一个整数,将它逆序输出.要求定义并调用

函数reverse(number),它的功能是返回number的逆序数.#include<

intin,res;

intreverse(intnumber);

 

res=reverse(in);

res);

intreverse(intnumber)

intx=0;

x=x*10+number%10;

26十进制转换二进制输入1个正

整数n,将其转换为二进制后输出.要求定义并调用函数dectobin(n),它的功能是输出n的二进制

voiddectobin(intn);

dectobin(n);

voiddectobin(intn)

if(n>

1)dectobin(n/2);

n%2);

27统计素数并求和输入2个正整数m和n(1<

=500),统计并输出m和n之间的素数的个数以及这些素数的和(素数就是只能被1和自身整除的正整数,1不是素数,2是素数).要求定义并调用函数primc(m)判断m是否为素数。

intcount,i,m,n,sum;

intprime(intm);

count=0;

sum=0;

for(i=m;

i++)if(prime(i))

sum+=i;

count=%d,sum=%d\n"

count,sum);

intprime(inti)

intflag,j;

if(i==1)flag=0;

elseif(i==2)flag=1;

for(j=2;

i;

j++)if(i%j==0)

flag=0;

break;

elseflag=1;

return(flag);

28求完数输入2个正整数m和n(I<

=1000),输出m到n之间的所有完数〈完数就是因子和与它本身相等的数〉要求定义并调用函数factorsum(number)

longi,m,n;

longfactorsum(longnumber);

if(factorsum(i)==i)printf("

%ld\n"

i);

longfactorsum(longnumber)

intj,sum=0;

number;

j++)if(number%j==0&

number!

=j)sum+=j;

30交换最小值和最大值输入一个正整数n(1<

n<

=I0),再输入n个整数,将最小值与第一个数交换,最大值与最后一个数交换,然后输出交换后的n个数。

intn,i,j,k,temp1=0,temp2=0,min=0,max=0,a,b;

intq[10];

for(i=0;

n;

q[i]);

min=q[0];

for(j=0;

if(q[j]<

=min)

temp1=j;

min=q[j];

max=q[0];

for(k=0;

k<

k++)

if(q[k]>

max)

temp2=k;

max=q[k];

a=q[0];

b=q[n-1];

q[n-1]=max;

q[0]=min;

q[temp1]=a;

q[temp2]=b;

for(intz=0;

z<

z++)

q[z]);

return0;

31输入2个正整数m和n(1<

=1000),输出m到n之间的所有满足各位数字的立方和等于它本身的数

inti,m,n;

intis(intnumber);

if(is(i));

elseprintf("

%d\t"

intis(intnumber)

inttemp,digit,sum,flag;

temp=number;

digit=number%10;

sum=sum+digit*digit*digit;

if(sum==temp)flag=0;

return(flag);

32输入一个正整数repeat(0<

I0),做repeat次下列运算:

输入一个正整

数n(0<

=9)和一组(n个)有序的整数,再输入一个整数x,把x插入到这组数据中,使该组数据仍然有序

intmain(void)

inti,j,n,x;

intrepeat,ri;

inta[20];

输入执行次数:

repeat);

for(ri=1;

ri<

=repeat;

ri++)

输入整数个数:

for(i=0;

输入整数:

a[i]);

x="

i=n-1;

while(i>

=0&

x<

=a[i])

a[i+1]=a[i];

a[i]=x;

i--;

n+1;

a[i]);

putchar('

\n'

33.输入1个正整数n(1<

=10),再输入n个整数,输出平均值〈保留2位小数〉。

inti,n,sum;

doubleaver;

sum=sum+a[i];

aver=sum*(1.0/n);

average=%.2f\n"

aver);

34输入一个正整数n(1<

=10),再输入n个整数,将最小值与第一个数交换,最大值与最后一个数交换,然后输出交换后的n个数。

inta,b,c,d,e,n,temp1=0,temp2=0,min,max,i,j;

if(q[i]<

min)

temp1=i;

min=q[i];

if(q[j]>

temp2=j;

max=q[j];

}a=q[0];

c=q[temp1];

d=q[temp2];

q[0]=c;

q[n-1]=d;

q[temp1]=a;

for(e=0;

e<

e++)

q[e]);

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

当前位置:首页 > 经管营销 > 财务管理

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

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