{
int i, x, y=1;
scanf(\ for(i=2; i<=x/2; i++)
if ( ) { y=0; break; } printf(\ }
(5)输入 N个实数,输出其中的最大值、最小值。
#include
float no1,nmax,nmin; scanf(\ nmax=no1; for(i=2;i<=n;i++) {
scanf(\ );
if(no1>nmax) nmax=no1; }
printf(\ MIN=%f\\n\ }
(6)输入若干个字符,分别统计数字字符的个数、英文字母的个数,当输入换行符时输出统计结果,运行结束。 #include
char ch;
while(( )!='\\n') {
if(ch>='0'&&ch<='9') s1++;
if(ch>='a'&&ch<='z' || ) s2++; } }
3. 阅读下列程序,写出程序运行的输出结果 (1)
void main( ) { int y=9;
for( ;y>0; y--)
if(y%3==0) { printf(\ continue;} }
13
(2) main() {
int k,n,m;
n=10;m=1;k=1; while (k++<=n) m*=2;
printf(\ }
(3)
void main ( ) {
int i=5; do {
switch (i%2) {
case 4: i--; break; case 6: i--; continue; }
i-- ; i-- ;
printf(\ \ } while(i>0); }
(4)
#include
int k=0; char c='A'; do {
switch (c++) {
case 'A': k++; break; case 'B': k--;
case 'C': k+=2; break; case 'D': k=k%2; break; case 'E': k=k*10; break; default: k=k/3; } k++; }
14
while(c<'G');
printf(\ }
(5)输入数据:2 4
#include
int s=1,t=1,a,n;
scanf(\ for(int i=1;i t=t*10+1; s=s+t; } s*=a; printf(\ } 4. 程序改错 (1) 以下程序是显示[200,300]所有能被 7 整除的数,每行显示 5 个数,此程序有 5处错。 main() { int i,n=0; /*n用来记录每行已打印数的个数*/ while(i<300) { if(i%7==0) break; printf(\ n=n+1; if(n=5)/*满5个换行*/ { printf(\ n=0; } } } (2) 以下程序是求 1!+2!+3!+4!+5!+6!+7!的值,其中有 3 处错误。 main() { int i,s,t=0; for(i=1;i<=7;i++) { 15 s=0; t=t*i; s=s+t; } printf(\ } 5. 程序设计题 (1)求 10!的值。 (2)求 1/2-2/3+3/4-4/5-5/6+?+79/80 的值。 (3)编程序按下列公式计算 e 的值(精度为 1e-6): e=1+1/1!+1/2!+1/3!+…+1/n! (4)若一个3 位整数的各位数字的立方之和等于这个整数,称之为“水仙花数”。例如:153 是水仙花数,因为153=13+53+33,求1000以内所有的水仙花数。 (5) 求数列的和。设数列的首项为 81,以后各项为前一项的平方根 (如 81,9,3,1.732,?),求前 20 项和。 答案1. 单项选择 (1)B (2)A (3)B (4)D (5)C(6)C (7)A (8)D (9)A (10)A 2. 填空 (1) 等价 (2) switch,for (3) 提前结束本次循环进行下一次循环是否进行的判断 (4) x%i==0 (5) &no1 (6) ch=getchar() ch>=?A?&&ch<=?Z? 3. 输出程序结果 (1) 852 (2) 1024 (3) i=3 i=1 i=-1 (4) k=8 (5) SUM=2468 4. 程序改错 (1) main() { int i=200,n=0; /*n用来记录每行已打印数的个数*/ while(i<=300) {if(i%7==0) { //break; printf(\ n=n+1; if(n==5)/*满5个换行*/ { printf(\ n=0; } } i++; } } (2) 16
相关推荐: