用c语言写一个函数,输入一个4位数字,要求输出这4个数字字符,但每两个数字间空一个空格。如输入1990,应输出“1 9 9 0”。
时间: 2024-12-13 20:19:20 浏览: 41
在C语言中,你可以编写一个名为`print_digits`的函数,接受一个整数作为输入,并通过循环和格式化输出实现这个需求。下面是一个简单的示例:
```c
#include <stdio.h>
void print_digits(int num) {
// 将整数转换为字符串,同时处理每一位
char digits[5]; // 存储四位数字加上额外的'\0'
int i;
for (i = 0; i < 4 && num > 0; ++i, num /= 10) {
digits[i] = '0' + num % 10; // 取余得到当前位的数字
}
digits[i] = '\0'; // 添加终止符
// 输出每两位数字之间插入空格
for (int j = 0; j < 4; ++j) {
if (j != 0 && j % 2 == 0) { // 每隔一位打印一次空格
printf(" ");
}
printf("%c", digits[j]); // 打印数字字符
}
}
int main() {
int input;
printf("请输入一个4位数字:");
scanf("%d", &input);
print_digits(input);
return 0;
}
```
当你运行程序并输入一个4位数字,比如`1990`,它会按照指定格式输出。
相关问题
用C语言写一个函数,要求输入一个4位数字,输出这四个数字字符,但每两个数字间空一个空格
当然可以,这里是一个简单的C语言函数,它接收一个四位数作为输入,并将每个两位数字之间加上一个空格:
```c
#include <stdio.h>
void print_four_digits(int num) {
if (num >= 0 && num < 1000) { // 检查是否为4位数
int hundreds = num / 100; // 取百位
int tens = (num % 100) / 10; // 取十位
int ones = num % 10; // 取个位
printf("%d ", hundreds); // 输出百位
printf("%d ", tens); // 输出十位
printf("%d", ones); // 输出个位
} else {
printf("输入不是4位数\n");
}
}
int main() {
int input_num;
printf("请输入一个4位数字: ");
scanf("%d", &input_num);
print_four_digits(input_num);
return 0;
}
```
当你运行这个程序并输入一个4位数时,例如`1234`,它会输出`1 2 3 4`。如果输入的是非4位数,就会显示错误信息。
用C语言写一个函数,输入一个4位数字,要求输出这4个数字字符,但每两个数字间空一个空格
你可以用C语言编写一个函数,这个函数接受一个整数作为输入,然后将其转换为两位一组的字符串,并在每组之间插入空格。下面是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
// 函数声明
void print_digits(int num);
int main() {
int input_num;
printf("请输入一个四位数字:");
scanf("%d", &input_num);
print_digits(input_num);
return 0;
}
// 函数实现
void print_digits(int num) {
char str[5]; // 存储每一位数字字符
int index = 0;
while (num > 0) {
str[index++] = num % 10 + '0'; // 取余并转为字符
if (index == 3 || num == 0) { // 到第四位或者结束时加空格
str[index++] = ' '; // 添加空格
}
num /= 10; // 移除最低位
}
// 由于字符串最后一位可能是空格,需要回溯并打印完整结果
for (int i = index - 1; i >= 0; i--) {
printf("%c", str[i]);
}
printf("\n"); // 结束行
}
```
当你运行这个程序时,它会提示你输入一个四位数字,然后按照描述的方式输出。例如,如果输入的是`1234`,输出将是`1 2 3 4`。
阅读全文