全国计算机等级考试教程:二级C语言程序设计
上QQ阅读APP看书,第一时间看更新

1.4 C程序的上机步骤

在了解了C语言的初步知识后,读者最好上机运行一个简单的C程序,以建立对C程序的初步认识。下面就让我们一起来编写一个简单的C语言程序。

【例1-2】判断一个数的个位数字和百位数字之和是否等于其十位上的数字,“是”则返回“yes!”,“否”则返回“no!”。

需求分析。根据题目的要求,总结出相应的算法:分别找出个位、十位和百位上所对应的数值,这也是本题的关键。

对个位上的数与百位上的数进行求和,并用求和结果与十位上的数进行比较。若比较结果相等,则返回“yes!”;若比较结果不相等,则返回“no!”。

这里介绍一种求一个百位数不同位上数值的方法。

个位数:用该数除以10,取计算结果中的余数。

十位数:用该数除以10,对计算结果取整,再用取整后的数除以10,取计算结果中的余数。

百位数:用该数除以100,并对计算结果取整。

如238,结合上面的方法,我们可以得到以下结果。

个位数:238除以10,结果为23余8,故为8。

十位数:238除以10,取整后的结果为23,再用23除以10,结果为2余3,故为3。

百位数:238除以100,取整后的结果为2。

编写代码。通过上一节介绍的方法打开VC6.0集成开发环境,根据题干的要求在源程序编辑窗口中编写如下的程序段。

程序代码

#include <stdio.h>

char *fun(int n)/*根据题目的要求计算,并返回固定值*/

{ int g,s,b;/*定义3个整型变量,保存各位上的数*/

 g=n%10;/*求得个位上的数值*/

 s=n/10%10;/*求得十位上的数值*/

 b=n/100;/*求得百位上的数值*/

 if((g+b)==s)

  return "yes!";/*若百位上的数加个位上的数等于十位上的数,返回“yes!”*/

 else

  return "no!";/*若百位上的数加个位上的数不等于十位上的数,返回“no!”*/

main( )

{ int num1=365,num2=495;

/*给出需要判断的两个数*/

 printf("\%s,%s\n",fun(num1),fun

(num2));/*输出计算结果*/

调试并运行。对于一个编好的 C程序,如何上机运行呢?实际上,主要包括以下几个步骤:上机输入与编辑源程序→对源程序进行编译→与库函数进行连接→运行可执行的目标程序等,以上过程如图1-19所示。

图1-19 上机编程步骤

其中,实线表示操作流程,虚线表示文件的输入和输出。

保存程序结果。

请思考

如何求得整数1489各数位上的数值?