论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > C语言程序设计教程
Tag:新手,函数,指针,数据类型,对象,Turbo,入门,运算符,数组,结构,二级,,tc,游戏,试题,问答,编译,视频教程

C程序设计入门(实例讲解)-01

文章类别:C语言程序设计 | 发表日期:2008-9-24 14:44:37

                                       一、程序设计初步


(一)题1.读入两个整数,输出它们的积
   
(一)題2.从两个浮点数中找出大数 
(一)题3.从键盘输入三个整数,按从大到小的顺序输出它们的值。                                  



(一)题1.读入两个整数,输出它们的积
解:
    设两个整数分别为x,y,积为m;程序首先调用printf()函数,输出提示用户输入数据的提示信息,然后调用scanf()函数,为变量x和y输入值;接着求x与y的积m;最后输出m。
用算法描述如下:
    读入两个整数,输出它们的积
    {
        输出提示用户输入数据的信息;
        输入变量x和y的值;
        m=x*y;
        输出m;
    }

程序代码如下:
#include<stdio.h>
{
    int x,y,m;                    /*定认变量x,y,m*/
    printf("Input x and y\n");    /*提示用户输入数据*/    
    scanf("%d%d",&x,&y);          /*输入x和y的值*/
    m=x*y;                        /*求m=x*y*/
    printf("%d*%d=%d\n",x,y,m);   /*输出结果x*y=m*/
}
程序执行结果如下:
Input x and y
21  30
x*y=630
---------------------------------------------------

(一)題2.从两个浮点数中找出大数
解:
    设两个派出点数分别为x,y,它们中的大数为c;程序首先调用printf()函数,输出提示用户输入数据的提示信息,然后调用scanf()函数,为就是x和y输入值;接着求x与y的大值并存入变量c;最后输出c。
算法描述如下:
从两个浮点数中求大数
{
    输出提示用户回值为据的信息;
    输入变量x和y的值;
    if(x>y)c=x;
    else    c=y;
    输出c;
}

程序代码如下:
/*输入两个浮点数,输出它们中的大数*/
#include<stdio.h>
void main()
{
    float x,y,c;                   /*变量定义*/
    printf("Input x and y.\n");    /*提示用户输入数据*/
    scanf("%f%f",&x,&y);
    if(x>y) c=x;                   /*计算c=max(x,y)*/
    else    c=y;        /*也可写成c=x>y?x:y; 或写成 x>y?c=x:c=y;*/
    printf("MAX(%f, %f)=%f\n",x,y,c);
}
    如把求两个浮点数的大数的代码编写成函数max(),函数max(a,b)的作用是返回参数a,b中的较大值。
改写后的程序如下:
/*输入两个浮点数,输出它们中的大数*/
#include<stdio.h>
float max(float a,float b)
{
    if(a>b)return a;
    else return b;        /*或写成return a>b?a:b;*/
}
void main()
{
    float x,y,c;        /*变量定义*/
    printf("Input x and y.\n");
    scanf("%f%f",&x,&y);
    c=max(x,y);        /*计算c=max(x,y)*/
    printf("MAX(%.2f,%.2f)=%.2f\n",x,y,c);
}
程序执行结果如下:
Input x and y.
2.4  3.8
MAX(2.40,3.80)=3.80
  
说明:
    主函数main()中调用max()函数的表达式max(x,y),将实参xz和y的值分别传送给max()函数中的参数a和b(实参的值传送给形参是函数调用机制自动完成的)。经执行max()函数后,返回x和y中的大值。

-------------------------------------------------

(一)题3.从键盘输入三个整数,按从大到小的顺序输出它们的值。
解:
    设存储三个整数的变量分别为x,y和z。程序为x,y和z输入值后,调整x,y和z的值,使x,y和z的值满足关系x>=y>=z,然后依次输出x,y,z的值,即能完成问题的要求。
算法如下:
从键盘输入三个整数,按从大到小的顺序输它们的值
{
    为变量x,y,z输入值;
    主,调整x,y,z的值,使x,y,z的值满足关系 x>=y>=z;
    依次输出变量x,y,z的值;
}
    为调整x,y,z的值,使x,y,z的值满足关系x>=y>=z,可先调整x与y,使大的值存于x,另一个存于y。再调整x与z,使大的值存于x,另一个存于z。经上述两次调整后,使x的值变为最大。接着调整y和z,将使y变为次最大,z变为最小。
程序代码如下:
#include<stdio.h>
void main()
{
    int x,y,z,t;
    printf("Enter x y z\n");
    scanf("%d%d%d",&x,&y,&z);
    if(x<y)                    /*调整x与y,使x>=y*/
    {
        t=x;
        x=y;
        y=t;
    }
    if(x<z)                    /*调整x与z,使x>=z*/        
    {
        t=x;
        x=z;
        z=t;
    }
    if(y<z)                    /*调整y与z,使y>=z*/
    {
        t=y;
        y=z;
        z=t;
    }
    printf("The maximum is %d,the middle is %d,the minimum is %d.\n",x,y,z);
}
程序执行结果如下:
Enter x y z
12 20 33
The maximum is 33,the middle is 20,the minimum is 12

视频教程列表
文章教程搜索
 
C语言程序设计推荐教程
C语言程序设计热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058