Ⅰ 用c语言如何实现,统计从键盘输入数字的个数
可以用一个for循环,将上限设置大一点,在循环里加入if判断跳出循环的条件,每次循环计数+1或者等全部数字输入完成之后,直接取字符串长度
Ⅱ 如何用C语言编写一个程序,输入10个0-9之间的整数,请统计每个数字出现的个数,并输出
#include<stdio.h>
int num[10],count[10], i=0,temp;
//判断输入的数字是否是0到9之间的数
int input(int num){
if(num>=0&&num<=9){
return 1;
}else{
return 0;
}
}
//初始化计数的数组
void initCount(){
int i = 0;
for(i=0;i<10;i++){
count[i]=0;
}
}
//统计每个数字出现的次数
void numCount(int num){
int i;
for(i=0;i<10;i++){
if(i==num){
count[i]++;
}
}
}
//输入数字
void runProm(){
initCount();
for(;i<10;){
printf("请输入第%d个数:",(i+1));
scanf("%d",&temp);
if(input(temp)==1){
num[i]=temp;
numCount(num[i]);
i++;
}else{
printf("你输入的数字不在0到9之间,请重新输入!\n\n");
runProm();
}
}
}
void main(){
int i;
runProm();
//输出每个数出现了几次
for(i=0;i<10;i++){
printf("%d出现了%d次!\n",i,count[i]);
}
}
Ⅲ c语言:编写程序,从键盘输入80个字符,统计其中数字字符的个数,并输出统计结果
可以参考下面的代码:#include <stdio.h>intmain(){inta,b,c,ch;a=b=c=0;//计数器初始化为0.while((ch=getchar())!='\n')//循环读取字符,到换行结束。{if(ch>='0' && ch<='9')//数字a++;else if((ch>='a' && ch<='z')||(ch>='A' && ch<='Z'))//字母b++;else//其它c++;}printf("%d%d%d\n",a,b,c);//输出结果。return0;}(3)c语言输入数统计扩展阅读:printf()函数函数printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。在编写程序时经常会用到此函数。函数的原型为:int printf(const char *format, ...);函数返回值为整型。若成功则返回输出的字符数,输出出错则返回负值,printf()函数的调用格式为:printf("<格式化字符串>", <参量表>);while语句的一般表达式为:while(表达式){循环体}。参考资料来源:网络-printf()参考资料来源:网络-while (循环语句及英文单词)
Ⅳ c语言输入数据统计数字个数
这个简单,只要变量字符串,判断每个字符是否是数字(str[i]>='0'
&&
str[i]
<=9就是数字)。如果当前位不是数字,但前一个字符是数字,就说明前面有过一个数字了(数字计数+1).
//比如:
#include<stdio.h>
int main()
{
in i,cnt=0;
char str[11]="ab12cd34dd";
for(i=1;i<11;i++)
if((str[i]<'0' || str[i]>'9') && (str[i-1]>='0' && str[i-1] <=9))
cnt++;
printf("个数%d\n"cnt);
return 0;
}
注意保存字符串的数组,多定义一位,最后一个元素必须是0(也就是结束符合‘\0’);比如上面
我写的常量"ab12cd34dd",只有10个字符,实际内存中有11个字符,最后一个字符就是‘\0’,
所以数组我定义11位,循环也是11位