关于一点程序知识 C语言的

来源:百度知道 编辑:UC知道 时间:2024/09/22 17:35:41
有没有能输入多少个字符就分配多少个数组的方法?
前提是你不能确定要输入多少个字符。

输入一段带有数字的字符串,结果是统计数字出现的次数
好一点的解题思路是什么?

输入一段带有数字的字符串,结果是统计数字出现的次数

如果你是为了这个题目的话,那么根本用不着数组,
在用户输入的时候,一个一个字符判断,最后将数字的计数输出就可以了

编码如下:
#include<stdio.h>
#include<conio.h>

int main()
{
char ch;
int count=0;

printf("please input a string: \n");

while((ch=getchar())!='\n')//一个字符一个字符的读取用户输入的字符串,直到读取到回车,循环结束
{
if((ch>='0')&&(ch<='9')) count++;//如果输入的为数字,计数加1
}

printf("There are %d int in the string.",count);

getch();
return 1;
}

运行结果:
please input a string:
hjhyyuGFYU6786%^*&^& I&**T^&**Y&&T^&Y857546678bgjhghjHJHJ
There are 13 int in the string.

可以:
先用一个盾环
char a[]; //不跟下标就行了

----------------------------------------
int i=0;
while((c=getchar())!=/0')
if (c>='0' && c<='9')
i++;

这个一般是事先设置一个比较大的数组。例如buf