⑴ c語言逆序數怎麼編程
在C語言中。先讀取一個整數,然後每次獲取整數的個位數。再把這個個位數從原來的數據去掉。把每次獲得的個位數拼裝成為一個新的整數。下面是相關的代碼。
int x,y=0;
scanf("%d",&x);
for(;x;x/=10)y=y*10+x%10;
printf("%d\n",y);
⑵ c語言 正序 倒序 排序方法 寫代碼
冒泡排序 int [] num = new int []{1,4,2,3,6}; int temp; //設置 中間變數 將利用此變數進行 位置調換 for(int i = 0 ; i < num.length ; i++ ){ for(int j = 1 ; j < i ; j ++){ if( num[j]>num[j+1]){ //更換判斷符號 實現正序 倒序排序 temp = num[j]; //如果 num[0] 大於 num[0+1] 時 將 大的賦給中間變數 num[j] = num[j+1]; //將第二個位置num [0+1] 在賦給 num[0]第一個位置 num[j+1] = temp; //最後將 中間變數也就是 最大值 賦給 第二個值 } } } // 外層循環結束後 數組變為 int [] num = new int []{1,2,3,4,6}; 了 剩下的只要輸出就好了 for(int i = 0 ; i < num.length ; i++){ System.out.println(num[i]); //循環輸出 數組內數字 } }
} 我用 java 寫的 感覺 java可讀性高點 c語言實現思路一樣
⑶ c語言中如何實現輸入一個整數實現倒序輸出
1、新建一個工程和.c文件,輸入頭文件和主函數
⑷ 用C語言寫 字元串逆序輸出
逆序輸出有很多種,具體的實現方法取決於你題目的要求
1. 如果只是要求逆序輸出,那麼可以採用類似的方法:
void reverse(char *s)
{
if(*s=='\0')
return;
reverse(s+1);
printf("%c",*s);
}
這種方法在s很長的情況下會一直遞歸到底,不是很好。
2. 如果需要將字元串整個逆序在函數外面輸出,那麼可能希望採用返回字元串指針的方式;實現如下:
char * reverse( char* s )
{
static char *p = s+strlen(s)-1; //p是一個靜態變數,指向當前遞歸層處理的字元串尾,而s指向字元串頭
if(s < p)
{
char c = *p; //交換頭尾字元
*p = *s;
*s = c;
p--; //尾向前挪一個
reverse(s+1); //相當於頭向後挪一個
}
return s;
}
3.1 當然,有的時候,並不需要reverse函數本身遞歸,而是可以藉助一些輔助的遞歸函數,比如說:
void reversehelp(char * head, char * end)
{
if (head < end)
{
char c = *head;
*head = *end;
*end = c;
reversehelp(++head, --end);
}
}
然後在調用時像這樣調用:
char * reverse(char * s)
{
char * end = s + strlen(s) - 1;
reversehelp(s, end);
return s;
}
3.2 類似的輔助函數還可以採用一個字元串指針和一個長度參數的方式,如下例:
void reversehelp( char* s, int n )
{
if ( n > 1 )
{
char c = s[n-1];
s[n-1] = s[0];
s[0] = c;
reversehelp( s+1, n-2 );
}
}
然後在調用時如下:
char *reverse(char *s)
{
reversehelp( s, strlen(s) );
return s;
}
⑸ 怎麼用C語言編寫一個倒序排序的題
我理解倒序就是原本從大到小, 排成從小到大...(或者反過來)
這樣的話, 最簡單的方法, 編一個循環體:
int b[N];//假定數組a存放原數據, b存放倒序後的數據,N為數據個數
for(i=0,j=N;i<N&&j>=0;i++,j--)
{
b[j]=a[i];
}
如果要求不使用新數組的話,就交換兩頭元素的位置,比如12345, 15交換,24交換:
int t; //中間變數t
for(i=0;i<N/2;i++) //依然假設數組a存放原數據,N為數據個數
{
t=a[i];
a[i]=a[N-i-1];
a[N-i-1]=t;
}
⑹ 請問C語言中逆序和倒序什麼意思有什麼區別
如果由小到大是循環,那麼逆序就是由大到小排列了;倒序就是針對當前順序說的,如果當前是順序的,倒序就是逆序,如果是逆序倒序就是順序,是相對的說法。
⑺ c語言倒序程序怎麼編寫
我理解倒序就是原本從大到小,
排成從小到大...(或者反過來)
這樣的話,
最簡單的方法,
編一個循環體:
int
b[N];//假定數組a存放原數據,
b存放倒序後的數據,N為數據個數
for(i=0,j=N;i
=0;i++,j--)
{
b[j]=a[i];
}
如果要求不使用新數組的話,就交換兩頭元素的位置,比如12345,
15交換,24交換:
int
t;
//中間變數t
for(i=0;i
追問:
這樣遞增遞減
變數是什麼
評論
0
0
0
載入更多
⑻ c語言 倒序
#include <stdio.h>
#include <string.h>
#include <stdlib.h>#define N 6void dx(char *a,int num);
void main()
{
char a_1[N];
printf("請輸入一段字元(長度小於%d):",N-1);
gets(a_1);
dx(a_1,strlen(a_1));
printf("反序存放後為:");
printf("%s\n",a_1);
system("pause");
}
void dx(char *a,int num)
{
char tmp;
int i;
for (i=0;i<(num/2);i++) {
tmp = a[i];
a[i] = a[num-i-1];
a[num-i-1] = tmp;
}
}
⑼ 用C語言如何編寫"鍵盤輸入一個多位數,然後倒序輸出"
可以將輸入的多位數順序存放到一個數組中,之後逆序輸出即可。
具體的實現方法可以參考如下程序:
#include<stdio.h>
#include<string.h>
voidmain()
{
charnum[20];
inti;
printf("輸入一個多位數:")
scanf("%s",num);//將多位數作為一個字元串的形式一次性輸入,保存在num數組中
//將數組num中的字元逆序輸出,即實現多位數的倒序輸出
for(i=strlen(num)-1;i>=0;i--)
printf("%c",num[i]);
}
⑽ C語言中怎麼把一個任意的數倒序輸出.知道的請告訴一下,謝謝.
需要准備的材料分別有:電腦、C語言編譯器。
1、首先,打開C語言編譯器,新建一個初始.cpp文件,例如:test.cpp。