c语言课后习题源程序.docx

上传人:b****4 文档编号:3122671 上传时间:2022-11-17 格式:DOCX 页数:48 大小:38.92KB
下载 相关 举报
c语言课后习题源程序.docx_第1页
第1页 / 共48页
c语言课后习题源程序.docx_第2页
第2页 / 共48页
c语言课后习题源程序.docx_第3页
第3页 / 共48页
c语言课后习题源程序.docx_第4页
第4页 / 共48页
c语言课后习题源程序.docx_第5页
第5页 / 共48页
点击查看更多>>
下载资源
资源描述

c语言课后习题源程序.docx

《c语言课后习题源程序.docx》由会员分享,可在线阅读,更多相关《c语言课后习题源程序.docx(48页珍藏版)》请在冰豆网上搜索。

c语言课后习题源程序.docx

c语言课后习题源程序

c语言课后习题源程序

第2章C语言概述

2.3参照例题,编写一个C语言程序,输出以下信息:

****************************

Hello,World!

****************************

程序代码如下:

#includevoidmain(void)/*主函数*/

{

printf(“****************************\n”);/*输出一行**/

printf(“HelloWorld!

\n”);/*输出HelloWorld!

*/

printf(“****************************\n”);/*输出一行**/

}

2.4编写一个C语言程序,输入a、b、c三个数,输出其中最大者。

程序代码如下:

#includevoidmain()/*主函数*/

{

intmax(intx,inty);/*函数声明*/

inta,b,c,d;/*声明部分,定义变量*/

scanf("%d,%d,%d",&a,&b,&c);/*输入变量a、b、c的值*/

d=max(a,b);/*调用max函数,将得到的值赋给d*/

d=max(d,c);/*调用max函数,将得到的值赋给d*/

printf("max=%d\n",d);/*输出d的值*/

getch();

}

intmax(intx,inty)/*定义max函数,函数值为整型,形式参数x,y为整型*/{

intz;/*max函数中的声明部分,定义本函数中用到的变量z为整型*/

if(x>y)

z=x;

else

return(z);/*将z的值返回,通过add带回调用处*/

}

第3章数据类型、运算符与表达式

3.7编写程序,输入两个字符,利用条件运算符,输出其中较小字符的ASCII码值。

程序代码如下:

voidmain()

{

charc1,c2;

inti;

printf("inputtwoletters:

");

scanf("%c,%c",&c1,&c2);/*注意:

输入的两个字符之间要用逗号隔开*/

i=c1printf("minimumASCIIis%d\n",i);

}

第4章程序控制结构

4.1用*号输出大写字母“C”的图案。

程序代码如下:

#includevoidmain()

{

printf("****\n");

printf("*\n");

printf("*\n");

printf("****\n");

}

4.2从键盘输入一个大写字母,要求分别用大小写字母形式输出该字母及对应的ASCII码值。

程序代码如下:

#includevoidmain()

{

charc1,c2;

printf("Inputauppercaseletter:

");

c1=getchar();/*输入大写字母*/

c2=c1+32;/*将大写字母转换成对应的小写字母*/

printf("%c,%d\n",c1,c1);/*输出大写字母及对应的ASCII码值*/

printf("%c,%d\n",c2,c2);/*输出小写字母及对应的ASCII码值*/

}

4.3输入一个整数,判断它能否被3或7整除,若能整除,输出“YES”,否则输出“NO”。

程序代码如下:

#includevoidmain()

{

intn;

scanf("%d",&n);

if(n%3==0||n%7==0)/*判断能否被3或7整除*/

printf("YES\n");

else

printf("NO\n");

}

4.4输入x和a的值,按下列公式计算y的值。

?

?

?

?

?

?

?

>-程序代码一:

#include#includevoidmain()

{

floatx,a,y;

printf("\nPleaseinputx,a:

");

if(x>-a&&xif(x==a||x==-a)/*或fabs(x)==a*/y=0;

if(xprintf("x=%g,a=%g,y=%g\n",x,a,y);

}

程序代码二:

#include#includevoidmain()

{

floatx,a,y;

printf("\nPleaseinputx,a:

");

scanf("%f,%f",&x,&a);

if(fabs(x)-a&&xelseif(fabs(x)==a)/*或x==a||x==-a*/y=0;

else

y=x-1;

printf("x=%g,a=%g,y=%g\n",x,a,y);

}

程序代码三:

#include#includevoidmain()

{

floatx,a,y;

printf("\nPleaseinputx,a:

");

scanf("%f,%f",&x,&a);

if(fabs(x)if(fabs(x)y=sqrt(a*a-x*x);

else

y=0;

else

y=x-1;

}

4.5输入四个不相等的数,找出其中的最小数。

程序代码一:

#includevoidmain()

{

inta,b,c,d,min;

printf("\nPleaseinput4numbers:

");

scanf("%d%d%d%d",&a,&b,&c,&d);

min=a;/*先假设a为最小数min*/

if(bif(cif(dprintf("Theminimumnumberis:

%d\n",min);

}

程序代码二:

#includevoidmain()

{

inta,b,c,d,t1,t2,min;

printf("\nPleaseinput4numbers:

");

scanf("%d%d%d%d",&a,&b,&c,&d);

t1=(at2=(cmin=(t1printf("Theminimumnumberis:

%d\n",min);

}

4.6输入三个整数,分别放入x,y,z中,要求程序把数据重新按从小到大的顺序放入x,y,z中,然后输出x,y,z中的值。

程序代码如下:

#includevoidmain()

{

intx,y,z,t;

scanf("%d%d%d",&x,&y,&z);

if(x>y)

{t=x;x=y;y=t;}/*交换x,y的值*/

if(x>z)

{t=z;z=x;x=t;}/*交换x,z的值*/

{t=y;y=z;z=t;}/*交换z,y的值*/

printf("smalltobig:

%d%d%d\n",x,y,z);

}

4.7输入一个不多于4位的正整数,求它的位数,并按逆序输出各位数字。

程序代码一:

#includevoidmain()

{

inti,a,b,c,d;

printf("\nPleaseinputanumber(0-9999):

");

scanf("%ld",&i);

if(iprintf("Errorinput.");

else

{

if(ielseif(ielseif(ielsen=4;

printf("Thereare%ddigits.\n",n);

a=i%10;/*求i的个位数*/

b=i/10%10;/*求i的十位数*/

c=i/100%10;/*求i的百位数*/

d=i/1000%10;/*求i的千位数*/

printf("Reversedigit:

");

switch(n)

{case1:

printf("%d\n",a);break;

case2:

printf("%d,%d\n",a,b);break;

case3:

printf("%d,%d,%d\n",a,b,c);break;

case4:

printf("%d,%d,%d,%d\n",a,b,c,d);

}

}

}

程序代码二:

#includevoidmain()

{

inti,a,b,c,d;

printf("\nPleaseinputanumber(0-9999):

");

a=i%10;/*求i的个位数*/

b=i/10%10;/*求i的十位数*/

c=i/100%10;/*求i的百位数*/

d=i/1000%10;/*求i的千位数*/

if(d!

=0)/*千位数非0时*/

{printf("Thereare4digits.\n");/*4位数*/

printf("Reversedigit:

%d,%d,%d,%d\n",a,b,c,d);

}

elseif(c!

=0)/*千位数为0但百位数非0时*/

{printf("Thereare3digits.\n");/*3位数*/

printf("Reversedigit:

%d,%d,%d\n",a,b,c);

}

elseif(b!

=0)/*千、百位数为0但十位数非0时*/

{printf("Thereare2digits.\n");/*2位数*/

printf("Reversedigit:

%d,%d\n",a,b);

}

else/*千、百、十位数为0时*/

{printf("Thereare1digits.\n");/*1位数*/

printf("Reversedigit:

%d\n",a);

}

}

4.8输入一个年份和一个月份,输出该年的这个月有多少天。

用switch语句编程。

程序代码如下:

#includevoidmain()

{

unsignedy,m,d;

printf("\nInputyear-month:

");

scanf("%u-%u",&y,&m);

switch(m)

{case1:

case3:

case5:

case7:

case8:

case10:

case12:

d=31;break;

case2:

/*2月份要考虑是否闰年*/

d=(y%4==0&&y%100!

=0||y%400==0)?

29:

28;break;

case4:

case6:

case9:

case11:

d=30;break;

}

printf("Thereare%udaysthismonth.\n",d);

}

4.9编制程序,计算某个学生奖学金的等级,以三门课程成绩为评奖依据。

奖学金评奖标准如下:

符合下列条件之一者获一等奖:

(1)平均分大于95分者;

(2)有两门成绩是100分,且第三门课程成绩不低于80分者。

符合下列条件之一者获二等奖:

(1)平均分大于90分者;

(2)有一门成绩是100分,且其他课程成绩不低于75分者。

符合下列条件者获三等奖:

各门功课成绩不低于70分。

符合条件者就高不就低,只能获得高的那一项奖学金。

要求显示获奖的等级。

程序代码如下:

#includevoidmain()

{

ints1,s2,s3;floataver;

printf("\nInputthreescores:

");

scanf("%d,%d,%d

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1