逆向c语言
① 输入三个数,然后逆向输出 用c语言编写
思路:定义三个变量a,b,c;键盘输入依次赋值,输出c,b,a的值即可。
参考代码:
#include <stdio.h>
#include<stdlib.h>
int main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);//键盘输入
printf("%d %d %d\n",c,b,a);//逆序输出
return 0;
}
/*
运行结果:
1 2 3
3 2 1
*/
② 用c语言写,由键盘输入一个数,然后逆向输出这个数,该怎么写
#include<stdio.h>
#include<string.h>
intmain()
{
longintn;
charch[20];
inti;
scanf("%ld",&n);
if(n<0)
n=-n;
sprintf(ch,"%ld",n);
for(i=strlen(ch)-1;i>=0;i--)
printf("%c",ch[i]);
printf(" ");
return0;
}
示例运行结果:
123456
654321
③ c语言字符串逆向输出
把这条语句for (j = sizeof(s[i])/sizeof(char)-1; j >=0 ; j--)改成:
for(j=strlen(s[i])-1;j>=0;j--)
当然还要加一个string.h的头文件。
因为定义字符数组的时候就是s[][10],所以不管你写入几个字符,sizeof(s[?])都是10,用strlen()比较好。
④ C语言逆向输出
首先,很欣赏你的要求;然后我来讲讲我的思路,仅供参考:
思路(一):直接用int类型做,判断位数时,当然用循环从小到大循环,用"%"(模)的方式判断;你的第二第三个问题一起做比较好,用求模和整除的方式分割这个数,然后把分割的每一位数累加到另一个int类型上。
思路(二):用字符串做,用库函数strlen很容易判断位数,也很容易输出每位数,以及倒序;其实倒序更容易,只要倒着输出就行,不一定要重新放到另一个字符串中。
思路(三):用递归函数做,用一个int作为计数,一个char类型的用来逐个放置,控制好结束条件,即输入“\n”时结束,然后自然容易做到那3点。
其实,以上逆序的方法都可以换成对称的思路……
⑤ 逆向显示输入的非负整数值(C语言)
do
while
循环结构
的循环条件在循环体的后面,循环体至少执行一次。所以你的第一个do语句不管输入什么,都要执行第一个printf语句。我觉得这是数据输入提示信息,没毛病。
⑥ 关于C语言逆向输出数组
#include
\"stdio.h\"
main()
{
int
num[5]={1,2,3,4,5};
for(i=5;i>0;i--)/*定义一个i,从最后一个开始输出*/
{
printf(\"%d\",num[i]);
}
}
不好意思,好久没写C程序,语法可能不对,也没有调试工具,给你参考一下,如果明天没有人回答的话,我帮你再弄一下
⑦ C语言 逆向输出数字
#include "stdio.h"
int main()
{
int n,i,j,a;
scanf("%d",&n);
if(n%2==1)//如果输入的是奇数
{
for(i=0;i<4;i++) //输出是4行
{
for(j=0;j<=i;j++) //每行输出i+1个数
{
printf("%d",n);
if(++n==10) n=1;//输出9后,下一个是1
}
printf("\n");//输出1行后换行
}
}
else//输入的是偶数
{
for(i=0;i<4;i++)//输出4行
{
for(j=0;j<=i;j++)//每行输出i+1个数
{
printf("%d",n);
if(--n==0) n=9; //输出1后直接跳到9
}
printf("\n");
n+=2*i+3;
//以4为例,输出第1行后,n变成3,所以要加上2*0+3变成6
//输出第2行后,n变成4,加上2*1+3变成9
if(n>=10) n-=9;
//输出第3行后,n变成6,加上2*2+3变成13,减去9后变成4
}
}
}
⑧ C语言中如何逆向输出中文
#include
"stdio.h"
void
Convert(int
n)
{
int
x=0,a[100];
while(n)
{
a[x++]=n%2;
n/=2;
}
--x;
printf("\n二进制为:\n");
while(x>=0)
printf("%d",a[x--]);
}
void
main()
{
int
m;
printf("请输入一个十进制数:\n");
scanf("%d",&m);
Convert(m);
}
这个吧
/////////////////////////////////////////
////////////////////////////////////////
你的意思是返回一个二进制数?
#include
"stdio.h"
int
Convert(int
n)
{
int
x=0,a[100],m=0;
while(n)
{
a[x++]=n%2;
n/=2;
}
--x;
while(x>=0)
m=10*m+a[x--];
return
m;
}
void
main()
{
int
m,n;
printf("请输入一个十进制数:\n");
scanf("%d",&m);
n=Convert(m);
printf("%d",n);
}
不过返回的数形式上是二进制。
⑨ c语言 实现字符串的逆向输出
第一个循环将i定位到字符串尾部,第二个循环从尾部往头部逐个遍历输出字符。