参考程序: main() {
int n,place; scanf(\if(n>99999999) else if(n>9999999) else if(n>999999) else if(n>99999) else if(n>9999) else if(n>999) else if(n>99) else if(n>9)
place=9; place=8; place=7; place=6; place=5; place=4; place=3; place=2;
else place=1; printf(\}
[题目 1018:数的排序] 由键盘输入三个整数 a、b、c,按从小到大的顺序输出这三个数。 [第一组自测数据] [键盘输入] 65,45,90↙ [正确输出] 45,65,90 参考程序: #include
int a,b,c,t;
if(a>b) {t=a;a=b;b=t;} if(a>c) {t=a;a=c;c=t;} if(b>c) {t=b;b=c;c=t;} printf(\ }
[第二组自测数据]
[键盘输入]
9,6,3↙ [正确输出] 3,6,9
scanf(\
[题目 1016:字符变换]
由键盘输入 5 个字符,将其中的大写字母变成小写,其它类型的字符不变,并按输入顺序逐个输出。 [第一组自测数据] [键盘输入] ApPLe↙ [正确输出] apple
char a; a=getchar();
if(a>='A' && a<='Z') a=a+32; putchar(a);
5
[第二组自测数据] [键盘输入] a+B=5↙ [正确输出] a+b=5
[提示]下面代码实现由键盘读入一个字符,并按题意处理后输出
现在,题目要求处理 5 个字符,怎么做呢?请自己思考?? 参考程序: #include
char a,b,c,d,e;
scanf(\if(a<='Z'&&a>='A') a=a+32; if(b<='Z'&&b>='A') b=b+32; if(c<='Z'&&c>='A') c=c+32; if(d<='Z'&&d>='A') d=d+32; if(e<='Z'&&e>='A') e=e+32; printf(\}
[题目 1019:数的整除]
由键盘输入 5 个整数,逐个判断它们能否被 27 整除,能的输出“YES”,不能的输出“NO”(注意, 输出时,一个判断结果占一行,5 个数的判断共占 5 行)。 [第一组自测数据] [键盘输入]
8 27 17577 325 54↙ [正确输出] NO YES YES NO YES
[提示]整除即除得余数为 0 参考程序: #include \main() {
int a,b,c,d,e;
[键盘输入] [正确输出] [第二组自测数据]
8 27 17577 325 54↙ NO
YES YES NO YES
scanf(\ if(a'==0) printf(\
if(b'==0) printf(\
if(c'==0) printf(\if(d'==0) printf(\if(e'==0) printf(\}
[题目 1020:正负奇偶判断]
由键盘输入非零整数 x,判断该数正负,正数输出 positive,负数输出 negative,接着判断该数的奇 偶性,奇数输出 odd,偶数输出 even。 [第一组自测数据] [键盘输入] -43↙ [正确输出]
negative odd
[第二组自测数据] [键盘输入]
6
98↙
[正确输出] 参考程序: #include \main() {
int n;
scanf(\
if(n<0)printf(\
else printf(\if(n%2==0)printf(\else printf(\}
positive even
[题目 1023:简单计算器]
下面程序是实现一个简单的运算器(保留两位小数点),如果由键盘输入 10+50,计算机可以输出结 输出 2.00,请在空处填上适当的代码,运行通过后并提交。 #include \void main() {
float a,b,c; char op; switch (op) {
case '+':
; _; _; __
;
scanf(\
果 60.00;如果输入 8*6,计算机输出 48.00;如果输入 20/4,计算机输出 5.00;如果输入 8-6,计算机
);
case '-':
case '*': case '/':
return ;
}
printf(\}
[第一组自测数据] [键盘输入] 45*2↙ [正确输出] 90
\
default: printf(\
[第二组自测数据] [键盘输入] 50.1-23↙ [正确输出] 27.10
7
参考程序: #include
float a,b,c; char op;
scanf(\switch(op)
{ case '+':c=a+b;break;
case '-':c=a-b;break; case '*':c=a*b;break; case '/':c=a/b;break; default:printf(\
break; }
printf(\}
8
实验 5 循环结构程序设计(一) 一、实验目的
(1)熟悉掌握用 while 语句、do-while 语句和 for 语句实现循环的方法。 (2)掌握在程序设计中用循环实现一些常用算法(如穷举、迭代、递推等)。
二、实验内容
[题目 1024:计算阶乘]
输入正整数 n,计算 n!,结果用长整型数表示(注 n!=1*2*3*...*n) [第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入]
5↙ 8↙
[正确输出] [正确输出] 120 40320
参考程序:
#include
long i,n=1,a; scanf(\ for(i=1;i<=a;i++) n=n*i;
printf(\}
[题目 1025:计算数列和]
有数列 1,3,5,7,9,11,……
现要求由键盘输入 n,计算输出该数列的前 n 项和。 [第一组自测数据] [第二组自测数据] [键盘输入] [键盘输入] 2↙ 5↙ [正确输出] [正确输出] 4
25
9