main()
{char s1[100]="ab cd EFG !";
fun(al);printf("%s\n",sl);
}
程序运行后输出结果是
为什么?p[i-1]=p[i-1]-'a'+'A'书上不是这样,书印错了么?fun(s1); //参数应该是s1
书上是a1
...fun(char*p) {int i=0 while(p[i]) {if(p[i]==' '&&islower(p[i-1...
islower(p[i-1])功能是判断字符p[i-1]是否为小写英文字母,当ch为小写英文字母(a-z)时,返回非零值,否则返回零。p[i]==' '表示p[i]为空格。两者同时成立表示p[i]此时为空格而它的上一位是小写字母是小写的。然后把p[i-1]改成大写。希望帮到你。
C语言 为什么最后输出的A大写
if(p[i]==' '&&islower(p[i-1])) p[i-1]=p[i-1]-'a'+'A';这句条件语句的意思是: 如果 本字符是 空格,前面一个字符 是小写字母,那么把前面那个小写字母改变成 大写字母。其余不变。(小写字母与大写字母 编码之差 是 'a'-'A'). 小写变大写 是 p[i-1]=p[i-1]-'a'...
有以下程序,程序中库函数islower (ch)用以判断ch中的字母是否为小写字母...
void fun(char *p){ int i=0;while(p[i]){ if(p[i]==' '&&islower(p[i-1]))p[i-1]=p[i-1]-'a'+'A';i++;} } int main(){ char s1[100]="ab cd EFG!";fun(s1);printf("%s\\n",s1);return 0;} 想问的是fun(s1);能生效???不是只有s1=fun(s1)时才能生...
急!!历年国家计算机二级c语言笔试真题答案。
int x[N]; int x[N]; C)int x[0..10〕; D)int x〔〕; (28)若要定义一个具有5个元素的整型数组,以下错误的定义语句是 A)int a[5]={0}; B)int b[]={0,0,0,0,0}; C)int c[2+3]; D)int i=5,d[i]; (29)有以下程序 #include<stdio.h> void f(int *p); main() {int a...
C语言把一个字符串里所有的大写字母换成小写字母,小写字母换成大写字...
include<stdio.h> include<string.h> include<ctype.h> int main(){ char s[100];int i,len;gets(s);len=strlen(s);for(i=0;i<len;i++){ if(islower(s[i]))s[i]=toupper(s[i]);else if(isupper(s[i]))s[i]=tolower(s[i]);} printf("%s",s);return 0;} \/ 亲测...
C语言指针函数的统计字母个数
这程序里很很多不规范,首先,你想返回的是整形数据,所以最好把char改为Int,虽然你用%d格式输出(我也不清楚这行不行,呵呵)。声明一个变量的时候记得最好初始化。像这里的num和num1都应该初始化下。还有你主函数里的*p好像没用到。程序中很多语句都是多余的,你要想如何用最简短的语句达到你...
python中求小写字母的多少(python判断小写字母个数)
char*p;intupper=0;intlower=0;intspace=0;intdigit=0;intother=0;p=str;\/\/P指针指向数组第一个元素str[0]gets(p);while(*p)\/\/P不为空的时候继续下面du的 { if(*p='A'*p='Z')\/\/判断zhi是否为大写 { upper++;\/\/统计大写字母个数 } elseif(*p='a'*p='z')\/\/是否为小写dao { ...
求助!c++编程如何查询字符串中的大写,小写,符号。
每个字符都有与之对应的ascii码,大写字母的ascii码是65-90,小写字母的ascii码是97-122,符号的ascii码有些分散,您可以百度《ascii码表》进行查询。定义一个字符变量,分别获取字符串的每个字符并且赋值给定义的变量,通过ascii码值就可以判定该字符是什么了。希望能帮助到您!谢谢。
循环1次后cin.getline直接被跳过了,求高人解释~~
void fun(){ \/\/define variables char *n; \/\/nifix express char *p; \/\/postfix express char temp[maxsize]; double result; \/\/result double parameter[para_num]; \/\/values of parameters int i=0,j=0; int counter=0; \/\/the number of variabl...
C语言大小写字母转换
ASCII码:美国(国家)信息交换标准(代)码,一种使用7个或8个二进制位进行编码的方案,最多可以给256个字符(包括字母、数字、标点符号、控制字符及其他符号)分配(或指定)数值。ASCII码于1968年提出,用于在不同计算机硬件和软件系统中实现数据传输标准化,在大多数的小型机和全部的个人计算机都使用此码。