c语言用指针编写,输入一行文字,找出其中大写字母,小写字母,空格,数字以及其他字符各有多少?
if(*p++>='A'&&*p++<='Z')
a++;
算法有问题,
你判断的时候,不管是否符合,都++运算了,而且可能还连加两次,那当前字符就不管它了么
#include
#include
#include
using namespace std;
int main()
{
char s[80];
gets(s);
int upper,lower,number,space,other;
upper=lower=number=space=other=0;
char *p;
for(p=s;*p;p++)
{
if(isupper(*p)) upper++;
else if(islower(*p)) lower++;
else if(isdigit(*p)) number++;
else if(isspace(*p)) space++;
else other++;
}
cout<<"大写字母有"<<upper<<"个"<<endl;
cout<<"小写字母有"<<lower<<"个"<<endl;
cout<<"数字有"<<number<<"个"<<endl;
cout<<"空格有"<<space<<"个"<<endl;
cout<<"其他有"<<other<<"个"<<endl;
return 0;
}
void main()
{
int a=0,b=0,c=0,d=0,e=0,i=0;
char *p,s[20];
while((s[i]=getchar())!='\n')i++;
p=s;
while(*p!=10)
{
if(*p>='A'&&*p<='Z')
a++;
else if(*p>='a'&&*p<='z')
b++;
else if(*p==' ')
c++;
else if(*p>='0'&&*p<='9')
d++;
else e++;
p++;
}
printf("大写字母 %d 小写字母 %d\n",a,b);
printf("空格 %d 数字 %d 非字符 %d\n",c,d,e);
}
c语言编程用指针编写三个函数分别是输入十个数,将他们小到大排序后...
include <stdio.h>#define N 10void printit(int *a,int n){int i;for(i=0;i<n;i++)printf("%5d",*(a+i));}void sortit(int *a,int n){int i,j,m;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(*(a+i)>*(a+j)){m=*(a+i);*(a+i)=*(a+j);*(a+j)...
用C语言结构体指针编程序实现输入十个学生的学号,期中和期末成绩,计 ...
combox *Find(int); \/\/查找条例条件的记录,并返回该记录的指针 public:Commonbox(){head=NULL;} int ListCount(); \/\/统计当前链表的记录总数,返回一个整数 void AddItem(int num, string name, int mark); \/\/添加一条记录到表尾void RemoveItem(int); \/\/删除一条指定的记录 void List();...
c语言 输入一串字符串,统计并输出其中的大写字母、小写字母、数字字符...
用指针编写程序 include<stdio.h> void main(){ char a[100];int sum0=0,suma=0,sumA=0;gets(a);char*p;for(p=a;*p!='\\0';p++){ if(*p>='0'&&*p<='9')sum0+=1;else if(*p>='a'&&*p<='z')suma+=1;else if(*p>='A'&&*p<='Z')sumA+=1;} printf("数字字符数量...
C语言:(用指针编写)输入一行文字,找出其中大写字母,小写字母,空格,数字...
if(*p++>='A'&&*p++<='Z')a++;算法有问题,你判断的时候,不管是否符合,都++运算了,而且可能还连加两次,那当前字符就不管它了么
C语言:用指针来输入数据.
p是指针,因为开始定义的时候 *p=arr,就是表示p指向数组arr的首地址 scanf("%d",p); 于是就表示arr地址输入当前值。等效于 scanf("%d",arr)如果你开始没有把p指向某个地址,那肯定会出错的
c语言指针输入
include<stdio.h> int main(){ int a,b,c,s[3],t;int *x,*y,*z;\/\/定义指针变量 x=&a;\/\/将a的地址赋给指针x,下同 y=&b;z=&c;scanf("%d%d%d",x,y,z);s[0]=*x;\/\/将指针x所指向的变量值赋给数组s的第一个元素;依次类推 s[1]=*y;s[2]=*z;for(int i=0;i<3...
用指针编写一个程序
include<stdio.h> include<ctype.h> define MAX 100\/\/输入的最大字符数为100 int main(){ int total=0;\/\/字符总数。int count_upper=0;\/\/大写字母数。int count_lower=0;\/\/小写字母数。int count_digit=0;\/\/数字的个数。int count_other=0;\/\/其它字符数。char *ptr;\/\/指向字符串的指...
C语言 用指针方法 输入3个字符串 按由小到大顺序输出
可以使用三个数组,或者是一个二维数组来存储字符串,同时定义一个指针数组,指向三个字符串的首地址。然后对指针数组进行排序。代码如下:include <stdio.h>#include <string.h>int main(){ char buf[3][100]; char *p[3] = {buf[0],buf[1], buf[2]}; int i,j; for(i ...
C语言 必须用指针方法编程 输入一个一维实型数组,输出其中最大值...
1 创建数组;2 输入数组各个元素值;3 遍历,求最大,最小,和平均值;4 输出结果。为提高效率,其中2,3两步可在同一个循环中完成。代码如下:int main(){ float a[10]; int i; float *p, *pmax,*pmin, ave = 0; p = pmax= pmin = a; scanf("%f",p); for...
C语言利用指针编写函数,输入3个学生2门课成绩,计算每个学生的平均分和...
给你一个简单的程序。 希望能看的懂。include "stdafx.h"include "stdio.h"int main(int argc, char* argv[]){ int a,b,c;printf("a学生成绩是:");int a1,a2;scanf("%f,%f",&a1, &a2);printf ("b学生成绩是:");int b1,b2;scanf ("%d,%d",&b1,&b2);int c1,c2;printf("...
老奔甲紫: #includevoid main() { char s[256],*p; int a,b,c,d; gets(s); p=s; a=b=c=d=0; while ( *p!=0 ) { if ( *p>='A' && *p<='Z' ) a++; else if ( *p==' ' ) b++; else if ( *p>='0' && *p<='9' ) c++; else d++; p++; } printf("大写字母%d,空格%d,数字%d,其他%d.\n",a,b,c,d); }
上虞市18588373861: 用C++指针编写输入一行文字,找出其中大小写字母,空格,数字及其它字符各有多少? - ?
老奔甲紫: #include using namespace std; int main() { //i初始化 int i=0,A=0,a=0,space=0,d=0,other=0; char *p,s[20]; while((s[i]=getchar())!='\n')i++;// gets(s);//这话用得干脆 p=s; while(*p!='\n')//不等于是这么判断的 { if(('A' else if(('a' else if(('0' else if(*p==' ')space++; else other++; p++; } cout return 0; }
上虞市18588373861: c语言编程,从文件读入一行数据,如何才能反向查找指定汉字,并记录当前指针,输出指针后面的内容? - ?
老奔甲紫: 很简单 不解释 直接上代码 (安纯沟门乡)Press any key to continue#include #include <strin...
上虞市18588373861: c语言用指针编写程序:输入一行字符,将其中的字符从小到大排列后输出. - ?
老奔甲紫: //用的是qsort快排.#include#include#include int comp(void const *a,void const*b) { return *(char*)a-*(char*)b; } int main() { char str[100]; gets(str); qsort(str,strlen(str),sizeof(str[0]),comp); puts(str); }
上虞市18588373861: c语言 用指针方法处理:输入一行字符,统计并输出其中大写字母、小写字母、空格、数字及其它字符的个数. - ?
老奔甲紫: #include<stdio.h> void main() { int a=0,b=0,c=0,d=0,e=0,i=0; char *p,s[20]; while((s[i]=getchar())!='\n')i++; p=s; while(*p!=10) { if(*p>='A'&&*p<='Z') a++; else if(*p>='a'&&*p<='z') b++; else if(*p==' ') c++; else if(*p>='0'&&*p<='9') d++; else e++; p++; } ...
上虞市18588373861: C语言指针操作之 查找一个给定字符集中出现的字符 - ?
老奔甲紫: #include char *find_char(char const *source, char const *chars){ char *p,*q,a,b; for(p=source;*p;p++) for(q=chars;*q;q++) if(a=*p,b=*q,a==b)return((char*)p); return(""); } int main(int argc, char *argv[]){ char c; c=*find_char("ABCDEFG","XRCHJ"); printf("%c",c); return 0; }
上虞市18588373861: 用C语言,读入一行字符,使用指针遍历,统计字符中有多少数字字符...... - ?
老奔甲紫: char s[100]={'\0'}; char *p=s; int count=0; scanf("%s",s); while(*p!='\0') {if(*p>='0' && *p<='9'){count++;}p++; } printf("%d",count);
上虞市18588373861: 用指针编写输入一行文字,找出其中大小写字母,空格,数字及其它字符各有多少.为什么我的程序运行不了 - ?
老奔甲紫: 你是个可爱小女孩吧,呵呵,,,程序总共错了14个地方如果你没有返回值的话main函数前要加void ,其次A=0,a=0,spa=0,num=0,oth=0;这是个逗号表达式,编写大程序极容易出错,要么你就在定义int时间隔逗号赋值,要么你赋一个值加一...
上虞市18588373861: 用C语言写程序:从键盘输入一行文字,统计出该行字符中大写字母,小写字母,空格等的个数.要求用到指针. - ?
老奔甲紫: char c[80],m; gets(c); int *p; int num=0,i; p=# for(i=0;(m=c[i])!=0;i++) {if(c[i]>='A'&&c[i]<='Z') num++;} 这个只能统计出 大写字母个数 楼主 看着在IF下边加两行就行了
上虞市18588373861: c语言用指针从S1字符串中查找字符串S2 - ?
老奔甲紫: 展开全部#include#include int Search(char *s1,char *s2) { int i,k; i=0; if(strlen(s1) { return -1; } k=0; while(strlen(s1)>=strlen(s2)) { if(*(s2+i)==*(s1+k+i)) { i++; } else { i=0; k++; } if(*(s2+i)=='/0') return k; else if(*(s1+k+i)=='/0') return -1; } } main() { char s1[...