函数章节第四小节最后一问
本帖最后由 轮回的夏 于 2016-8-12 19:07 编辑编写一个用来统计输入的各个数字,空白符以及所有其他字符出现次数的程序,分别存储在变量num,blank,othersl里边分别打印出来下面是我自己编写的程序
#include<stdio.h>//为什么程序运行的时候,按下F6之后还需要按多一下回车键才能继续运行
void main()
{
char num={ 0 } , blank={ 0 } , other={ 0 };//所有字符储存于这些数组中
char c={ 0 };
intblanks , number, others;//此处定义的变量用来存放所计算数字,空白符以及其他字符出现次数
blanks=number=others=0;
int a , b , d ;//该变量用于储存sentence的长度
int i = 0 ,j = 0 ,k = 0;//储存字符数组的重要变量
printf("Please input a sentence:");
while((c=getchar())!='*')
{
a=b=d=sizeof(c);
while(c==' '|| c=='\t'|| c=='\n')
{
++blanks;
while( a )
{
blank=c;
a--;
i++;
}
}
while( '0'<c || c<'9')
{
++number;
while( b )
{
num=c;
b--;
j++;
}
}
while( c!=' ' || c!='\t' || c!='\n' || c<'0' || c>'9' )
{
++others;
while( d )
{
other=c;
d--;
k++;
}
}
}
printf("There are %d blanks in this sentence \n",blanks);
for(i=1;i<a;i++)
{
printf("%c ",blank);
while(i%5==0)
{
printf("\n");
}
}
printf("There are %d numbers in this sentence\n",number);
for(j=1;j<a;j++)
{
printf("%c ",num);
while(j%5==0)
{
printf("\n");
}
}
printf("There are %d other characters in this sentence\n",others);
for(k=1;k<a;k++)
{
printf("%c ",other);
while(k%5==0)
{
printf("\n");
}
}
}
一开始我会出现不知道如何使用getchar输入一串字符,然后分别储存在数组之中
然后我想了挺久(本人比较蠢),想出了个解决方法
#include<stdio.h>
int main()
{
char a={ 0 },c={ 0};
intk , i=0 , j=0 ;
printf("Please input a sentence :");
while( ( c=getchar() )!='\n')
{
a=c;
}
j=0;
for(k=0;k<=i;k++)
{
printf("%c\n",c);
}
}
写出来之后,打算使用里面的循环方法套用到原函数
但是套用进去之后发现运行的时候,只要按下回车键就会报错 对了,还有一点,本人使用的是VC++6.0
编写一个用来统计输入的各个数字,空白符以及所有其他字符出现次数的程序,分别存储在变量num,blank,othersl里边分别打印出来下面是我自己编写的程序
#include<stdio.h>//为什么程序运行的时候,按下F6之后还需要按多一下回车键才能继续运行
void main()
{
char num={ 0 } , blank={ 0 } , other={ 0 };//所有字符储存于这些数组中
char c={ 0 };
intblanks , number, others;//此处定义的变量用来存放所计算数字,空白符以及其他字符出现次数
blanks=number=others=0;
int a , b , d ;//该变量用于储存sentence的长度
int i = 0 ,j = 0 ,k = 0;//储存字符数组的重要变量
printf("Please input a sentence:");
while((c=getchar())!='*')
{
a=b=d=sizeof(c);
while(c==' '|| c=='\t'|| c=='\n')
{
++blanks;
while( a )
{
blank=c;
a--;
i++;
}
}
while( '0'<c || c<'9')
{
++number;
while( b )
{
num=c;
b--;
j++;
}
}
while( c!=' ' || c!='\t' || c!='\n' || c<'0' || c>'9' )
{
++others;
while( d )
{
other=c;
d--;
k++;
}
}
}
printf("There are %d blanks in this sentence \n",blanks);
for(i=1;i<a;i++)
{
printf("%c ",blank);
while(i%5==0)
{
printf("\n");
}
}
printf("There are %d numbers in this sentence\n",number);
for(j=1;j<a;j++)
{
printf("%c ",num);
while(j%5==0)
{
printf("\n");
}
}
printf("There are %d other characters in this sentence\n",others);
for(k=1;k<a;k++)
{
printf("%c ",other);
while(k%5==0)
{
printf("\n");
}
}
}
一开始我会出现不知道如何使用getchar输入一串字符,然后分别储存在数组之中
然后我想了挺久(本人比较蠢),想出了个解决方法
#include<stdio.h>
int main()
{
char a={ 0 },c={ 0};
intk , i=0 , j=0 ;
printf("Please input a sentence :");
while( ( c=getchar() )!='\n')
{
a=c;
}
j=0;
for(k=0;k<=i;k++)
{
printf("%c\n",c);
}
}
写出来之后,打算使用里面的循环方法套用到原函数
但是套用进去之后发现运行的时候,只要按下回车键就会报错
@FishC_GPT
页:
[1]