C语言程序(1)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
*1.题目:从键盘上输入3个不同的数,将他们从大到小排序。请将* 下列程序填写完整。
* (提示:利用三个if…endif语句实现,其中交换时用到的* 临时内存变量为t)。
* 请按照题目要求,在下面编写程序代码。
*------------------------------------------------------- set talk off
input "请输入第一个数:" to a
input "请输入第二个数:" to b
input "请输入第三个数:" to c
**********Program**********
********** End **********
?a,b,c
Return
Set talk on
答案:if a
t=a
a=b
b=t
endif
if a t=a a=c c=t endif if b t=b b=c c=t endif 2.题目:求[1,100]内所有能被3或被5整除的数以及个数。 * (提示:利用do while语句实现)。 * 请按照题目要求,在下面编写程序代码。 *------------------------------------------------------- Set talk off clear n=0 i=1 **********Program********** ********** End ********** ? "满足条件的数的个数为:",n Set talk on Return 答案:Do while i<=100 IF MOD(i,3)=0 .OR. MOD(i,5)=0 **int(i/3) = i/3 .OR. int(i/5) = i/5 ?? i n=n+1 Endif i=i+1 enddo 3.题目:从键盘上输入一个数n,计算n的阶乘。 * 请按照题目要求,在下面编写程序代码。 *------------------------------------------------------- Set talk off Input "请输入n的值:" to N S=1 **********Program********** ********** End ********** ?S Set talk on Return 答案:For I=1 to N S=S*I Endfor 4.题目:求自然数5的阶乘。请将下列程序填写完整。 * (用FOR循环语句) * 请按照题目要求,在下面编写程序代码。 *------------------------------------------------------- SET TALK OFF S = 1 M = 1 **********Program********** ********** End ********** ? S SET TALK ON RETURN 答案:FOR M=1 TO 5 S=S*M ENDFOR 5.题目:求连乘数1*2*3*4*……,当积大于720时退出程序。 * (提示:利用do while语句实现)。 * 请按照题目要求,在下面编写程序代码。 *------------------------------------------------------- Set talk off s=1 && S表示积 I=1 **********Program********** ********* End ********** Set talk on return 答案:Do while .T. s=s*i IF S>720 EXIT ENDIF I=I+1 Enddo ? "s=",s 6.题目:从键盘上任意输入2个数,然后将这2个数从大到小显示输* 出。(注:中间变量用t,不允许使用max()函数和min()* 函数)。 * 请按照题目要求,在下面编写程序代码。 *------------------------------------------------------- INPUT "输入第1个数:" TO n1 INPUT "输入第2个数:" TO n2 **********Program********** ********** End ********** ENDIF ?n1,n2 RETURN 答案:IF n1 t=n1 n1=n2 n2=t 7.求最大值题目:从键盘上输入5个数,求最大的一个数。 * 请按照题目要求,在下面编写程序代码。 *------------------------------------------------------- Set talk off Input "请输入第一个数:" to x **********Program********** ********** End ********** ?x Set talk on return 答案:For i=1 to 4 Input "请输入第"+str(i+1)+"个数:"to y If y>x x=y endif endfor 8.题目:为自来水公司计算水费: 如果用户用水量不超过5吨,每吨 * 0.8元;超过5吨时, 超出部分每吨1.4元。请编写完整程序。* (要求用input语句接受用水量的输入,最后的水费用变量x * 输出。)完成下列程序填空。 * 请按照题目要求,在下面编写程序代码。 *------------------------------------------------------- SET TALK OFF INPUT "请输入用水量:" TO W **********Program********** ********** End ********** RETURN 答案:IF W<5 X=0.8*W ELSE X= 0.8*5 + (W-5) * 1.4 ENDIF ? "应交水费为:"+STR(x)+"元" SET TALK ON