#include<stdio.h>
#include<stdlib.h>
int main()
{
int strSize = 100;
char *str = (char *)malloc(sizeof(char) * strSize);
int charNum = 0;
char input;
//逐个字符输入字符串,可以输入int可以表示的最大值个字符
printf("请输入任意个字符:\n");
while(true)
{
scanf("%c",&input);
if(input != '#')
{
if((input >= 'A' && input <= 'Z') || (input >= 'a' && input <= 'z'))
{
if(charNum > strSize)
{
strSize += 100;
str = (char *)realloc(str,strSize);
}
str[charNum] = input;
charNum++;
}
}
else
{
break;
}
}
//输入结果分析
int i = 0,j = 0;
char *tempChar = (char *)malloc(sizeof(char) * charNum);
int *tempCharNum = (int *)malloc(sizeof(int) * charNum);
int charType = 0;
bool exist = false;
for(i = 0; i < charNum; i++)
{
exist = false;
tempChar[i] = '#';
tempCharNum[i] = 0;
for(j = 0; j < charNum; j++)
{
if(tempChar[j] == '#')
{
break;
}
if(tempChar[j] == str[i])
{
exist = true;
tempCharNum[j] += 1;
}
}
if(exist == false)
{
tempChar[charType] = str[i];
tempCharNum[charType] = 1;
charType++;
}
}
int t1;
char t2;
for(j = 0; j < charType - 1; j++)
{
for(i = 0; i < charType; i++)
if(tempCharNum[i] > tempCharNum[i+1])//如果a[i]大于a[i+1]
{
//交换a[i]和a[i+1]的值,即把较大的元素往后排
t1 = tempCharNum[i];
tempCharNum[i] = tempCharNum[i+1];
tempCharNum[i+1] = t1;
t2 = tempChar[i];
tempChar[i] = tempChar[i+1];
tempChar[i+1] = t2;
}
}
for(i = 0; i < charNum; i++)
{
if(tempChar[i] != '#')
{
printf("单词:%c,次数:%d\n",tempChar[i],tempCharNum[i]);
}
}
free(str);
free(tempChar);
free(tempCharNum);
return 0;
}
C语言编程:从键盘中输入一个英文字符串
include<stdlib.h> int main(){ int strSize = 100;char *str = (char *)malloc(sizeof(char) * strSize);int charNum = 0;char input;\/\/逐个字符输入字符串,可以输入int可以表示的最大值个字符 printf("请输入任意个字符:\\n");while(true){ scanf("%c",&input);if(input != '#...
在C语言中如何实现用键盘输入一个字符串,并打印出来
在C语言中实现用键盘输入字符串并打印的方法步骤如下:首先,需定义一个数组空间用于存放字符串,例如分配100个数组单元。接着,使用gets()函数读取键盘输入的字符串,调用格式为gets(字符数组名)。然后,应用puts()函数输出之前读取的字符串内容,使用方法为puts(字符数组名)。最后,运行程序,即可成功实...
在C语言中如何实现用键盘输入一个字符串,并打印出来
在C语言中输入并打印字符串的编程方法如下:定义一个存放字符串的数组空间,比如为字符串分配100个数组空间。使用gets()函数获取键盘输入的字符串,输入格式为gets(定义的字符数组名)。使用puts()函数输出之前输入的字符串,输出格式为puts(定义的字符数组名)。运行程序后,成功实现输入字符串并原样在屏...
c语言:输入一行英文字符串,把每个单词第一个字母变为大写,输出修改后的...
include<string.h> include<stdio.h> int main(int argc,char*argv[]){ char str[100+1];int isfirst=1;char ch;int i=0;while((ch=getchar())!=EOF){ if(isalpha(ch)){ if(isfirst==1){ ch=toupper(ch);isfirst=0;} } else { isfirst=1;} str[i++]=ch;} str='\\0';...
C语言:从键盘输入一篇英文文本,统计每个英文字母(分大小写)及空格、数...
程序代码:include <stdio.h>#include <string.h>#define MAX 10000void input(char source[]);void output(int sign[], int n);void main(){char source[MAX];int sign[256];int i;input(source);for(i=0; i<256; i++){sign[i] = 0;}\/\/统计字符串中每个字符的数量for(i=0; i...
C语言编程 从键盘上输入一字符串,将字符串里的英文字母大写输出,不是...
char c[82];int i;printf("请输入字符串:");scanf("%s",c);printf("\\n");for( i = 0; i < strlen(c); i++){ if( c[i]>='A' && c[i]<='z')putchar(toupper(c[i]));} printf("\\n");system("PAUSE");return 0;} 直接使用toupper函数就可以了;还有一种方法 if (...
在C语言中如何实现用键盘输入一个字符串,并打印出来
在C语言中输入字符串后然后打印出来的编程方法如下:1. 首先需要先定义一个存放字符串的数组空间,如给字符串100个数组空间。2.接着使用gets()函数来获取键盘输入的字符串。一般格式为gets(定义的字符数组名)。3.然后再使用puts()函数来输出之前输入的字符串内容。一般格式puts(定义的字符数组名)。4...
C语言 从键盘上输入一串单词,输出其中最长的单词
void main(void){ char w[300];int i,j,wl,lm,l;printf("Enter a string composed of words...\\n");l=strlen(gets(w));for(wl=lm=j=i=0;i<=l;i++){ if(w[i]!=' ' && w[i]!='\\n' && w[i]!='\\0') wl++;else if(w[i]==' ' || w[i]=='\\n' || w[i...
c语言 输入一个字符串,统计这个字符串的元音字母的个数,并输出。求源...
英文中的元音字母只有a、e、i、o、u五个,但要考虑大小写问题。代码如下:include "stdio.h"int main(int argc,char *argv[]){int n,i;char s[301],t;printf("Input a string...\\n");scanf("%300s",s);for(n=i=0;s[i];i++) \/*以下判断语句完成大小写元音字母都统计功能...
C语言 从键盘输入一个字符串,将其中是英文字母的就输出,并且大写输出...
include <stdio.h> void main(){ char buf[1024], *p=buf ,c;fgets(buf);while((c=*p++)){ if(c>='a'&&c<='z') printf("%c",c-'a'+'A');else if(c>='A'&&c<='Z') printf("%c",c);} }