C语言课后答案文档格式.docx

上传人:b****6 文档编号:19981812 上传时间:2023-01-13 格式:DOCX 页数:28 大小:23.24KB
下载 相关 举报
C语言课后答案文档格式.docx_第1页
第1页 / 共28页
C语言课后答案文档格式.docx_第2页
第2页 / 共28页
C语言课后答案文档格式.docx_第3页
第3页 / 共28页
C语言课后答案文档格式.docx_第4页
第4页 / 共28页
C语言课后答案文档格式.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

C语言课后答案文档格式.docx

《C语言课后答案文档格式.docx》由会员分享,可在线阅读,更多相关《C语言课后答案文档格式.docx(28页珍藏版)》请在冰豆网上搜索。

C语言课后答案文档格式.docx

1.输入一个整数,判断这个整数是奇数还是偶数(提示:

整数的奇偶性可以利用取余运算符%判定)。

#include<

inta;

%d"

a);

if(a%2)

printf("

奇数\n"

else

偶数\n"

2.编写程序,输入一个24小时制的时间,转换为12小时制时间后进行输出。

以13点15分为例,输入:

13:

15,则输出:

下午1:

15。

inthour,minute;

%d:

hour,&

minute);

if(hour>

12)hour=hour-12;

%d\n"

hour,minute);

3.输入年号,判断它是否是闰年(如果年号能被400整除,或能被4整除,而不能被100整除,则是闰年,否则不是)。

intyear;

year);

if(year%400==0||(year%4==0&

&

year%100==0))

%d是闰年\n"

year);

%d不是闰年\n"

4.输入一个字符,如果是大写字母则输出对应的小写字母,如果是小写字母则输出相应的大写字母,如果都不是则原样输出。

ch);

if(ch>

='

a'

ch<

z'

ch-=32;

else

if(ch>

A'

Z'

ch+=32;

\n%c\n"

5.设计一个简单的计算器程序,能输入整型运算数和基本运算符(+,-,*,/),输出计算结果。

例如:

输入2+6,输出2+6=8。

main()

floata,b,result;

charop;

%f%c%f"

a,&

op,&

b);

switch(op)

{

case'

+'

:

result=a+b;

=%f"

result);

break;

-'

result=a-b;

*'

result=a*b;

/'

if(b==0.0)printf("

error!

result=a/b;

default:

errorduetotheillegalinput!

}

第5章

1.编写程序,显示100~200之间能被7除余2的所有整数。

{inti;

for(i=100;

i<

=200;

i++)

{if(i%7==2)

printf("

\t%d\t"

i);

2.输入n个整数,求这n个整数中的最大数、最小数和偶数平均数,并输出。

voidmain()

{

inti,n,data,max=0,min=0,even=0,evennumber=0;

Pleaseinputthenumberofdata:

"

n);

Pleaseinputthedata:

data);

max=data;

min=data;

if(data%2==0)

even=even+data;

evennumber++;

for(i=1;

n;

scanf("

if(data>

max)

max=data;

else

if(data<

min)

min=data;

if(data%2==0)

{

even=even+data;

evennumber++;

}

Themaxis%d\nTheminis%d\nTheaverageofevenis%5.2f\n"

max,min,(float)(even)/evennumber);

3.输入一串字符,以回车作为结束标志。

统计并输出这串字符中大写字母、小写字母和数字字符的个数。

intupper=0,lower=0,number=0;

charletter;

while((letter=getchar())!

\n'

if(letter>

letter<

)lower++;

elseif(letter>

)upper++;

0'

9'

)number++;

thenumberofuppercaseis:

upper);

thenumberoflowercaseis:

lower);

thenumberofnumberis:

number);

4.输出九九乘法表。

inti,j;

for(i=1;

=9;

i++)

{

for(j=1;

j<

=i;

j++)

%d*%d=%-3d"

i,j,i*j);

}

5.编写程序,输出3~1000之间全部素数。

math.h"

intk,data,tag;

for(data=3;

data<

=1000;

data++)//外层循环,用来产生2~1000之间的整数

tag=0;

//tag用于表示数i是否是素数,没有判断前先假定是素数

for(k=2;

k<

=sqrt(data)&

!

tag;

k++)//内层循环用来判断data是否有约数

if(data%k==0)

tag=1;

if(tag==1)printf("

%4d"

data);

//如果i是素数,则输出

6.输入一个三位数,判断其是否是“水仙花数”。

水仙花数是指3位数中的各位数字的立方和等于这3位数本身。

如153=1*1*1+5*5*5+3*3*3。

#include"

intS,a,b,c;

请输入一个3位数:

S);

a=S/100;

b=S%100/10;

c=S%10;

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

%d是水仙花数。

S);

%d不是水仙花数。

7.编程求Fibonacci数列的前40个数。

该数列的生成方法是:

F1=1,F2=1,Fn=Fn-1+Fn-2(n>

=3)(即从第三个数起,每个数等于前2个数之和)。

intf[40],n;

f[0]=1;

f[1]=1;

Fibonacci数列的前40个数是:

%d\t%d\t"

f[0],f[1]);

for(n=2;

n<

40;

n++)

f[n]=f[n-1]+f[n-2];

%d\t"

f[n]);

8.一个穷人找到一个百万富翁,给他商讨一个换钱计划如下:

我每天给你十万元,而你第一天只需给我一元钱,第二天给我二元钱,第三天给我四元钱,……,即我每天都给你十万元,你每天给我的钱都是前一天的两倍,直到满一个月(30天)。

百万富翁很高兴地接受了这个换钱计划。

请编写程序计算满一个月时,穷人给了富翁多少钱,而富翁又给了穷人多少钱。

longpoor=100000,rich=1,i;

for(i=2;

=30;

poor=poor+100000;

rich=rich*2;

Moneyofpoorgivingrichis%ld\nMoneyofrichgivingpooris%ld\n"

poor,rich);

9.猴子吃桃问题。

猴子第一天摘下若干桃子,立即吃了一半,不过瘾又多吃了一个。

第二天早上又将剩下的桃子吃了一半,又多吃了一个。

以后的每天早上都是吃了前一天剩下的一半加一个。

到第10天早上时只剩下一个桃子了。

编写程序,求猴子第一天共摘了多少桃子。

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

/*有一群猴子摘了一堆桃子,他们每天都吃当前桃子的一半且再多吃一个*/

/*到了第10天就只余下一个桃子。

(C语言实现)*/

/*用多种方法实现求出原来这群猴子共摘了多少个桃子。

*/

/*运行环境:

VC++6.0*/

inti,j,k;

/*j是最后的桃子数,k是中间变量,也是桃子总数*/

j=1;

for(i=9;

i>

0;

i--)

k=(j+1)*2;

j=k;

%total=%d\n"

k);

第6章

三.1.#include<

#definen10

{inta[n],i,count1=0,count2=0,sum=0;

floatave;

for(i=0;

{scanf("

a[i]);

sum+=a[i];

if(a[i]>

80)

count1+=1;

else

if(a[i]<

60)

count2+=1;

ave=sum/n;

printf("

%d个优秀,%d个不及格,平均分:

%f。

count1,count2,ave);

2.#include<

{inta[n],i,j,k,max,min;

if(!

i)

{max=min=a[i];

j=k=i;

{if(max<

a[i])

{max=a[i];

j=i;

if(min>

{min=a[i];

k=i;

最大值%d在第%d位,最小值%d在第%d位。

max,j+1,min,k+1);

3.#include<

string.h>

{chars[20],ch;

inti,n;

请输入字符串:

gets(s);

n=strlen(s);

for(i=0;

n/2;

{ch=s[i];

s[i]=s[n-1-i];

s[n-1-i]=ch;

逆序存放的字符串:

puts(s);

4.#include<

#defineN10

{inti,j,n,a[N+1];

请输入%d个由小到大排列的整数:

N);

N;

scanf("

请输入要插入的数:

if(a[i]>

n)

{j=i;

break;

if(i==N)

for(i=N-1;

=j;

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

a[j]=n;

插入后的排列:

=N;

%d"

a[i]);

5.#include<

#defineN3

{inti,j,a[N][N],sum=0;

请输入%d*%d矩阵的元素:

N,N);

for(j=0;

j++)

a[i][j]);

if(i==j)

sum+=a[i][j];

主对角线元素之和:

%d。

sum);

6.#include<

math.h>

{inti,j,n,k=0,b[300];

for(i=1;

300;

{n=int(sqrt(i));

for(j=2;

=n;

{if(i%j==0)

if(j>

{b[k]=i;

k++;

k;

%5d"

b[i]);

7.#include<

#defineN7

{inti,j,k,a[N],temp;

请输入%d个整数:

for(i=0;

N-1;

{k=i;

temp=a[i];

for(j=i+1;

if(temp>

a[j])

{k=j;

temp=a[j];

if(k!

=i)

{a[k]=a[i];

a[i]=temp;

排序后的数列:

%3d"

8.#include<

{inti=0,count1=0,count2=0,count3=0;

chars[20];

gets(s);

while(s[i]!

\0'

{if(s[i]>

s[i]<

||s[i]>

count1++;

if(s[i]>

count2++;

elsecount3++;

i++;

字符%d个,数字%d个,其他%d个。

count1,count2,count3);

9.#include<

{chars[20],ch;

inti=0;

{s[i]+=3;

if(s[i]>

'

s[i]-=26;

加密后:

puts(s);

10.#include<

{chars1[20],s2[20];

inti=0,j=0;

请输入字符串1:

gets(s1);

请输入字符串2:

gets(s2);

while(s1[i]!

s1[i]=s2[j];

do

{i++;

j++;

while(s2[j]!

连接后:

puts(s1);

11.#include<

{chars1[20],s2[20],s3[40];

inti=0,j=0,k=0;

请输入按字母序排列的字符串1:

gets(s1);

请输入按字母序排列的字符串2:

gets(s2);

while(s1[i]!

s2[j]!

{if(s1[i]<

s2[j])

{s3[k]=s1[i];

{s3[k]=s2[j];

j++;

{s3[k]=s1[i];

k++;

while(s2[j]!

{s3[k]=s2[j];

s3[k]='

;

合并后的字符串:

puts(s3);

12.#include<

{inti,j,a[5][5];

5;

for(j=4;

j>

=0;

j--)

{if(j>

a[i][j]=1;

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

{for(j=0;

a[i][j]);

13.#include<

{inti,j,a[8][8];

8;

for(j=0;

{if(j==i||(i+j)==7)

a[i][j]=0;

14.#include<

{inti,j,sum,a[5][3]={20,30,26,30,20,25,25,50,20,46,15,10,35,15,12};

{sum=0;

3;

sum+=a[i][j];

switch(i)

{case0:

第一个"

case1:

第二个"

case2:

第三个"

case3:

第四个"

case4:

第五个"

企业的总产值是:

%d万元。

{sum=0;

switch(j)

A"

B"

case2:

C"

产品的总产值是:

15.#include<

#defineN5

{inti,j,a[N][N],b[N];

请输入%d个数:

b[i]);

{for(j=i;

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

i;

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

{for

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

当前位置:首页 > 人文社科 > 文化宗教

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

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