① c語言如何把轉換進制數前面的0去掉呢
void main()
{
char popo;
int a[N],b,c,i=0,j;
printf("十進數為:");
int u=0,y;
scanf("%d",&b);
c=b;
printf("直接輸出十六進制數為%x",c);
printf("\n");
printf("二進制數為:");
for(;;)
{
i=0;
if(u>0)
printf("二進制數為:");
while(b) //不用for循環,用while循環,直到b=0退出循環
{
a[i]=b%2;
b=b/2;
i++;
}
for(j=i-1;j>=0;j--)//輸出時藉助上面用到的i,這樣就不會輸出多餘的
printf("%d",a[j]);
printf("\n");
printf("轉換的十六進制數為:");
i=0;//為了上面用到i不影響下面,置0
while(c)
{
a[i]=c%16; //輸出十六進制改法同上咯
c=c/16;
i++;
}
for(j=i-1;j>=0;j--)
{if(a[j]>=10)
printf("%c",a[j]+55);
else
printf("%d\n",a[j]); }
printf("是否繼續?(Y/N)");
fflush(stdin);
scanf("%c",&popo);
if((popo=='n' || popo=='N') || (popo!='y' && popo!='Y'))
break;
fflush(stdin);
printf("十進數為:");
scanf("%d",&b);
c=b;
fflush(stdin);
u++;
for(y=0;y<20;y++)
a[y]=0;
}
printf("\n");
system("pause");
}
這僅僅是對Chen b2009的程序進行一些修改,加了個重復輸入的功能。
② c語言如何只刪除一個字元串一個數前面的0
char s[] = "0000123023";
int i, j;
for (i = 0; s[i] == '0'; i++);
for (j = 0; s[j]=s[i]; i++, j++);
③ C語言中字元串輸出如何去掉最前面的未知個數個0
i為4,*p=s+3;p++;
p-i,*p=s
printf("%s\n",p-i);是輸出一個字元串,這個字元串從數組s開始,直到這個數組結束完,數據的結束標志和字元串是一樣的,故可到數組最後一個最就不打下面的字元了。
④ c語言,截取前幾個數字用什麼函數
#include<stdio.h>
#define max 200 //輸入的數最多兩百個
int main()
{
int i,input,len=0;
int a[max],front;
printf("\nplease input the number!\n");
scanf("%d",&input);
printf("請輸入要取出的位數!\n");
scanf("%d",&front);
len=strlen(input); //輸入數字的長度
for(i=0;i<front;i++) //用來取出所有的單個數字
{
a[i] =input/(10^len);
input=input%(10^len);
len--;
}
for(i=0;i<front;i++)
{
printf("%d",a[i]);
}
}
這道題應該能運行,不能的話,發個消息過來,我來調試下!
⑤ c語言中輸出時怎麼將第一個非零數字前的零去掉
#include<stdio.h>
//先跳過'0'字元,再輸出剩下的字元
//注意特判下0的情況
voidoutput(chars[]){
inti=0;
while(s[i]=='0'&&s[i]!=NULL)i++;//跳過字元'0',即前導0
if(s[i]==NULL)putchar('0');//跳過所有'0'字元後下標i指向了字元串結尾,說明此時要輸出的數是0
while(s[i]!=NULL)putchar(s[i++]);//輸出餘下的字元
putchar(' ');
}
intmain(){
chars[]="0005080";
output(s);
return0;
}
⑥ 從鍵盤輸入任意一個整數,編程計算該數各位數字的累加和(忽略整數前的正負號)。用c語言怎麼編程
#include<stdio.h>
int main()
{
printf("輸入一個0-99999的整數\n");
int i,j;
while(1)
{
scanf("%d",&i);
j=i/10000+i%10000/1000+i%10000%1000/100+i%10000%1000%100/10+i%10;
printf("%s\n","各位之和為:");
printf("%d\n",j);
}
return 0;
} 如果要是負數在前邊再加上判斷,一個負號就行了
⑦ C語言編寫程序從鍵盤任意輸入一個4位數X,編程計算X的每一位數字相加之和(忽略整數前的正負號)
#include<stdio.h>
void main()
{
int i=0,sum=0;
char s[10];
scanf("%s",s);
while(s[i]!=0)
{
if(s[i]>='0' && s[i]<='9')
sum += s[i]-'0';
i++;
}
printf("%s的每一位數字相加之和為%d\n",s,sum);
}