《第5章 循环结构程序设计习题解答.docx》由会员分享,可在线阅读,更多相关《第5章 循环结构程序设计习题解答.docx(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第5章 循环结构程序设计习题解答 第5章循环结构程序设计习题解答 1输入n个整数,求这n个数之中的偶数平均值,并输出。 #include void main() int n,i,x,k=0,s=0; printf(Input a number(n):); scanf(%d,&n); printf(Input %d numbers:,n); for(i=0;i=0&c=A&c=a&c0); printf(=%dn,s); 4输入一个字符串,将其中的大写字母改为小写字母,小写字母改为大写字母,然后输出。#include void main() char c; printf(Input a stri
2、ng character(* end):); do scanf(%c,&c); if(c=A&c=a&c=A&c=a&c3):); scanf(%d,&n); for(i=1;i0;j-) putchar( ); /输出空格 for(j=1;j3):); scanf(%d,&n); for(i=1;i0;j-) putchar( ); /输出空格 for(j=1;j0) ps+=a; n+; else if(a1.0e-6); printf(e=%1.6lfn,e); 15用二分法求方程2x 3-4x 2+3x=0 在(-10,10)附近的根(二分法:先找到a 、b ,使f(a)、 f(b)异
3、号,说明在区间(a,b )内一定有零点,然后求f(a+b)/2)0,开口向上,没有其它的零点,所以题目是没有其它的解的。 实验5 循环结构程序设计 6程序填空。 求出100以内的整数中最大的可被13整除的数是哪一个数。 #include int main() int i; printf(%dn,i); return 0; 以下程序用“辗转相除法”来求两个正整数的最大公约数,请填空。 #include main() int m,n,r; do printf(Please input tow positive integert:); scanf(%d %d,&m,&n); while(m=0|n=
4、0); do printf(The greatest command factor is:%dn,m); return 0; 以下程序打印如下图案,程序运行后输入4给变量n,请填空。 #include #define S void main() int i,j,n; printf(Enter n:); for(i=1;i=n;i+) /控制输出前年n行 for(j=1;j=10;j+)putchar(S); 每行的启始空格越来越少 每行的*越来越多 for(i=1;i=n-1;i+) /控制输出后n-1行 for(j=1;j=10;j+)putchar(S); 每行的启始空格越来越多 每行的*
5、越来越少 注:各星号之间带空格: 程序如下: #include #define S void main() int i,j,n; printf(Enter n:); scanf(%d,&n); for(i=1;i=n;i+) /控制输出前n行 for(j=1;j=10;j+)putchar(S); for(j=1;j=n-i;j+)putchar(S);putchar(S);/每行的启始空格越来越少 for(j=1;ji*2;j+)putchar(*);putchar( );/每行的*越来越多 putchar(n); for(i=1;i=n-1;i+) /控制输出后n-1行 for(j=1;j
6、=10;j+)putchar(S); for(j=1;j=i;j+)putchar(S);putchar(S);/每行的启始空格越来越多 for(j=1;j(n-i)*2;j+)putchar(*);putchar( );/每行的*越来越少 putchar(n); 7编程。 求: +100 12 100 1 k k #include void main() int i,k; long s,s1=0,s2=0; printf(Input k:); scanf(%d,&k); for(i=1;i=100;i+) s1+=k; for(i=1;i=200;i+) s2+=k*k; s=s1+s2;
7、printf(s=%dn,s); 从键盘输入一个整数,判断它是否为素数。#include #include main() int m,i,k; short prime; printf(Input a integer:); scanf(%d,&m); prime=1; k=(int)(sqrt(m); for(i=2;i=k;i+) if(m%i=0) prime=0; break; if(prime) printf(%d is prime.n,m); else printf(%d is no prime.n,m); return 0; 求3150之间的所有素数之和。 #include #include main() int i,k,j,s=0,n=0; short prime; for(i=3;i=150;i+=2)