详细内容如下:
码部分如下:
1.看代码求值题
//下面代码的执行结果为
//#include<stdio.h> //int main() //{ // int i = 0; // for (i = 0; i < 10; i++) // { // if (i = 5)//赋值 // { // printf("%d ", i);//5 5 5 5 5 .... // } // } // return 0; //} //#include<stdio.h> //int main() //{ // printf("%d\n", func(1)); // //结果为0,因为没有continue和break,只会继续执行 // return 0; //} //int func(int a) //{ // int b; // switch (a) // { // case1:b = 30; // case2:b = 20; // case3:b = 16; // default:b = 0; // } // return b;//结果为0,因为没有continue和break,只会继续执行 //} //#include<stdio.h> //int main() //{ // int x = 3; // int y = 3; // switch (x % 2) // { // case 1: // switch (y) // { // case 0: // printf("first"); // case 1: // printf("second"); // default: // printf("hello"); // // } // case 2: // printf("third"); // } // return 0; //}//打印结果为hellothird,没有continue和break,按顺序跳
2.写三个整数代码从大到小输出
//#include<stdio.h> //int main() //{ // int a = 0; // int b = 0; // int c = 0; // scanf("%d%d%d", &a, &b, &c);//输入a,b,c,scanf要跟& // //排序,使之a>b>c // if (a < b) // { // int tmp = 0; // tmp = a; // a=b; // b= tmp; // } // if (a < c) // { // int tmp = 0; // tmp = a; // a = c; // c = tmp; // } // if (b < c) // { // int tmp = 0; // tmp = a; // a = c; // c = tmp; // } // printf("%d %d %d\n", a, b, c);//打印结果a b c,默认a>b>c // return 0; //}
3.//打印1~100中所有3的倍数
//#include<stdio.h> //int main() //{ // int i = 0; // for (i = 3; i < 100; i += 3) // { // printf("%d ", i); // } // // return 0; //}
4./给定两个数,求最大公约数
//思路1:设两个数为m和n,求出两个数的较小数a,
//将较小数逐个递减a--,直到较小数达到m%a==0&&n%a==0
#include<stdio.h> int main() { int m = 0; int n = 0; int a = 0; scanf("%d%d", &m, &n); if (m > n) { a = n; } else { a = m; } while (1) { if (m % a == 0 && n % a == 0) { printf("最小公约数为:%d\n", a); break; } else n--; } return 0; }
//给定两个数,求最大公约数
//思路2:辗转相除法
//输入两个数m和n,用m%n=a,如果a==0;则为最大公约数,
//否则不是,再次相除(多次,用while循环)
#include<stdio.h> int main() { int m = 0; int n = 0; int a = 0; scanf("%d%d", &m, &n); while (a = m % n) { m = n; n = a; } printf("%最大公约数为: %d\n", a); return 0; }