用c语言写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。如输入1990,应输出"1 9 9 0"。
时间: 2024-11-20 11:42:47 浏览: 21
以下是C语言实现该功能的一个函数示例[^1]:
```c
#include <stdio.h>
void separate_digits(int num) {
char digits[5]; // 存储四位数的每一位
int index = 0;
// 取出每位数字并添加空格
while (num > 0) {
digits[index++] = num % 10 + '0';
num /= 10;
}
digits[index] = '\0'; // 结束字符串
// 输出结果,每两位之间加空格
printf("%d", digits[0]);
for (int i = 1; i < index - 1; i += 2) {
printf(" %d", digits[i]);
}
printf(" %d\n", digits[index]); // 输出最后一个数字
}
int main() {
int input = 1990;
separate_digits(input);
return 0;
}
```
当你运行`separate_digits(1990)`时,它会输出`1 9 9 0`。
相关问题
用c语言写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。
你可以使用C语言来实现这个功能,下面是一个简单的函数`printWithSpaces()`,它接受一个四位数字的字符串作为参数并按照指定格式输出:
```c
#include <stdio.h>
#include <string.h> // 引入strlen函数以获取字符串长度
// 定义函数,输入一个四位数字字符串
void printWithSpaces(char input四位数字符串) {
int len = strlen(input); // 获取输入字符串的长度
for (int i = 0; i < len; i++) {
printf("%c", input[i]); // 输出当前字符
if ((i + 1) % 2 == 0 && i != len - 1) { // 每两个数字间插入空格,但最后一个数字后面不加
printf(" ");
}
}
printf("\n");
}
int main() {
char fourDigitNum[5]; // 存储四位数字
printf("请输入一个四位数字:\n");
scanf("%s", fourDigitNum);
// 调用函数并传递输入的四位数字符串
printWithSpaces(fourDigitNum);
return 0;
}
```
当你运行程序时,它会提示用户输入一个四位数字,然后按照"每个两位数之间有一个空格"的格式输出。
如何用C语言写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。如输入1990,应输出"1 9 9 0"。
您好,以下是符合您要求的C语言函数:
```c
void printDigitsWithSpace(int num) {
int digits[4];
int i;
for (i = 3; i >= 0; i--) {
digits[i] = num % 10;
num /= 10;
}
for (i = 0; i < 4; i++) {
printf("%d", digits[i]);
if (i < 3) {
printf(" ");
}
}
}
```
以上函数定义了一个名为`printDigitsWithSpace`的函数,该函数输入一个四位数字,并按照要求输出这个数字中的四个数字字符,每两个数字字符之间带有一个空格。函数的具体实现方法是,先将四位数字的每个数字提取出来存入数组`digits`中,接着根据题目要求逐个输出每个数字字符,相邻两个数字字符之间插入一个空格,最后整个输出结果是形如"1 9 9 0"这样的字符串。
阅读全文