目录
? ? ? ? ?1.计算1+2+3+......+100的和
2.求1+2+3+.....+n的和,n的值由键盘输入
3.求下列式子的值:1-1/2+1/3-1/4+……+1/99-1/100,将结果输出
4.求1!+2!+3!+……+10!,将结果输出
5.键盘输入三个整数,求这3个整数的最大值
6.打印出100~999之间的所有水仙花数。水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3+ 3^3 = 153)
7.我有1000块钱我想买100只鸡,市场上公鸡50块一只,母鸡30块一只,小鸡10块钱3只,问题我该如何去购买?列出所有购买方案(使用for循环套用的方式)
8.输入三角形的三边a,b,c,判断a,b,c,能否构成三角形,何种类型的三角形:等腰、等边、直角、等腰直角、一般三角形
9.输入年号,计算这一年的2月份的天数,将结果输出
10.输入年月,判断这个月有几天?
11.编写程序,输入任意一个1~7之间的整数,将他们转换成对应的英文单词。例如:1转换成Monday,7转换成Sunday
12.输入奖金数a,计算并输出税率、应缴税款和实得奖金数。
3000以下不需要交税,3000~4000税率1%,4000~5000税率是2%,5000~10000以上是3%,10000以上5%
13.编写程序,输入两个整数,和+、-、*、/之中的任意一个运算符,输出计算结果
14.编程计算:1*2*3+3*4*5+……+99*100*101的值
15.输入一个正整数求出它是几位数;输出原数和位数
16.输入一个正整数求出它是几位数;输出原数、逆序和位数
17.有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完,请编程
18.猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少
19.有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少
20.求Sn=a+aa+aaa+…+aa…a之值,n,a由键盘输入
21.打印一个5*5的图形(原样打印)
22.画实心圆
23.打印金字塔
24.打印菱形
25.求满足1+2+3+…+n<500中最大的N,并求其和,编写程序实现
26.把100~200之间的不能被3整除的数输出
27.按以下规律翻译密码:将每一个字母变成它后面的字母,例如,将A变成B,B变成C,…,Z变成A,非字母字符不变,“!”作为电文结束标志
28.输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是小写字母,则把它变成大写字母;其它字符不变,请编程
29.编程实现:计算1到100之间的奇数之和及偶数之和
30.有一个两位数XY,X是十位,Y是个位;给出X+Y的值和X*Y的值;编程实现让用户猜测这个两位数十多少?根据猜测给出不同的提示
31.键盘输入的一个两位数XY,X是十位,Y是个位;请编程计算X+Y的值和X*Y的值
1.计算1+2+3+......+100的和
#include<stdio.h>
int main()
{
int i,sum=0;
for(i=1;i<=100;i++)
{
sum=sum+i;
}
printf("sum=%d\n",sum);
return 0;
}
2.求1+2+3+.....+n的和,n的值由键盘输入
#include<stdio.h>
int main()
{
int i,n,sum=0;
printf("请输入n的值:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
sum=sum+i;
}
printf("sum=%d\n",sum);
return 0;
}
3.求下列式子的值:1-1/2+1/3-1/4+……+1/99-1/100,将结果输出
#include<stdio.h>
void main()
{
float sum=0.0,t,s=1;
int i;
for(i=1;i<=100;i++)
{
t=s/i;
sum=sum+t;
s=-s;
}
printf("1-1/2+1/3-1/4+……+1/99-1/100=%g\n",sum);
}
4.求1!+2!+3!+……+10!,将结果输出
#include<stdio.h> //头文件 标准输入输出
int main() //void 空的 在这里是无函数类型,无返回值
{
float s=0,t=1; //带小数点的有正负号的浮点型,并赋了初始值
int n; //整形的,带符号的
for(n=1;n<=10;n++)//循环20次
{
t=t*n; //t=1//t=1*2//t=2*3//t=6*4
s=s+t; //s=1+2+6
}
printf("1!+2!+3!+……+10!=%e\n",s);
return 0;
}
5.键盘输入三个整数,求这3个整数的最大值
#include<stdio.h>
int main()
{
int a,b,c,max;
printf("请输入3个整数:");
scanf("%d%d%d",&a,&b,&c);
max=a; //假设a是最大值
if(max<b)
{
max=b;
}
if(max<c)
{
max=c;
}
printf("max=%d\n",max);
return 0;
}
6.打印出100~999之间的所有水仙花数。水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3+ 3^3 = 153)
#include<stdio.h>
int main()
{
int i,j,k,n;
printf("100~999之间的所有水仙花数 are:\n");
for(n=100;n<1000;n++)
{
i=n/100;
j=n/10-i*10;
k=n%10;
if(n==i*i*i+j*j*j+k*k*k)
{
printf("%d ",n);
}
}
printf("\n");
return 0;
}
7.我有1000块钱我想买100只鸡,市场上公鸡50块一只,母鸡30块一只,小鸡10块钱3只,问题我该如何去购买?列出所有购买方案(使用for循环套用的方式)
#include<stdio.h>
int main()
{
int a,b,c;
for(a=1;a<20;a++)
{
for(b=1;b<33;b++)
{
for(c=0;c<100;c++,c++,c++)//循环套用,遍历所有方案
{
if((a+b+c==100) && (a*50+b*30+c*10/3.0==1000))
{
printf("%d只公鸡%d只母鸡%d只小鸡\n",a,b,c);
}
}
}
}
return 0;
}
8.输入三角形的三边a,b,c,判断a,b,c,能否构成三角形,何种类型的三角形:等腰、等边、直角、等腰直角、一般三角形
#include<stdio.h>
int main()
{
float a,b,c;
printf("请输入三角形边长:\n");
scanf("%f%f%f",&a,&b,&c);
if((a-b>=c)||(b-c>=a)||(c-a>=b))
{
printf("不能够成三角形\n");
}
else if ((a*a+b*b==c*c)||(b*b+c*c==a*a)||(c*c+a*a==b*b))
{
if ((a==b)||(b==c)||(c==a))
{
printf("等腰直角三角形\n");
}
else
{
printf("直角三角形\n");
}
}
else if ((a==b)&&(b==c))
{
printf("等边三角形\n");
}
else if ((a==b)&&(b!=c)||(c==b)&&(b!=a)||(a==c)&&(c!=a))
{
printf("等腰三角形\n");
}
else
{
printf("一般三角形\n");
}
return 0;
}
9.输入年号,计算这一年的2月份的天数,将结果输出
#include<stdio.h>
int main()
{
int year;
printf("请输入年份:\n");
scanf("%d",&year);
if(year%400==0 ||(year%4==0 && year%100!=0))
{
printf("%d年的2月有29天",year);
}
else
{
printf("%d年的2月有28天",year);
}
return 0;
}
10.输入年月,判断这个月有几天?
#include<stdio.h>
int main()
{
int year,mouth,day;
printf("请输入年月份:");
scanf("%d%d",&year,&mouth);
switch(mouth)
{
case 2:day=28;
if(year%400==0 || (year%4==0 && year%100!=0))
{
day=29;
}
break;
case 4:
case 6:
case 9:
case 11:day=30;break;
default:day=31;break;
}
printf("%d年%d月有%d天\n",year,mouth,day);
return 0;
}
11.编写程序,输入任意一个1~7之间的整数,将他们转换成对应的英文单词。例如:1转换成Monday,7转换成Sunday
#include<stdio.h>
int main()
{
int a;
printf("输入一个整数:\n");
scanf("%d",&a);
switch(a)
{
case 1:printf("Monday\n");break;
case 2:printf("Tuesday\n");break;
case 3:printf("Wendesday\n");break;
case 4:printf("Thursday\n");break;
case 5:printf("Friday\n");break;
case 6:printf("Saturday\n");break;
case 7:printf("Sunday\n");break;
default:printf("错误\n");break;
}
return 0;
}
12.输入奖金数a,计算并输出税率、应缴税款和实得奖金数。
3000以下不需要交税,3000~4000税率1%,4000~5000税率是2%,5000~10000以上是3%,10000以上5%
#include<stdio.h>
int main()
{
int a,n;
float r,t,s;
printf("请输入奖金数:\n");
scanf("%d",&a);
n=a/1000;
switch(n)
{
case 0:
case 1:
case 2:r=0.01;break;
case 3:
case 4:r=0.02;break;
case 5:
case 6:
case 7:
case 8:
case 9:r=0.03;break;
default:r=0.05;break;
}
printf("税率:%7.2f\n",r);
printf("税款:%7.2f\n",a*r);
printf("实得奖金:%7.2f\n",a-a*r);
return 0;
}
13.编写程序,输入两个整数,和+、-、*、/之中的任意一个运算符,输出计算结果
#include<stdio.h>
int main()
{
float a,b;
char c;
printf("请输入一个运算符:\n");
scanf("%c",&c);
printf("请输入两个整数:\n");
scanf("%d,%d",&a,&b);
switch(c)
{
case'+':printf("%f\n",a+b);break;
case'-':printf("%f\n",a-b);break;
case'*':printf("%f\n",a*b);break;
case'/':printf("%f\n",a/b);break;
default:printf("错误");
}
return 0;
}
14.编程计算:1*2*3+3*4*5+……+99*100*101的值
#include<stdio.h>
int main()
{
int i,j,k,sum=0;
for(i=1,j=2,k=3;i<100,j<101,k<102;i+=2,j+=2,k+=2)
{
sum=sum+i*j*k;
}
printf("%d\n",sum);
return 0;
}
15.输入一个正整数求出它是几位数;输出原数和位数
#include<stdio.h>
int main()
{
unsigned int n,i=0,sum;
printf("请输入一个正整数:");
scanf("%d",&n);
sum=n;
while(n>0)
{
n=n/10;
i++;
}
printf("原数:%d\n",sum);
printf("位数:%d\n",i);
return 0;
}
16.输入一个正整数求出它是几位数;输出原数、逆序和位数
#include<stdio.h>
int main()
{
unsigned int n,i=0,sum,temp=0;
printf("请输入一个正整数:");
scanf("%d",&n);
sum=n;
while(n>0)
{
temp=temp*10+n%10;
n=n/10;
i++;
}
printf("原数:%d\n",sum);
printf("位数:%d\n",i);
printf("逆序:%d\n",temp);
return 0;
}
17.有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完,请编程
#include <stdio.h>
void main()
{
int a=1020,c=0;
do
{
a=a/2-2;
c++;
}while(a!=0);
printf("c=%d",c);
}
18.猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少
#include <stdio.h>
#define uchar unsigned char
#define uint unsigned int
int main()
{
uchar day,i;
uint s=0,j=1,k=0;
printf("请输入第几天剩下一个桃子!回车结束!\n");
scanf("%d",&day); //输入第几天剩下一个桃子
if(day==1)
{
printf("第一天共有桃子1个!\n");
}
else
{
for(i=1;i<day;i++)
{
s=(j+1)*2; //计算公式 从最后一天算起,最后一天1个,前一天个数为后一天个数加一再乘2
j=s;
}
printf("第一天共有桃子%d个!\n",s);
}
}
19.有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少
#include<stdio.h>
#define uchar unsigned char
#define uint unsigned int
int main()
{
uint i,temp=1,n=1;
uint mouth,sum;
printf("请输入月份!回车结束!\n");
scanf("%d",&mouth); //输入月份
if(mouth<2)
{
printf("一共有2只兔子\n");
return 0;
}
for(i=3;i<=mouth;i++)
{
sum=n+temp; //sum为本个月的总数
n=temp; //n为上上个月总数
temp=sum; //temp为上个月总数
}
printf("一共有%d只兔子\n",sum*2);
return 0;
}
20.求Sn=a+aa+aaa+…+aa…a之值,n,a由键盘输入
#include<stdio.h>
int main()
{
int a,n,i=1,sn=0,tn=0;
printf("a,n=:");
scanf("%d,%d",&a,&n);
while(i<=n)
{
tn=tn+a;
sn=sn+tn;
a=a*10;
++i;
}
printf("a+aa+aaa+…+aa…a=%d\n",sn);
return 0;
}
21.打印一个5*5的图形(原样打印)
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
#include<stdio.h>
int main()
{
int i,j;
for(j=0;j<5;j++)
{
for(i=0;i<5;i++)
{
printf("* ");
}
printf("\n");
}
return 0;
}
22.画实心圆
#include<stdio.h>
void main()
{
char i,j,k;
for(j=0;j<4;j++)
{
for(i=0;i<3-j;i++)
{
printf(" ");
}
for(i=0;i<12+2*j;i++)
{
printf("*");
}
printf("\n");
}
for(i=0;i<18;i++)
{
printf("*");
}
printf("\n");
for(j=0;j<4;j++)
{
for(i=0;i<j;i++)
{
printf(" ");
}
for(i=0;i<18-2*j;i++)
{
printf("*");
}
printf("\n");
}
printf("\n");
return 0;
}
23.打印金字塔
#include<stdio.h>
int main()
{
char i,j,k;
for(j=0;j<4;j++)
{
for(i=0;i<3-j;i++)
{
printf(" ");
}
for(i=0;i<=j*2;i++)
{
printf("*");
}
printf("\n");
}
return 0;
}
24.打印菱形
#include<stdio.h>
int main()
{
char i,j,k;
for(j=0;j<4;j++)
{
for(i=0;i<4-j;i++)
{
printf(" ");
}
for(i=0;i<=j*2;i++)
{
printf("*");
}
printf("\n");
}
for(i=0;i<=4*2;i++)
{
printf("*");
}
printf("\n");
for(j=0;j<4;j++)
{
for(i=0;i<=j;i++)
{
printf(" ");
}
for(i=0;i<(4-j)*2-1;i++)
{
printf("*");
}
printf("\n");
}
return 0;
}
25.求满足1+2+3+…+n<500中最大的N,并求其和,编写程序实现
#include <stdio.h>
int main()
{
int n=0,sum=0; //定义整型变量n和sun并都赋予了初始值0
while(sum<500)
{
++n;
sum+=n; //等于sum=sum+n
}
printf("N=%d\n",n-1);
printf("1+2+3+4+......+%d<500\n",n-1);
}
26.把100~200之间的不能被3整除的数输出
#include <stdio.h>
int main()
{
int a;
for (a=100;a<=200;a++)
{
if (a%3!=0) //求余不等于0的就是不被3整除的
{
printf("%d\t",a); //\t是空格
}
}
}
27.按以下规律翻译密码:将每一个字母变成它后面的字母,例如,将A变成B,B变成C,…,Z变成A,非字母字符不变,“!”作为电文结束标志
#include <stdio.h>
int 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("%c",ch);
}
}
printf("\n");
}
28.输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是小写字母,则把它变成大写字母;其它字符不变,请编程
#include <stdio.h>
int main()
{
char ch; //定义字符ch
ch=getchar();
if((ch>=65)&&(ch<=90))
{
ch=ch+32;
}
else if ((ch>=97)&&(ch<=122))
{
ch=ch-32;
}
printf("%c\n",ch);
}
29.编程实现:计算1到100之间的奇数之和及偶数之和
#include <stdio.h>
void main ()
{
int n,even=0,odd=0;
for(n=1;n<=50;n++)
{
even+=2*n; //even=even+2*n
odd+=2*n-1;
}
printf("1到100间的偶数的和为%d:\n",even);
printf("1到100间的奇数的和为%d:\n",odd);
}
30.有一个两位数XY,X是十位,Y是个位;给出X+Y的值和X*Y的值;编程实现让用户猜测这个两位数十多少?根据猜测给出不同的提示
#include <stdio.h>
int main()
{
int a;
printf ("x+y=2\n");
printf("x*y=1\n");
printf("请输入你所猜得数字\n");
scanf("%d",&a);
while(a!=11)
{
printf("you are not right\n");
scanf("%d",&a);
}
printf ("you are right\n");
}
31.键盘输入的一个两位数XY,X是十位,Y是个位;请编程计算X+Y的值和X*Y的值
#include <stdio.h>
int main ()
{
int a,x,y;
printf ("请输入一个两位数\n");
scanf("%d",&a);
x=a/10;
y=a%10;
printf ("x+y=%d\n",x+y);
printf("x*y=%d\n"x*y);
}
|