case 3:rate=0.0333;break; case 5:rate=0.0360;break; case 8:rate=0.0414;break;
default:rate=0.0;printf(\输入的存期错误!\\n\ }
total=money+money*rate*year;
printf(\从银行获得的总金额为:%.2lf\\n\ return 0; }
16.从键盘上输入年份和月份,求该月有多少天?
#include
int year,month,day,leapyear; scanf(\ if(year<0||month<1||month>12) {
printf(\输入的数据错误!\\n\ exit(0); }
leapyear=year%4==0&&year0!=0||year@0==0; /*是否为闰年*/ switch(month) {
case 1: case 3: case 5: case 7: case 8: case 10:
case 12:day=31;break; case 4: case 6: case 9:
case 11:day=30;break;
case 2:day=28+leapyear;break; }
printf(\年%d月的天数为:%d\\n\ return 0; } 17.输入一个正整数,将它反位组成一个新的数输出(如输入12345,组成54321输出)。
#include
int n,m,t=0; scanf(\ if(n<0)
{
printf(\数据输入错误!\\n\ exit(0); }
while(n!=0) {
m=n; t=t*10+m; n=n/10; }
printf(\反序数为:%d\\n\ return 0; }
18.从键盘上输入两个整数,求它们的最大公约数。
#include
int a,b,r;
scanf(\ do {
r=a%b; a=b; b=r;
}while(r!=0);
printf(\最大公约数为:%d\\n\ return 0; } 19.计算1!+2!++n!。
#include
int i,sum=0,p=1,n; scanf(\ if(n<0) {
printf(\负数没有阶乘!\\n\ exit(0); }
for(i=1;i<=n;i++) {
p=p*i;
sum=sum+p; }
printf(\阶乘的和为:%d\\n\ return 0; }
20.从键盘输入一个正整数,判断该数是否为素数。
#include
int i,m,n;
scanf(\ if(n<0) {
printf(\输入数据错误!\\n\ exit(0); }
m=sqrt(n);
for(i=2;i<=m;i++)
if(n%i==0)break; /*break跳出循环*/ if(i>m)
printf(\是素数\\n\ else
printf(\不是素数\\n\ return 0; }
21.求所有水仙花数。
#include
int i,m,n,k;
for(i=100;i<1000;i++) {
m=i/100; /*求百位数*/ k=i; /*求个位数*/ n=(i-100*m)/10; /*求十位数*/ if(i==m*m*m+n*n*n+k*k*k) printf(\ }
return 0; }
22.验证哥德巴赫猜想:任一充分大的偶数,可以用两个素数之和表示。例如: 4=2+26=3+3
98=19+79#include
int i,p,q,n,p_flag,q_flag; scanf(\
if((n%2==1)||n<4) {
printf(\数据输入出错\\n\ exit(0); } p=1; do {
p=p+1; q=n-p; p_flag=1;
for(i=2;i<=sqrt(p);i++) {
if(p%i==0) {
p_flag=0; break; } }
q_flag=1;
for(i=2;i<=sqrt(q);i++) {
if(q%i==0) {
q_flag=0; break; } }
}while(p_flag*q_flag==0);
printf(\ return 0; }
23.判断一个正整数是否为回文数。回文数是这样的数:一个正整数从左往右读和从右往左读都是一样的数(如121,123321)
#include
int n,m=0,k; do {
scanf(\ if(n<=0)
printf(\数据输入错误,请重新输入!\\n\ }while(n<=0); k=n;
while(k!=0) {
m=m*10+k; k=k/10;
}
}
if(n==m)
printf(\是回文数!\\n\else
printf(\不是回文数!\\n\return 0;
2358,-,,-,123524.求分数数列
,前20项之和。
#include
int main() {
int a=2,b=1,s=1,i; double sum=0.0; for(i=1;i<=20;i++) {
sum=sum+s*a/(double)b; a=a+b; b=a-b; s=-s; }
printf(\数列的和为:%.4lf\\n\ return 0; }
25.有一函数:
ìx(x<1)???y=?í2x-11(1≤x<10)
?????3x11(x≥10)编写一程序,输入x,输出y值。
#include
double x,y;
scanf(\ if(x<1) y=x;
else if(x>=1&&x<10) y=2*x-11; else
y=3*x-11;
printf(\ return 0; }
26.从键盘上输入3个整数,求最小的数。 #include