C语言练习题1Word文档下载推荐.docx
《C语言练习题1Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C语言练习题1Word文档下载推荐.docx(20页珍藏版)》请在冰豆网上搜索。
2.三个小朋友,大毛有糖果50粒,二毛有糖果43粒,三毛有糖果13粒。
现在他们三兄弟做游戏,从大毛开始,将自己的糖果三等分,三兄弟每人一份,多余的自己吃掉;
然后二毛和三毛也依次这样做,问最后三兄弟各有多少糖果?
inta=50,b=43,c=13;
a=a/3;
b=a+b;
b=b/3;
c=a+b+c;
a=a+b;
c=c/3;
b=b+c;
a=a+c;
%d,%d,%d\n"
a,b,c);
3.编写程序,要求用户输入某年年份,然后判断是否为闰年。
(闰年的条件是:
该年的年号能被4整除且不能被100整除,或该年的年号能被400整除,则该年是闰年,否则不是闰年。
)
intyear;
请输入年份"
%d"
year);
if(year%4==0&
&
year%100!
=0||year%400==0)
{
闰年\n"
}
else
平年\n"
4.编写程序,随机生成一个100以内的整数。
stdlib.h>
time.h>
inti;
srand(time(NULL));
i=rand()%100;
%d\n"
i);
5.编写一个程序,用户输入某年某月,求该月的天数。
intyear,month,n;
请输入年份月份:
%d%d"
year,&
month);
if(month==2)
n=29;
if(month==2)
n=28;
switch(month)
case2:
break;
case1:
case3:
case5:
case7:
case8:
case10:
case12:
n=31;
case4:
case6:
case9:
case11:
n=30;
default:
printf("
输入错误请重输:
n);
6.求分段函数的值。
0(x<
0)
F(x)=
2X+1(x>
=0)
floatx,f;
请输入x:
%f"
x);
if(x<
f=0;
f=2*x+1;
%f\n"
f);
7.已知函数
x+3(x>
0)
y=0(x=0)
x*x–1(x<
0)
floaty,x;
if(x>
y=x+3;
if(x=0)
y=0;
y=x*x-1;
y);
编程输入x的值,输出y的值。
8.编写程序,计算邮局汇款的汇费。
如果汇款金额小于100元,汇费为1元;
如果汇费在100元与5000元之间,按1%收取汇费;
如果金额大于5000元,汇费为50元。
汇款金额由命令行输入。
floata,w;
请输入汇款金额:
a);
if(a<
100)
w=1;
if(a<
5000)
w=a*1/100;
w=50;
w);
9.计算1-2+3-4+5……+99-100的值
inti,f=1,sum=0;
for(i=1;
i<
101;
i++)
sum=sum+i*f;
f=f*(-1);
sum);
10.打印100以内所有能被3整除的数,每5个换一行。
inti,n=0;
=100;
if(i%3==0)
%d"
n++;
if(n%5==0)
\n"
11.计算1+1/2+1/3+……+1/100的值
floati,sum=0;
sum=sum+1/i;
12.编写一个程序,用户输入一个整数,判断该数是否是素数。
intn,i,f;
n);
for(i=2;
=n/2;
f=1;
if(n%i==0)
break;
if(f==0)
%d不是素数"
%d是素数"
13.编写一个程序,打印出100以内所有的素数,每5个换一行。
inti,j,f,n=0;
for(j=2;
j<
=i/2;
j++)
if(i%j==0)
if(f==1)
14.一个运输公司对用户计算运费公式:
总运费=单价*重量*距离*(1-折扣)。
单价为每吨每公里为1元。
路程(s)越远,每公里运费折扣越高,公式如下:
s<
250km没有折扣
250=<
s<
5002%折扣
500=<
10005%折扣
1000=<
20008%折扣
2000=<
300010%折扣
3000=<
s15%折
编写一个程序,完成以下功能:
当运输公司输入货物的吨数和公里数,就能计算出这次运单的运费。
15.编写一个程序,获取系统的当前时间(取整点),若时间为5、6、7、8点,则显示“早上好”;
若时间为9、10、11点,则显示“上午好”;
若时间为12、13点,则显示“中午好”;
若时间为14、15、16、17、18点,则显示“下午好”;
若时间为19、20、21、22、23、24、1、2、3、4点,则显示“晚上好”。
time_tt;
t=time(NULL);
structtm*tt;
tt=localtime(&
t);
switch(tt->
tm_hour)
早上好\n"
上午好\n"
case13:
中午好\n"
case14:
case15:
case16:
case17:
case18:
下午好\n"
晚上好\n"
16.所谓水仙花数是指一个三位正整数,它各位数字的立方之和等于此正整数。
例如,153是一个水仙花数,因为153=1*1*1+5*5*5+3*3*3。
试编写一个程序,判断用户输入的一个三位正整数是否是水仙花数。
inta,b,c,n;
请输入一个三位数n:
a=n/100;
b=n%100/10;
c=n%100%10;
if(n==a*a*a+b*b*b+c*c*c)
printf("
%d是水仙花数\n"
%d不是水仙花数\n"
17.所谓水仙花数是指一个三位正整数,它各位数字的立方之和等于此正整数。
试编写一个程序,求出所有的水仙花数。
inta,b,c;
for(i=100;
1000;
a=i/100;
b=i%100/10;
c=i%100%10;
if(i==a*a*a+b*b*b+c*c*c)
18求200以内的所有素数的和。
(素数是一个大于1且只能被1和它本身整除的整数)
inti,j,sum=0,f;
=200;
sum=sum+i;