Я хочу извлечь только числа из строки и поместить их в массив.Как извлечь только цифры из строки?
Например, строка "fds34 21k34 k25j 6 10j340ii0i5"
.
Я хочу сделать один массив, какие элементы являются как следующие:
arr[0]=34, arr[1]=21, arr[2]=34, arr[3]=25, arr[4]=6, arr[5]=10, arr[6]=340, arr[7]=0, arr[8]=5;
мой пробный код:
#include <stdio.h>
int main()
{
char ch;
int i, j;
int pr[100];
i=0;
while ((ch = getchar()) != '\n'){
if(ch>='0' && ch<='9'){
pr[i] = ch-'0';
i++;
}
for(j=0; j<i; j++)
printf("pr[%d]: %d\n", j, pr[j]);
return 0;
}
Мой код не может распознать смежный номер. просто 'pr
' массив имеет {3, 4, 2, 1, 3, 4, 2, 5, 6, 1, 0, 3, 4, 0, 0, 5}
. Есть ли какой-либо метод для реализации моей цели?
Вы можете показать нам свой код? – Cherubim
На самом деле, у меня нет моего кода. Мне просто интересно, как найти только цифры в строке. Затем я попытался сделать некоторый код, а именно точные числа в строке. Но я этого не сделал. Но я отредактирую часть кода, подождите, пожалуйста, –
Храните временный символ 'char *', сохраняйте числа как 'char', конвертируйте в 'int', а затем добавьте в' 'int []' при запуске в пробелы – Arc676