① C語言字元串
簽到答一題,空灌不好意思,就隨手寫一段:
#include <stdio.h>
void main()
{
char buf[256];
scanf("%s",buf);
char k;
int i,j;
for(i=j=0;buf[i];i++) if(buf[i]>buf[j]) j=i; //找到最大的位置
for(k=buf[j];j>0;j--) buf[j]=buf[j-1]; //記下最大的元素,前面的都往後移一位
buf[0]=k; //插到首位
printf("%s",buf);
}
② C語言中的「把abcd四個整數按從小到大的順序排列後輸出」問題
拿a>b來說,因為是從小到大排列,所以得將a
,b的值轉換一下,temp是用來轉換的中間值,若不用temp,直接使b=a,那麼會導致a,b值相等
若a=5,b=3
temp=a
使temp=5
a=b
使a=3
b=temp使b=5
這樣a便等於3,b等於5
,依次輸出a,b時會輸出3,5
從小到大排列
③ C語言編程abcd比較大小
#include<stdio.h>
main()
{
inta,b,c,d,t;
scanf("%d%d%d%d",&a,&b,&c,&d);
if(a<b)
{t=a;a=b;b=t;}
if(a<c)
{t=a;a=c;c=t;}
if(a<d)
{t=a;a=d;d=t;}
if(b<c)
{t=b;b=c;c=t;}
if(b<d)
{t=b;b=d;d=t;}
if(c<d)
{t=c;c=d;d=t;}
printf("&d&d&d&d ",a,b,c,d);
}
④ C語言中,可以有字元『abcd』存在嗎如果可以,應該佔多少位元組呢
C語言中,不僅可以有字元『abcd』存在,還可以有漢字,但它們都是以機器碼的方式進行存儲和傳送的。abcd1234和標點是以ASCI碼形式存儲,佔一個位元組,漢字有幾種編碼方式,但都占兩個位元組。
⑤ C語言編程abcd比較大小,作業,下節課就交,麻煩大佬們幫忙
inti,j;
for(i=0;i<n;i++)
{
for(j=0;i+j<n-1;j++)
{
if(num[j]>num[j+1])
{
inttemp=num[j];
num[j]=num[j+1];
num[j+1]=temp;
}
Print(num,n);
}
}
return;
用冒泡排序排一下就出來了, num 數組是a b c d
⑥ 在不同進制的4個數中,最大的一個數是
C語言中表示數時經常提到二進制、八進制、十進制和十六進製表示。
為方便理解,先介紹十進制。
十進制:是指由0,1,2,3,4,5,6,7,8,9 十個數字表示的數,逢十進位,因此是十進制,可以看出十進制沒有單獨數字10,因為不需要,10可以用進1位表示。
同理:
二進制:是有0和1兩個數字表示的數,逢2進位,所以二進制中不會出現2。
八進制:是指由0,1,2,3,4,5,6,7 八個數字表示的數,逢8進位。
十六進制:是指由0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F 十六個數字表示的數,其中英文字元(不區分大小寫)A-F分別表示10-15。
C語言標准中,整數可以直接使用八進制、十進制、十六進制三種表示,二進制標准沒有支持,但是部分編譯器提供支持。
例如,對於自然數100,分別使用以上四種進製表示(tips:可以使用Windows自帶的計算器-程序員模式作為工具,方便日常驗算)
int i=100; // 十進制
int j=0144; // 八進制,首位必須是0表示
int k=0x64; // 十六進製表示,前綴必須是0x或0X
int m=0b01100100; // 二進製表示,前綴必須是0b或0B
注意:二進製表示,C標准未規定,部分編譯器才能支持,不建議使用。
各種進制轉換十進制數值:
十進制:
100= 110^2 + 010^1 + 0*10^0
其中102表示10的2次方,101表示10的1次方,以此類推。
八進制:
0144=18^2 + 48^1 + 4*8^0 = 100
十六進制:
0x64=616^1 + 416^0 = 100
二進制:
0b01100100= 02^7 + 12^6 +12^5 + 02^4 + 02^3 + 12^2 + 02^1 + 02^0
二進制和八進制、十六進制快速轉換:
觀察發現:每3個二進制數位可以轉換成1個八進制數位,每4個二進制數位轉換成1個十六進制數位。
例如:
二進制到八進制:
0b01100100 = 0b 01 100 100 = 144 = 0144 //加上前綴0
⑦ 在C語言中,計算a和b所指的字元串的長度之差。與比較a和b所指字元串的大小,這兩句話有什麼區別
計算a和b所指的字元串的長度之差:指的是a所指的字元串和b所指的字元串之間長度的差的大小。。。。
比如:
*a="abc";長度是3
*b="abcd";長度是4
差就是4-3=1;
--------------------------------------------------
與比較a和b所指字元串的大小:
指的是對a b所指的字元串的內容比較大小。。。
例如:
*a="abecd";
*b="abcde";
則a指的字元串要比b所指的字元串要小。。。。。
--------因為比到兩個字元串的第三個字母的時候e<c[在ASC碼里是這樣的]。。。所以a字元串比b字元串小