这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 软件与操作系统 » 【一点一滴学嵌入式Linux】C语言基础之流程控制语句及编程小试

共24条 1/3 1 2 3 跳转至

【一点一滴学嵌入式Linux】C语言基础之流程控制语句及编程小试

专家
2013-07-10 20:00:50     打赏

流程控制语句

       1.swithch(‘a’) //注意,括号里面必须是整形数

                     {

                            case 1

                                          break;   //执行条件1以后,跳出其他条件不执行

                            case 2

                                                                      //如果不加break,执行条件2后,继续执行条件3

                            case 3

                           

                            defalut:

                                  

                     }

                    

       2.goto

              跳转到指定位置

              int main

              {

                     printf(“hello world\n”);

              again:

                     printf(“hello world\n”);

                     printf(“hello world\n”);

                     printf(“hello world\n”);

              goto again

                     printf(“hello world\n”);

              }

             

       3.whilecondition //如果括号内的条件为真,执行内容,否则不执行

              {

                     … …

              }

             

       4.do                     //先执行do的内容,再判断,至少执行一次

              {

             

              }while();

             

       5. /”的作用

(左值)/(右值)

              当左值和右值同时为整型是:此符号为取整

              当左值和右值其中一个不为整型时,此符号为除号

             

             

              练习:输出99乘法表

             

              1*1=1

              1*2=2 2*2=4

              1*3=3 2*3=6 3*3=9

             

作业:        

1.N的阶乘。

2.输入10个整数,统计出正数之和,负数之和,奇数之和,偶数之和

      

3.利用循环语句求1-1/3+1/5-1/7....+1/(2n-1)100项的和)

4.输入三角形三边的长,判断其是否能够组成三角形,并指出是什么三角形

5.任意输入一个整数,算出它的位数,列如12345,  5

6.输入三个整数a,b,c,然后交换它们的值,使得a存放b的值,b存放c的值,c存放a的值

7.输入 年,月,输出这个月有多少天?

8.编写一个程序,算出从197011号至今一共有多少天。

9.输入3个整数,按从大到小的顺序输出

10.输入任意一个正整数,将其反转并输出,例如345,输出543

 

c语言-流程控制语句及编程小试.rar

 

 




关键词: 嵌入式     Linux     语言基础     编程    

菜鸟
2013-07-10 20:04:22     打赏
2楼
沙发,终于来咯。自己这段也在自学LINUX下C编程。。

工程师
2013-07-10 20:59:07     打赏
3楼
巩固下基础!!!

菜鸟
2013-07-10 21:08:54     打赏
4楼
等了好久终于等到今天

工程师
2013-07-10 23:09:18     打赏
5楼
好久好久了,终于更新

高工
2013-07-10 23:57:59     打赏
6楼
基础很重要···········

专家
2013-07-11 08:35:18     打赏
7楼
基础很重要,从点滴做起。现在再看二叉树

院士
2013-07-11 08:47:43     打赏
8楼
演出又开始了

菜鸟
2013-07-11 09:11:14     打赏
9楼

来学习了


菜鸟
2013-07-22 13:39:05     打赏
10楼

mice.rar

 

 

1.求N的阶乘。
multineN.c

#include <stdio.h>

main()
{   unsigned long   N, i, mul;

    printf("请输入N:");
    scanf("%ld", &N);

    for(i=1, mul=1; i<=N; i++)
        mul*=i;

    printf("%ld 的阶乘为 %lu\n", N, mul);
}


2.输入10个整数,统计出正数之和,负数之和,奇数之和,偶数之和
CountInteger.c

#include <stdio.h>

main()
{   long i, j[10], pos, neg, odd, even;
    pos = 0;
    neg = 0;
    odd = 0;
    even = 0;

    printf("请输入十个整数:\n");
    for( i=0; i<10; i++)
    {   scanf("%ld", j+i);

        if(j[i]>0)
            pos+=j[i];
        else
            neg+=j[i];

        if(j[i]%2)
            odd+=j[i];
        else
            even+=j[i];
     }
    for( i=0; i<10; i++)
        printf("%ld ", j[i]);
    printf("\n\n");
    printf( "正数和:%ld\n"
            "负数和:%ld\n"
            "奇数和:%ld\n"
            "偶数和:%ld\n\n", pos, neg, odd, even);
}


3.利用循环语句求1-1/3+1/5-1/7....+1/(2n-1)(100项的和)
FractionSum.c

#include <stdio.h>

main()
{   double f=0;
    int n=1;

    while( n <= 100 )
    {   if ( n % 2 )
            f=f+((double)1/(n*2-1));
        else
            f=f-((double)1/(n*2-1));

        n=n+1;
    }

    printf("1-1/3+1/5...-1/197+1/199 = %10.10f\n", f );
}


4.输入三角形三边的长,判断其是否能够组成三角形,并指出是什么三角形
Triangle.c

#include <stdio.h>

main()
{   unsigned long A, B, C;

    printf("请输入三角形的三个边长:\n");
    scanf("%ld %ld %ld", &A, &B, &C );

    if( A>=(B+C) || B>=(A+C) || C>=(A+B) )
        printf("%ld %ld %ld 不能组成三角形\n", A, B, C);
    else if( A==B && B==C )
        printf("%ld %ld %ld 可以组成等边三角形\n", A, B, C);
    else if( A==B || B==C || A==C )
    {   if( A*A==(B*B+C*C) || B*B==(A*A+C*C) || C*C==(A*A+B*B) )
            printf("%ld %ld %ld 可以组成等腰直角三角形\n", A, B, C);
        else
            printf("%ld %ld %ld 可以组成等腰三角形\n", A, B, C);
       }
    else if( A*A==(B*B+C*C) || B*B==(A*A+C*C) || C*C==(A*A+B*B) )
        printf("%ld %ld %ld 可以组成直角三角形\n", A, B, C);
    else
        printf("%ld %ld %ld 可以组成三角形\n", A, B, C);
}


5.任意输入一个整数,算出它的位数,列如12345, 5位
IntegerLength.c

#include <stdio.h>

main()
{   long i, j=0, k;

    printf("请输入一个整数:\n");
    scanf( "%ld", &i );

    k = i;
    while(i)
    {   j++;
        i/=10;
    }
    if(!j)
        j++;

    printf("%ld 为%ld位整数\n", k, j);
}

6.输入三个整数a,b,c,然后交换它们的值,使得a存放b的值,b存放c的值,c存放a的值
IntegerMove.c

#include <stdio.h>

main()
{   int a, b, c, t;

    printf("请输入三个整数:");
    scanf("%d %d %d", &a, &b, &c);

    printf("交换前 a=%d, b=%d, c=%d\n", a, b, c);

    t=a;
    a=b, b=c, c=t;

    printf("交换后 a=%d, b=%d, c=%d\n", a, b, c);
}


7.输入 年,月,输出这个月有多少天?
DaysOfMonth.c

#include <stdio.h>

main()
{   int y, m, d;

    printf("请输入年月:");
    scanf("%d %d", &y, &m);
    switch(m)
    {   case 1:
        case 3:
        case 5:
        case 7:
        case 8:
        case 10:
        case 12:
        d = 31;
            break;
        case 4:
        case 6:
        case 9:
        case 11:
        d = 30;
            break;
        case 2:
            d = 28+(!(y%4) && y%100 || !(y%400));
            break;
        default:
            printf("请输入正确的月份!\n");
            exit();

    }
    printf("%04d年%d月有%d天\n", y, m, d);
}


8.编写一个程序,算出从1970年1月1号至今一共有多少天。
days.c

#include <time.h>
#include <stdio.h>

main()
{
    time_t t;
    time(&t);
    printf("1970年1月1日到现在一共有 %ld 天\n", t/60/60/24);
}


9.输入3个整数,按从大到小的顺序输出
IntegerSortOut.c

#include <stdio.h>

main()
{   int i[3];
    int j, k, l;

    printf("请输入3个整数: ");
    scanf("%d %d %d", i, i+1, i+2);

    for(j=0; j<2; j++)
    {   for(k=j+1; k<3; k++)
        l=i[j]>=i[k] ? j : k;
        if(l==j)
        continue;
        k=i[j];
        i[j]=i[l];
        i[l]=k;
    }
    printf("从大到小的顺序为: %d %d %d\n", i[0], i[1], i[2]);

}


10.输入任意一个正整数,将其反转并输出,例如345,输出543
IntegerReverse.c

#include <stdio.h>

main()
{   unsigned long   i, j, ri;

    printf("请输入一个整数:");
    scanf("%ld", &i);

    j=i;
    ri=0;
    while(j/10)
    {   ri=ri*10+j%10;
        j/=10;
    }
    ri=ri*10+j;


    printf("%ld 倒过来是 %d\n", i, ri);
}


共24条 1/3 1 2 3 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]