C语言练习题带详解答案Word格式.docx

上传人:b****4 文档编号:7335530 上传时间:2023-05-08 格式:DOCX 页数:14 大小:19.15KB
下载 相关 举报
C语言练习题带详解答案Word格式.docx_第1页
第1页 / 共14页
C语言练习题带详解答案Word格式.docx_第2页
第2页 / 共14页
C语言练习题带详解答案Word格式.docx_第3页
第3页 / 共14页
C语言练习题带详解答案Word格式.docx_第4页
第4页 / 共14页
C语言练习题带详解答案Word格式.docx_第5页
第5页 / 共14页
C语言练习题带详解答案Word格式.docx_第6页
第6页 / 共14页
C语言练习题带详解答案Word格式.docx_第7页
第7页 / 共14页
C语言练习题带详解答案Word格式.docx_第8页
第8页 / 共14页
C语言练习题带详解答案Word格式.docx_第9页
第9页 / 共14页
C语言练习题带详解答案Word格式.docx_第10页
第10页 / 共14页
C语言练习题带详解答案Word格式.docx_第11页
第11页 / 共14页
C语言练习题带详解答案Word格式.docx_第12页
第12页 / 共14页
C语言练习题带详解答案Word格式.docx_第13页
第13页 / 共14页
C语言练习题带详解答案Word格式.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言练习题带详解答案Word格式.docx

《C语言练习题带详解答案Word格式.docx》由会员分享,可在线阅读,更多相关《C语言练习题带详解答案Word格式.docx(14页珍藏版)》请在冰点文库上搜索。

C语言练习题带详解答案Word格式.docx

girth=2*PI*r;

theareais%.2f\n"

area);

thegirthis%.2f\n"

girth);

}

else

Inputerror!

3、已知函数y=f(x),编程实现输入一个x值,输出y值。

2x+1(x<

0)

y=0(x=0)

2x-1(x>

0)

voidmain()

{intx,y;

scanf(“%d”,&

x);

if(x<

0)y=2*x+1;

elseif(x>

0)y=2*x-1;

elsey=0;

printf(“%d”,y);

4.从键盘上输入一个百分制成绩score,按下列原则输出其等级:

score≥90,等级为A;

80≤score<

90,等级为B;

70≤score<

80,等级为C;

60≤score<

70,等级为D;

score<

60,等级为E。

voidmain(){

intdata;

chargrade;

Pleaseenterthescore:

"

%d”,&

data);

switch(data/10)

{case10:

case9:

grade=’A’;

break;

case8:

grade=’B’;

case7:

grade=’C’;

case6:

grade=’D’;

default:

grade=’E’;

}

thegradeis%c”,grade);

5.编一程序每个月根据每个月上网时间计算上网费用,计算方法如下:

要求当输入每月上网小时数,显示该月总的上网费用(6分)

{inthour;

floatfee;

printf(“pleaseinputhour:

\n”);

scanf(“%d”,&

hour);

if(hour<

=10)

fee=30;

elseif(hour>

=10&

&

hour<

=50)

fee=3*hour;

elsefee=hour*2.5;

printf(“Thetotalfeeis%f”,fee);

6.从键盘输入10个整数,统计其中正数、负数和零的个数,并在屏幕上输出。

voidmain(){

inta,i,p=0,n=0,z=0;

pleaseinputnumber"

for(i=0;

i<

10;

i++){

scanf("

%d,"

a);

if(a>

0)p++;

elseif(a<

0)n++;

elsez++;

正数:

%5d,负数:

%5d,零:

%5d\n"

p,n,z);

7、编程序实现求1-10之间的所有数的乘积并输出。

voidmain()

{inti;

longsum=1;

for(i=1;

i<

=10;

i=i+1)

sum=sum*i;

printf(“thesumofoddis:

%ld”,sum);

8.从键盘上输入10个数,求其平均值。

voidmain(){

inta,i,sum=0;

floatave;

;

for(i=0;

%d"

sum+=a;

ave=(float)sum/10;

ave=%f\n"

ave);

9、编程序实现求1-1000之间的所有奇数的和并输出。

voidmain()

{inti,sum=0;

1000;

i=i+2)

sum=sum+i;

%d”,sum);

10.有一个分数序列:

2/1,3/2,5/3,8/5,13/8,……编程求这个序列的前20项之和。

inti,t,n=20;

floata=2,b=1,s=0;

for(i=1;

=n;

i++)

{s=s+a/b;

t=a;

a=a+b;

b=t;

sum=%6.2f"

11.从键盘输入两个数,求出其最大值(要求使用函数完成求最大值,并在主函数中调用该函数)

floatmax(floatx,floaty);

{floata,b,m;

%f,%f"

m=max(a,b);

Maxis%f\n"

m);

floatmax(floatx,floaty)

{

if(x>

=y)

returnx;

else

returny;

12.编写程序,其中自定义一函数,用来判断一个整数是否为素数,主函数输入一个数,输出是否为素数。

math.h>

intIsPrimeNumber(intnumber)

{inti;

if(number<

=1)

return0;

for(i=2;

sqrt(number);

i++)

{if((number%i)==0)

return0;

}

return1;

voidmain()

{intn;

printf(“Pleaseinputn:

”);

n);

if(IsPrimeNumber(n))

printf(“\n%disaPrimeNumber”,n);

elseprintf(“\n%disnotaPrimeNumber”,n);

13、从键盘输入n个数存放在数组中,将最小值与第一个数交换,输出交换后的n个数。

intmain(void){

inti,n,iIndex,temp;

inta[10];

Entern:

"

&

Enter%dintegers:

\n"

n;

a[i]);

iIndex=0;

if(a[i]<

a[iIndex])iIndex=i;

temp=a[0];

a[0]=a[iIndex];

a[iIndex]=temp;

%5d"

a[i]);

return0;

}

第二种解法利用函数

#include<

intcomp(intarry[],intn)

inti,index,temp;

为数组赋值:

{scanf("

arry[i]);

for(i=1,index=0;

=n-1;

{if(arry[i]<

arry[index])

{index=i;

temp=arry[0];

arry[0]=arry[index];

arry[index]=temp;

{printf("

%d"

arry[i]);

main()

为n赋值:

comp(a,n);

14.用数组实现以下功能:

输入5个学生成绩,而后求出这些成绩的平均值并显示出来。

{inta[5],s=0;

inti;

5;

s=s+a[i];

printf(“result=%f”,s/5.0);

15、输入一个正整数n(n<

=6),再输入n×

n的矩阵,求其主对角线元素之和及副对角线元素之和并输出。

intmain(void){

inti,j,n,sum1=0,sum2=0;

inta[6][6];

Entern(n<

=6):

Enterdata:

for(j=0;

j<

j++){

a[i][j]);

if(i==j)

sum1+=a[i][j];

if(i+j==n-1)

sum2+=a[i][j];

sum1=%d,sum2=%d"

sum1,sum2);

16、从键盘输入30名学生的成绩数据,求其中的最高分、最低分和平均分。

(提示:

用数组存放成绩数据)

#include<

#defineM30

voidmain()

{floatscore[M],max,min,aver;

inti;

printf(“pleaseinputscore:

\n”);

M;

scanf(“%f”,&

score[i]);

max=score[0];

min=score[0];

aver=score[0];

M;

{if(max<

score[i])max=score[i];

if(min>

score[i])min=score[i];

aver+=score[i];

printf(“max=%f,min=%f,aver=%f”,max,min,aver/M);

17.将一个有5个元素的数组中的值(整数)按逆序重新存放。

例:

原来顺序为:

8、6、5、4、1,要求改为1、4、5、6、8

#defineN5

{inta[N],i,temp;

printf(“enterarraya:

N;

{temp=a[i];

a[i]=a[N-i-1];

a[N-i-1]=temp;

printf(“\nNow,arraya:

printf(“%4d”,a[i]);

printf(“\n”);

18.从键盘上输入一个2*3的矩阵,将其转秩后形成3*2的矩阵输出。

{inta[2][3],b[3][2],i,j;

2;

for(j=0;

3;

j++)

b[i][j]=a[j][i];

{for(j=0;

b[i][j]);

19、从键盘输入10名学生的成绩数据,按成绩从高到低的顺序排列并输出。

{inta[10];

inti,j,temp;

inputscore:

9;

if(a[j]<

a[j+1])

{temp=a[j];

a[j]=a[j+1];

a[j+1]=temp;

a[i]);

20、从键盘上输入一个4*3的整型数组,找出数组中的最小值及其在数组中的下标。

{inta[4][3],i,j,min,m,n;

Pleaseenterdata:

for(i=0;

4;

for(j=0;

j<

j++)

a[i][j]);

min=a[0][0];

m=0;

n=0;

if(a[i][j]<

min)

{min=a[i][j];

m=i;

n=j;

theminis%d\n,min);

posionis%d%d\n,m,n);

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

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2