C语言代码实现给你一个整数,将其转为罗马数字
时间: 2024-05-12 21:16:36 浏览: 7
下面是C语言的代码实现:
```
#include <stdio.h>
void intToRoman(int num) {
int nums[] = {1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1};
char* roman[] = {"M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"};
int i = 0;
while (num > 0) {
if (num >= nums[i]) {
printf("%s", roman[i]);
num -= nums[i];
} else {
i++;
}
}
}
int main() {
int num = 1994;
printf("%d = ", num);
intToRoman(num);
printf("\n");
return 0;
}
```
运行结果为:
```
1994 = MCMXCIV
```
该代码使用了两个数组,一个数组存储罗马数字的值,一个数组存储罗马数字的字符串。通过循环比较整数和罗马数字的值,从大到小依次输出罗马数字的字符串,直到整数变为0为止。
相关问题
编写一个c语言代码实现给定n个正整数,找出其中的众数
以下是一个实现给定n个正整数,找出其中的众数的C语言代码:
#include <stdio.h>
int main() {
int n, i, j, count, maxCount = , mode;
scanf("%d", &n);
int nums[n];
for (i = ; i < n; i++) {
scanf("%d", &nums[i]);
}
for (i = ; i < n; i++) {
count = ;
for (j = ; j < n; j++) {
if (nums[j] == nums[i]) {
count++;
}
}
if (count > maxCount) {
maxCount = count;
mode = nums[i];
}
}
printf("%d", mode);
return ;
}
C语言代码统计一个正整数中指定数字的个数
好的,我可以为你提供一个简单的 C 语言代码,用于统计一个正整数中指定数字的个数。请注意,这个代码需要用户输入一个正整数和一个指定数字,并返回指定数字在这个正整数中的出现次数。以下是代码:
```
#include <stdio.h>
int main() {
int num, digit, count = 0;
printf("请输入正整数: ");
scanf("%d", &num);
printf("请输入要查找的数字: ");
scanf("%d", &digit);
while (num > 0) {
int remainder = num % 10;
if (remainder == digit) {
count++;
}
num = num / 10;
}
printf("数字 %d 在输入数字中出现的次数为: %d", digit, count);
return 0;
}
```
请注意,此代码仅用于讲解用途,可能存在一些局限性,例如不支持负数等。如果需要更加完备的代码,需要进行进一步的开发和测试。