C语言的经典习题及程序答案(5)

2019-04-16 14:48

else

return f(m-1)+f(m-2); }

46.按以下规律翻译密码:

将每一个字母变成它后面的字母,例如,将A变成B,B变成C,?,Z变成A,非字母字符不变,“!”作为电文结束标志。 #include void main() { char ch;

printf(\输入字符串:\\n\ while ((ch=getchar())!='!') {

if ((ch>='a' && ch<='z')||(ch>='A' && ch<='Z')) if (ch=='z') ch='a'; else if (ch=='Z') ch='A'; else ch=ch+1;

printf(\ }

printf(\

}

47.百元买百鸡问题:公鸡每只5元,母鸡每只3元,小鸡3只一元,问一百元买一百只鸡有几种买法。 #include void main() {

int a,b,c,n=0;

for (a=0;a<=20;a++) for (b=0;b<=33;b++) for (c=0;c<=100;c++) if (5*a+3*b+c==100) n++; printf(\一共有%d种\\n\}

48.使用数组编程,计算出前20项fibonacci数列,要求一行打印5个数。 #include long f(int); void main() {

int n,i=0;

for (n=1;n<21;n++) {

printf (\ i++;

if (i%5==0) printf(\ } }

long f(int m) {

if (m==0) return 0; if (m==1) return 1; else

return f(m-1)+f(m-2); }

49.编程序求出两个3*4矩阵的和并将原矩阵和求出的和矩阵按原矩阵的形式分别输出。 #include void main() {

int a[3][4],b[3][4],s[3][4],n,m; printf(\输入数组A:\\n\ for (n=0;n<3;n++) {

printf(\第%d行\\n\ for (m=0;m<4;m++) scanf (\

-); }

printf(\输入数组B:\\n\ for (n=0;n<3;n++) {

printf(\第%d行\\n\ for (m=0;m<4;m++) scanf (\ -);

}

for (n=0;n<3;n++) {

for (m=0;m<4;m++) s[n]

-=a[n]

-+b[n] -; }

printf(\原数组A:\\n\ for (n=0;n<3;n++) {

for (m=0;m<4;m++) printf(\ -);

printf(\ }

printf(\

printf(\原数组B:\\n\ for (n=0;n<3;n++) {

for (m=0;m<4;m++) printf(\

-);

printf(\ }

printf(\

printf(\所得数组:\\n\ for (n=0;n<3;n++) {

for (m=0;m<4;m++) printf(\ -);

printf(\ } }

50.将一个4*3的矩阵转置,并将原矩阵和求出的转置矩阵按原矩阵的形式分别输出。 #include void main()

{

int a[4][3],b[4][3],s[4][3],n,m; printf(\输入数组A:\\n\ for (n=0;n<4;n++) {

printf(\第%d行\\n\ for (m=0;m<3;m++) scanf (\ -);

}

printf(\输入数组B:\\n\ for (n=0;n<4;n++) {

printf(\第%d行\\n\ for (m=0;m<3;m++) scanf (\ -);

}

for (n=0;n<4;n++) {

for (m=0;m<3;m++) s[n]

-=a[n]

-+b[n] -;

}

printf(\原数组A:\\n\ for (n=0;n<4;n++) {

for (m=0;m<3;m++) printf(\

-);

printf(\ }

printf(\

printf(\原数组B:\\n\ for (n=0;n<4;n++) {

for (m=0;m<3;m++) printf(\ -);

printf(\

}

printf(\

printf(\所得数组:\\n\ for (n=0;n<4;n++) {

for (m=0;m<3;m++) printf(\ -);

printf(\ } }

51.输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是小写字母,则把它变成大写字母;其它字符不变,请编程。 #include void main() {

char ch;

ch=getchar();

if ((ch>=65)&&(ch<=90)) ch=ch+32; else if ((ch>=97)&&(ch<=122)) ch=ch-32; printf(\}

52.已知x和y存在下列对应关系,要求对输入的每个x值,计算出y值,请编程。 y=x*(x+2),2 void main() {

float x,y;

printf(\输入X值:\ scanf(\ if (x<=-1) {

y=x-1;

printf (\ }

else if (x<=2) {

y=2*x;

printf (\ }

else if (x<=10)


C语言的经典习题及程序答案(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《人员素质与能力测评(第2版)》习题答案补充

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: