这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界» 论坛首页» 嵌入式开发» 软件与操作系统» 【一点一滴学嵌入式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

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

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

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

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

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

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

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
#include

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


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

#include

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

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 跳转至

回复

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