《C程序设计教程书后第一章、第二章习题详解.doc》由会员分享,可在线阅读,更多相关《C程序设计教程书后第一章、第二章习题详解.doc(7页珍藏版)》请在金锄头文库上搜索。
1、C程序设计教程书后第一章习题详解1.求出10个数中的最大数:/*用一个数组来存放10个数*/#includemain()int a10,i,max;printf(Please enter 10 numbers:n);for(i=0;i10;i+) scanf(%d,a+i);/*&ai=a+i*/max=a0;for(i=1;imax) max=ai;printf(The max number is %d,max);getch();/*用一个变量来存放10个数*/#includemain()int i,m,max;printf(Please enter 10 numbers:n);scanf(
2、%d,&m);max=m;for(i=2;imax) max=m; printf(The max number is %d,max);getch();2.求两个正整数的最大公约数:/*逐个尝试法求两个正整数的最大公约数*/#includemain()int m,n,i,t;printf(Please enter two positive integral numbers:n);scanf(%d %d,&m,&n);for(i=1;i=m&i=n;i+) if(m%i=0&n%i=0) t=i;printf(The highest common divissor of the two numbe
3、rs is %d,t);getch();/*辗转相除法求两个正整数的最大公约数*/#includemain()int m,n,r;printf(Please enter two positive integral numbers:n);scanf(%d %d,&m,&n);r=m%n;while(r!=0)m=n; n=r; r=m%n;printf(The highest common divissor of the two numbers is %d,n);getch();/*辗转相减法求两个正整数的最大公约数*/#includemain()int m,n,r,t;printf(Pleas
4、e enter two positive integral numbers:n);scanf(%d %d,&m,&n);if(mn) t=m; m=n; n=t; r=m-n;while(r!=0)m=n; n=r; if(mn) t=m; m=n; n=t; r=m-n;printf(The highest common divissor of the two numbers is %d,n);getch();3.韩信点兵:#includemain()int m,n,i;printf(Please enter the poseble range (m to n):n);scanf(%d %d
5、,&m,&n);printf(The posible number is:n);for(i=m;i=n;i+) if(i%3=1&i%5=2&i%7=4&i%13=6) printf(%dn,i);getch();C程序设计教程书后第二章习题详解3.从键盘上输入两个变量的值,交换这两个变量的值后输出:/*交换时引进变量t*/#includemain()int a,b,t;printf(Please enter two numbers:n);scanf(%d %d,&a,&b);t=a;a=b;b=t;printf(The changed two numbers are:n%d %d,a,b);
6、getch();/*交换时不引进变量*/#includemain()int a,b;printf(Please enter two numbers:n);scanf(%d %d,&a,&b);a=b-a;b=b-a;a=a+b;printf(The changed two numbers are:n%d %d,a,b);getch();/*交换时用位运算*/#includemain()int a,b;printf(Please enter two numbers:n);scanf(%d %d,&a,&b);a=ab;b=ba;a=ab;printf(The changed two numbers are:n%d %d,a,b);getch();4.将从键盘上输入的任一字符分别以字符和十进制数两种方式输出:#includemain()char c;printf(Please enter any char:n);c=getchar();printf(The form of char is %cnThe form of digit is %d,c,c);getch();