输入一个数据倒序输出C语言
时间: 2023-09-20 07:12:09 浏览: 94
以下是 C 语言的代码,可以让用户输入一个字符串,然后进行倒序输出:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char data[100];
printf("请输入一个字符串:");
scanf("%s", data);
int len = strlen(data);
for (int i = len-1; i >= 0; i--)
{
printf("%c", data[i]);
}
return 0;
}
```
运行上述代码,在命令行中输入字符串后,会输出该字符串的倒序结果。例如,若输入 `Hello world!`,则输出:
```
!dlrow olleH
```
其中,`scanf()` 函数可以让用户在命令行中输入一个字符串。`strlen(data)` 函数可以获取字符串的长度。在循环中,我们从字符串的最后一个字符开始,逐步向前遍历,通过下标访问字符串中的字符,并将其倒序输出。使用 `%c` 格式化输出字符。
相关问题
输入多组数据,每组第一个是整数N,接下来输入N个整数,倒序输出N个整数,使用C语言
在C语言中,你可以通过循环和栈的数据结构来实现在控制台输入多组数据并按照逆序输出。下面是一个简单的示例,我们将使用`stdio.h`和`stdlib.h`头文件以及自定义的栈结构来完成这个任务:
```c
#include <stdio.h>
#include <stdlib.h>
typedef struct {
int top;
int* array;
int capacity;
} Stack;
// 创建栈
Stack* createStack(int capacity) {
Stack* stack = (Stack*) malloc(sizeof(Stack));
stack->top = -1;
stack->array = (int*) malloc(capacity * sizeof(int));
stack->capacity = capacity;
return stack;
}
// 入栈
void push(Stack* stack, int value) {
if (stack->top == stack->capacity - 1) {
printf("Stack is full!\n");
return;
}
stack->array[++stack->top] = value;
}
// 出栈并返回顶部元素
int pop(Stack* stack) {
if (stack->top == -1) {
printf("Stack is empty.\n");
return -1;
}
return stack->array[stack->top--];
}
// 主程序
int main() {
int n;
while (scanf("%d", &n) == 1) { // 读取整数N
Stack* inputStack = createStack(n + 1); // 预留空间以防溢出
for (int i = 0; i < n; i++) { // 读入N个整数
scanf("%d", &inputStack->array[inputStack->top]);
push(inputStack, inputStack->array[inputStack->top]);
}
// 输出倒序的数字
while (!isEmpty(inputStack)) {
printf("%d ", pop(inputStack));
}
printf("\n"); // 每组之间换行
}
// 释放栈内存
free(inputStack->array);
free(inputStack);
return 0;
}
```
在这个程序中,我们首先创建了一个栈,然后将输入的数值一个个压入栈中。当需要输出时,我们从栈顶开始弹出数字并打印,实现了倒序的效果。
由键盘任意输入十个数据,将他们倒序后输出,c语言
可以使用数组和循环语句来实现,具体代码如下:
```c
#include <stdio.h>
int main() {
int nums[10];
printf("请输入十个数字:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &nums[i]);
}
printf("倒序输出:");
for (int i = 9; i >= 0; i--) {
printf("%d ", nums[i]);
}
printf("\n");
return 0;
}
```
在程序中,首先定义一个拥有10个元素的整型数组 `nums`,然后通过循环语句和 `scanf()` 函数从键盘上接收10个输入数据。接下来,再通过循环语句将数组元素倒序输出。最后,程序结束并返回0。
阅读全文