您的位置:首页 > 娱乐 > 八卦 > 十一、作业

十一、作业

2024/10/5 18:05:15 来源:https://blog.csdn.net/weixin_58543820/article/details/140248677  浏览:    关键词:十一、作业
1.从大到小输出

写代码将三个整数数按从大到小输出。

void Swap(int* px, int* py)
{int tmp = *px;*px = *py;*py = tmp;}
int main()
{int a = 0;int b = 0;int c = 0;scanf("%d %d %d", &a, &b, &c);int n = 0;if (a<b){Swap(&a, &b);}if (a < c){Swap(&a, &c);}if (b < c){Swap(&b, &c);}printf("%d %d %d\n", a, b, c);return 0;
}
2.打印3的倍数的数

写一个代码打印1-100之间所有3的倍数的数字

int main()
{int i = 0;for ( i = 1; i <=100; i++){if (i%3==0){printf("%d ", i);}}return 0;
}
int main()
{int i = 0;for (i = 3; i <= 100; i+=3){printf("%d ", i);}return 0;
}
3.最大公约数

给定两个数,求这两个数的最大公约数

//暴力求解法
int main()
{int a = 0;int b = 0;scanf("%d %d", &a, &b);int min = (a < b) ? a : b;int m = min;while (1){if (a%m==0 && b%m==0){break;}m--;}printf("%d\n", m);return 0;
}

//辗转相除法
int main()
{int a = 0;int b = 0;int c = 0;scanf("%d %d", &a, &b);while (c=a%b){a = b;b = c;}printf("%d\n", b);return 0;
}

最小公倍数=a*b/最大公约数。

4.打印闰年

打印1000年到2000年之间的闰年

int main()
{int i = 0;for ( i = 1000; i <=2000; i++){if ((i%4==0 && i%100 !=0) || (i%400==0)){printf("%d ", i);}}return 0;
}
5.二分查找

编写代码在一个整形有序数组中查找具体的某个数

要求:找到了就打印数字所在的下标,找不到则输出:找不到。

//二分查找
//
//编写代码在一个整形有序数组中查找具体的某个数
//
//要求:找到了就打印数字所在的下标,找不到则输出:找不到。
int main()
{int arr[10] = {1,2,3,4,5,6,7,8,9,10};int k = 7;int sz = sizeof(arr) / sizeof(arr[0]);int left =0;int right = sz-1;while (right>=left){int mid = (right - left) / 2 + left;if (arr[mid]<k){left = mid + 1;}else if (arr[mid] > k){right = mid - 1;}else{printf("找到了下标为:%d\n", mid);break;}}if (right<left){printf("找不到");}return 0;
}
6.数9的个数

编写程序数一下 1到 100 的所有整数中出现多少个数字9

int main()
{int i = 0;int count = 0;//计数for ( i = 1; i <=100; i++){//判断个位是不是9if (i % 10 == 9)count++;//判断十位是不是9//因为有99两个9需要判断两次,不能用else ifif (i / 10 == 9)count++;}printf("%d\n", count);return 0;
}
7.分数求和

计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值,打印出结果

int main()
{int i = 0;double sum = 0;int flag = 1;for ( i = 1; i <=100; i++){sum=sum+flag*(1.0 / i);flag = -flag;}printf("%lf\n", sum);return 0;
}
8.求最大值

求10 个整数中最大值

int main()
{int arr[10] = {1,2,3,4,5,6,7,8,9,10};int i = 0;int max = arr[0];for ( i = 1; i <10; i++){if (arr[i]>max)max = arr[i];}printf("最大的数值是:%d\n", max);return 0;
}

int main()
{int arr[10] = {0};int i = 0;for ( i = 0; i < 10; i++){scanf("%d", &arr[i]);}int max = arr[0];for ( i = 1; i <10; i++){if (arr[i]>max)max = arr[i];}printf("最大的数值是:%d\n", max);return 0;
}
9.乘法口诀表

在屏幕上输出9*9乘法口诀表

%2d - 右对齐

%-2d - 左对齐

/t - tab

//乘法口诀表
//
//在屏幕上输出9 * 9乘法口诀表int main()
{int i = 0;//打印9行for ( i = 1; i <=9; i++){//打印一行int j = 0;for ( j = 1; j<=i; j++){printf("%d*%d=%-2d ", i, j, i * j);}printf("\n");	}return 0;
}
10.乘法口诀表(行列自己指定)
//乘法口诀表
//
//行列自己指定void print_table(int n)
{int i = 0;//打印9行for ( i = 1; i <=n; i++){//打印一行int j = 0;for ( j = 1; j<=i; j++){printf("%d*%d=%-2d ", i, j, i * j);}printf("\n");	}
}
int main()
{int n = 0;scanf("%d", &n);print_table(n);return 0;
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com