东北石油大学王跃萍辗转相除法求最大公约数C语言
时间: 2023-11-26 21:48:51 浏览: 68
以下是王跃萍辗转相除法求最大公约数的C语言代码:
```c
#include <stdio.h>
int main() {
int a = 0;
int b = 0;
int r = 0;
printf("请输入a,b的值:");
scanf("%d%d", &a, &b);
while (a % b) {
r = a % b;
a = b;
b = r;
}
printf("两个数的最大公约数是:%d\n", b);
return 0;
}
```
相关问题
求最大数和它的下标, 并与a[0]对换位置 分数 10 作者 王跃萍 单位 东北石油大学 有一数组内存放10个整数,要求找出最大数和它的下标, 然后把它和数组中第0个元素对换位置。 输入格式: 在一行中输入10个整数,数据之间只能用1个空格间隔。 输出格式: 在一行中直接输出变化后的数组,每个数输出占4列列宽。在下一行中按照“max=最大值,位置=最大值下标”的顺序输出最大数和它的下标。 输入样例: 1 2 3 4 5 6 7 8 9 10 输出样例: 10 2 3 4 5 6 7 8 9 1 max=10,weizhi=9,写符合条件的C语言程序
```c
#include <stdio.h>
int main() {
int a[10], maxIndex = 0;
for (int i = 0; i < 10; i++) {
scanf("%d", &a[i]);
if (a[i] > a[maxIndex]) { // 找出最大数的下标
maxIndex = i;
}
}
printf("%4d%4d%4d%4d%4d%4d%4d%4d%4d%4d\n", a[maxIndex], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]);
printf("max=%d,weizhi=%d", a[maxIndex], maxIndex);
int temp = a[maxIndex]; // 将最大数和第一个数交换位置
a[maxIndex] = a[0];
a[0] = temp;
printf("\n%4d%4d%4d%4d%4d%4d%4d%4d%4d%4d", a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]);
return 0;
}
```
gcc 编写函数计算Sn=a+aa+aaa+…+aa…a 分数 10 作者 王跃萍 单位 东北石油大学 编写函数计算Sn=a+aa+aaa+…+aa…a(最后一项为n个a)。
以下是使用C++编写函数计算Sn=a+aa+aaa+…+aa…a的代码:
```c++
#include <iostream>
#include <cmath>
using namespace std;
int calc(int a, int n) {
int sum = 0;
int temp = a;
for (int i = 1; i <= n; i++) {
sum += temp;
temp = temp * 10 + a;
}
return sum;
}
int main() {
int a, n;
cout << "请输入a和n的值:";
cin >> a >> n;
int result = calc(a, n);
cout << "Sn的值为:" << result << endl;
return 0;
}
```
运行结果如下:
```
请输入a和n的值:2 3
Sn的值为:246
```
阅读全文