华科周纯杰版c语言问题详解
word第三章 程序和流程控制 1.输入两个整数,输出较大者。 #include<stdio.h>void main()int a,b; int max=0;printf("Please input two numbers:");scanf("%d%d",&a,&b);if(a<=b) max=b;else max=a;printf("The larger number is %dn",max);2.有3个整数a,b,c,由键盘输入,输出其中最大的数。#include<stdio.h>void main()int a,b,c,max;printf("Please input three numbers:");scanf("%d%d%d",&a,&b,&c);if(a>b) if(a>c) max=a; else max=c;elseif(b>c) max=b; else max=c;printf("The largest number is %dn",temp);3.从1累加到100,用while语句。#include<stdio.h>#define N 100void main()int i=1,sum=0;while(i<=N) sum+=i; i+;printf("sum:%dn",sum);4.a110,a2 3,an3an-1 an-2 ,求 a 的前十项。#include<stdio.h>#define N 10void main()int a20=10,-3;int i=0,m=0;for(i=2;i<N;i+) ai=3*ai-1+ai-2; m=N;printf("The %d numbers are:n",m);for(i=0;i<N;i+) printf("a%d=%dn",i+1,ai); 5.输入一个自然数,判断它是奇数还是偶数。 #include<stdio.h>void main()int a, temp;printf("Please input a numbers:n");scanf("%d",&a);temp=a%2;if(temp=0) printf("The number %d is an even!n",a);else printf("The number %d is an odd number!n",a);6.a1 8,an an-1 bn ,b1 1,bn bn-1 3,求 a 前10项之和。 #include<stdio.h>#define N 10void main()int aN=8,bN=1,i,sum=0;for(i=1;i<N;i+) bi=bi-1+3; for(i=1;i<N;i+) ai=ai-1+bi; for(i=0;i<N;i+) sum+=ai; printf("The sum is:%dn",sum);7.有一个函数 写一程序,输入x,输出Y的值。 #include<stdio.h>void main()float x,y;printf("Please input a float number x=:");scanf("%f",&x);printf("x=%f",x);if(x<1) y=x;else if(x>=10) y=3*x-11; else y=2*x-1;printf("The value of y is:%.3fn",y);8.给一个不多于5位的的正整数,要求:求出它是几位数,分别打印出每一位数字,最后按照逆序打印各位数字,例如原数为321,应输出为123。 #include<stdio.h>#define N 99999#define M 5void main()int i,j,k,m,bM;long int a,temp;printf("Please input a number:n");scanf("%ld",&a);if(a<0|a>N) printf("Error in input data!n");else temp=a; for(i=0;temp!=0;i+) temp=temp/10; m=i; printf("The number a=%ld have %d single numbersn",a,m); temp=a; for(j=0;j<m;j+) bj=temp%10; temp=temp/10; printf("The origal numbers are:n"); for(k=m-1;k!=-1;k-) printf("%d",bk); printf("n"); printf("every letter is:"); for(j=m-1;j>=0;j-) printf("%dt",bj); printf("n"); printf("The inverted numbers are:n"); for(j=0;j<m;j+) printf("%d",bj); printf("n");9编写一猜数游戏程序,随机产生某个整数,从键盘反复输入整数进展猜数,当未猜中时,提示输入过大或过小.猜中时,指出猜的次数.最多允许猜20次. #include<stdio.h>#include<time.h>#include<stdlib.h>#define N 10void main() int a,b,i; randomize(); a=random(N); printf("Please input number you guess:n"); for(i=0;i<20;i+) scanf("%d",&b); if(b=a) printf("Congratulation!nYour guessed number is right!n"); printf("The time(s) you have guessed is %d",i+1); break; else if(b>a) printf("Your number is too big!n"); else printf("Your number is too small!n"); printf("n"); 10.计算1999中能被3整除,且至少有一位数字是5的所有整数。 #include<stdio.h>#define N 999void main() int i,b,c,d; printf("The numbers are:n"); for(i=1;i<=N;i+) if(i%3) b=i/100; c=(i-100*b)/10; d=i%10; if(b=5|c=5|d=5) printf("%dt",i); 11.输入两个整数,求它们的最大公约数和最小公倍数。#include "stdio.h"void main()int a,b,c,d;int YueShu;int Beishu;printf("please input two number!");scanf("%d %d",&a,&b);c=a;d=b;int r;/求公约数算法while(c%d)r=c%d;c=d;d=r;YueShu=d;Beishu=a*b/YueShu;printf("%d,%d",YueShu,Beishu);12.输入一个整数,求它包含又多少个2的因子。例如,8含有3个2的因子,10含有一个2的因子,15不含有2的因子。#include "stdio.h"void main()int a=0;int integerGene=0;printf("input a number!n");scanf("%d",&a);while(a%2=0)integerGene+;a/=2; printf("%dn",integerGene);13.计算1!,2!,3!10!#include<stdio.h>#define N 10void main() int i; long int a=1; printf("The oute are:n"); for(i=1;i<=10;i+) a*=i; printf("The result of %d! is %ldn",i,a); 14.猴子吃桃问题:第一天吃掉总数的一半多一个,第二天又将剩下的桃子吃掉一半多一个,以后每天吃掉前一天剩下的一半多一个,到第十天准备吃的时候见只剩下一个桃子,求第一天开始吃的时候桃子的总数。#include<stdio.h>#define N 10void main() int i,x10; x9=1; for(i=9;i>=1;i-) xi-1=2*(xi+1); printf("The total numbers in the first day are:%dn",x0);15.输入