c语言如何分割字符串并将结果放入数组?

比如
输入 1,5,7,9,4
回车后得到 a[1]=1 a[2]=5 a[3]=7 a[4]=9 a[5]=4

如果是从输入读,那不用存字符串,直接存数组就好了
比如
scanf(“%d,%d....”,a,a+1,a+2...)
如果已经是字符串了,比如str,那么用sscanf
比如sscanf(str,“%d,%d....”,a,a+1,a+2...)追问

我的想法是
输入不固定数量的数据,比如
输入14,2,70
得到 a[1]=14 a[2]=2 a[3]=70
或者
输入29,61
得到 a[1]=29 a[2]=61
其中输入多少个数 不是固定的3个或2个,可以无限多。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-10-30

    调用scanf函数读入字符串

    遍历字符串的每一个字符,记录字符串中数字的个数

    根据数字的个数调用malloc函数创建动态数组a

    再次遍历字符串并将数字字符减去'0',把得到的值填入数组a

追问

大一新生,,还没学到指针那块,能否用其他方法?

相似回答