程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> 編程-能幫我看看代碼嗎?我這代碼怎麼輸出那麼多個0?

編程-能幫我看看代碼嗎?我這代碼怎麼輸出那麼多個0?

編輯:編程綜合問答
能幫我看看代碼嗎?我這代碼怎麼輸出那麼多個0?

輸入一個字符串,內有數字和非數字字符,例如:a123x456 7689?89njnk32lnk123,
將其中連續的數字作為一個整數,依次存放到一維數組a中,例如123放在b[0],456放
在b[1]......統計共有多少個整數,並輸出這些數。弟1行輸出個數,第2行輸出多個整數
,用空格分隔。

 #include<stdio.h>
#include<math.h>
void main()
{
    int i,j=0,k=0,x=0,n,m,b[100];
    char s[100],a[100];
    gets(s);
    for(i=0;s[i]!='\0';i++)
    {
        if(s[i]>='0'&&s[i]<='9')
            a[j++]=s[i];
        else
        {
            j--;
            for(n=0;j>=0;j--,n++)
                x+=(a[j]-'0')*(int)pow(10,n);
            b[k++]=x;
            x=0;  j=0;
        }
    }
    printf("%d\n",k);
    for(m=0;m<k;m++)
        printf("%d ",b[m]);
    printf("\n");
}

圖片說明

最佳回答:


現在i=0,
那麼s[i]是字母,執行else,在else中,j=0,j--,則j=-1,執行b[k++] = x,則 b[0]=0
其他情況類似

YXTS122
YXTS122
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved