1、(1)逆序数 输入一个任意整数(int型),输出其位数并逆序输出该数。
输入
输入一个任意整数(int型)
输出
输出其位数及逆序数
样例输入
12345
-123
100
样例输出
54321 5
-321 3
001 3
#include <stdio.h>
int main() {
int num;
int reverse_num = 0;
int count=0;
scanf("%d",&num);
int flag = num;
int f = 0;
int index = 0;
while (num != 0) {
int digit = num % 10;
reverse_num = reverse_num * 10 + digit;
if(flag % 10==0 && flag < 0 && index==0){
printf("-");
index=1;
}
if(flag % 10 == 0){
if(reverse_num<0){
reverse_num = reverse_num*(-1);
}
printf("%d",reverse_num);
f = 1;
}
num /= 10;
count++;
}
if(f !=1){
printf("%d %d\n",reverse_num,count);
}else{
printf(" %d\n",count);
}
return 0;
}
(2)逆序输出(数组练习)数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来的一种形式。这些按序排列的同类数据元素的集合称为数组 数组类型说明 在C语言中使用数组必须先进行类型说明。数组说明的一般形式为: 类型说明符 数组名 [常量表达式],……; 其中,类型说明符是任一种基本数据类型或构造数据类型。 数组名是用户定义的数组标识符。 方括号中的常量表达式表示数据元素的个数,也称为数组的长度。 例 int a[10]; 说明整型数组a,有10个元素。float b[10],c[20]; 说明实型数组b,有10个元素,实型数组c,有20个元素。char ch[20]; 说明字符数组ch,有20个元素。
输入
多组测试数据。第一行输入一个整数T表示测试数据组数 每组首先输入1个整数n,然后输入n个整数(不大于20)
输出
对于每组测试数据按照输入相反的顺序输出n个数据
样例输入
2
3
1 2 3
5
2 3 1 4 5
样例输出
3 2 1
5 4 1 3 2
#include<stdio.h>
int main(){
int t,n;
scanf("%d",&t);
for(int i=0;i<t;i++){
scanf("%d",&n);
int a[n];
for(int j=0;j<n;j++){
scanf("%d",&a[j]);
}
for(int j=0;j<n-1;j++) //从最后一个开始输出,到倒数第二个,最后一个输出格式变化
printf("%d ",a[n-j-1]);
printf("%d\n",a[0]);
}
return 0;
}
2、求斐波那契数列的前n项值 输入n,求斐波那契数列前n项的值。斐波那契数列规律如下:1, 1, 2, 3, 5, 8, 13,21, 34,55…,从第三项开始,每一项都是前面两项的和。
输入
输入正整数n。
输出
输出斐波那契数列的前n项值
样例输入
1
3
5
8
样例输出
1
1 1 2
1 1 2 3 5
1 1 2 3 5 8 13 21
#include <stdio.h>
//获取第n项斐波那契数列值
int fn(int n){
int i;
if(n==