单片机C语言作业及上机习题及答案 - 图文 下载本文

.

(5) 给出一百分制成绩,要求输出成绩等级’A’,’B’,’C’,’D’,’E’。90分以上

为’A’,80-89分为’B’,70-79分为’C’,60-69分为’D’,60分以下为’E’。 (6) 从键盘输入三个数,判断这三个数是否能构成三角形,如果是,输出“the three numbers could be the sides of a triangle”,如果不是输出“the three numbers could’t the sides of a triangle”;并判断这个三角形是不是直角三角形,如果是,输出“the numbers could be the sides of a right angle triangle”,如果不是,输出“the numbers could’t the sides of a right angle triangle”。 第6次课 循环

1. 写一个程序让用户输入一个1~12之间的数,程序将会输出这个数的乘法表。 使用一个循环进行计算并输出一行,屏幕输出应该如下所示:

Enter a number between 1 and 12: 5 5 times multiplication table 1 x 5 = 5 2 x 5 = 10 3 x 5 = 15 4 x 5 = 20 5 x 5 = 25 6 x 5 = 30 7 x 5 = 35 8 x 5 = 40 9 x 5 = 45 10 x 5 = 50 11 x 5 = 55 12 x 5 = 60

2. 添加循环语句,计算并输出1~20之间的偶数的和。 #include main() { int i, result; /* 添加语句 */ return(0); } ;. .

3. Break 语句的使用

为程序添加语句,使得输入的数据在1~10之间时,退出循环,否则输出“the number is out of range”

#include main() { int num; while (1) { printf(\scanf(\/* if ( <-- Complete here) */ } printf(\return(0); } 任务1:添加程序,使得其在从注释A开始到注释C之间循环,并提示用户输入“0”退出循环;任务2:添加程序,使得注释B到注释C之间的语句在一个循环之内,从而判断从num开始到1之间所有的素数。

#include main() { int i, num; char isPrime; printf(\printf(\/* A */ scanf(\isPrime = 1; /* B */ for (i = num - 1; i > 1; i--) { if (num % i == 0) { isPrime = 0; printf(\prime\\n\i); break; } } ;. if (isPrime) printf(\return(0); .

5.求爱因斯坦数学题。有一条长阶,若每步跨2阶,则最后剩余1阶;若每步跨3阶,则最后剩2阶;若每步跨5阶,则最后剩4阶;若每步跨6阶,则最后剩5阶;若每步跨7步,最后正好一阶不剩。

6.计算斐波那契分数序列前n项之和(n是某个常数).( 2/1,3/2,5/3,8/5,13/8,21/13,...... 前一项的分子作为后一项的分母。前一项的分子、分母之和作为后一项的分子。)。 7.问答题

(1) 下面循环错在哪里?

for (i = 1; i > 5; i++) { x /=2; } (2)下面循环错在哪里?

for (i = 10; i > 2; i++) { x *=2; } (3) 这个for循环的输出结果是多少?

for (i = 3; i > -2; i--) { printf(\} (4) 这个while循环的输出结果是多少?

i = 0;

while (i < 5) { i++;

printf(\} (5)while循环错在哪里?

i = 0;

while (i = 10) { i++; x *= 2; }

(6) 完成下面的代码使之可以输出你的名字28次.

for (i = 3; i > ; i--) { printf(\

综合练习一:打印ASC码表

在这个项目中,我们想去打印所有的ASCII码字符及相关联的十进制和二进制值。 关于ASCII

ASCII表示美国信息交换标准码,正如它的名字所暗示的, 它是由美国的一个代码指定的

;.

.

数字每个信息存储或传输计算机来完成。这里是关于ASCII码的重点: ??每个键盘字符都可以映射到数字从32~127;

??数字从0 到31用于特殊字符,如制表符、铃、换行符等;

??扩展ASCII范围从128 至255,含有专门128 个字符,如边框线等;

??扩展的ASCII字符是非标准化,可能会从一个操作系统类型到另一个(如PC和MAC 与Linux);

??标准的 ASCII是标准化的,同样都可以跨越不同的操作系统类型。

第一步写出程序的基本框架

任何C程序都具有以下的基本框架

/* * Title : Print Standard and Extended ASCII chart * Source : print_ascii.c * Author : Some Student * Version : 1.0 */ #include main() { } 第二步添加一个具有一个变量的循环语句

我们想去打印所有的标准和扩展ASCII码的值,这就意味着循环从0至255

;. /* * Title : Print Standard and Extended ASCII chart * Source : print_ascii.c * Author : NJCIT * Version : 1.0 */ #include main() { int i; for (i=1; i<=255; i++) { } return(0); }