c语言题目错在哪(将一个字符串中的所有小写字母转换成大写,其余不变)并且说说指针什么时候要带*号

#include "stdio.h"
void main()
{
char *p,a[100];
int i;
for(i=0;i!='\0';i++)
scanf("%c",&a[i]);
p=a;
{for(;*p!='\0';p++)
if(*p>='a'&&*p<='z')
*p=*p-32;}
for(i=0;i!='0';i++)
printf("%c",a[i]);
}

楼主你好!

帮你代码,你更正完毕!自己对照!

#include "stdio.h"
 main()
{
 char *p,a[100];
 int i;
 scanf("%s",a);
 p=a;
 for(;*p!='\0';p++){
  if(*p>='a'&&*p<='z')
   *p=*p-32;
   }
 for(i=0;a[i]!='\0';i++)
  printf("%c",a[i]);
}

 

希望我的回答对你有帮助!

在这里p是一个int类型的指正变量,p里面存的是地址,是数组a的首地址,*p表示访问地址所存的数据或者说是内容,简单的所,如果你要去取p里面存的那个地址所存的数据,就用*p!

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-05-24
程序有问题
for(i=0;i!='\0';i++) //这个i!=‘\0’不对
scanf("%c",&a[i]);
结束符\0ascii码制就是0,这里要吗规定输入多少个字符,要吗用gets来输入字符串
最后那个输出的for判断也不对,要吗用*p!='\0',要吗用puts来输出字符串

c语言题目错在哪(将一个字符串中的所有小写字母转换成大写,其余不变...
在这里p是一个int类型的指正变量,p里面存的是地址,是数组a的首地址,*p表示访问地址所存的数据或者说是内容,简单的所,如果你要去取p里面存的那个地址所存的数据,就用*p!

...小写字母全部装换为大写字母,其他字符保持不变。
include <stdio.h> include <wctype.h> int main (){ char str[] = "Test String.";int len = sizeof(str)\/sizeof(char);for (int i=0; i!=len; ++i) { str[i] = toupper(str[i]);} for (int i=0; i!=len; ++i) { printf("%c",str[i]);} return 0;} 输入我就...

c语言程序 写一个函数将一个字符串中的所有小写字母变成大写字母
\/\/ 这条语句在使用 ASCII 字符集的机器上能够运行,但在使用 EBCDIC 字符集的机器上将会失败。\/\/ 另一方面,下面这条语句 \/\/ if ( isupper( ch ) )\/\/ 无论机器使用哪个字符集,它都能顺利运行 \/\/ \/\/ 参考文献:《pointers on c》

...将一串字符中的小写字母转换成大写,其他字符不变。请将下划_百度...
str[i]-=32;

C语言将字符串中的所有小写字母转换为大写字母并输出。
strupr();这个函数可以完成你题目的须要 或是写一个循环也可以 for(int i=0;i<strlen(str1);i++){ if(str1[i]==' ')continue;str1[1]-=32;} 这样就可以了,不过如果遇到符号和数字会有问题,如果字符串内有数字和符号还得加判断 ...

C语言用strupr函数将字符串中小写字母转换成大写字母,其他字符不转换...
用法:#include <string.h> 功能:将字符串s转换为大写形式 说明:只转换s中出现的小写字母,不改变其它字符。返回指向s的指针。举例:\/\/ strupr.c include <syslib.h> include <string.h> main(){ char *s="Copywrite 1999-2000 GGV Technologies";clrscr();printf("%s",strupr(s));getchar...

C语言把一个字符串里所有的大写字母换成小写字母,小写字母换成大写字...
可以使用ctype.h中的4个函数 islower,isupper分别判断是否是小写、大写,toupper,tolower分别转化成大写,小写 下面给出样例,输入字符串,输出转化后的 \/ 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;...

C语言 功能:将字符串中的小写字母转换为对应的大写字母,其他字符...
include "conio.h"char *toDaXie(char *s);\/*函数--变大写*\/ main(){ char *s;printf("Input a string please!\\n");gets(s);printf("The result:\\n%s\\n",toDaXie(s));getch();} char *toDaXie(char *s)\/*函数--变大写的具体内容*\/ { int i;for(i=0;i96&&s[i]<123)\/*...

C语言将字符串中所有小写字母换成大写
include<stdio.h> include<string.h> include<ctype.h> int main(){ char p[255];int i;scanf("%s",p);for(i=0;i<strlen(p);i++)if(islower(p[i]))p[i]-=32;printf("%s",p);return 0;}

...是将所给字符串的奇数下标上的小写字母转换成大写字母输出
好几处写错了,我都改了,你参考一下:include <stdio.h>int main (void){char *fun (char *p) ;char *z ;char c[100]="asddgxQEZVBNR";z=fun (c);printf ("%s\\n",z);}char *fun (char *p){char *q=p ;int i ;for (i=0;*q!='\\0';i++,q++){if(i%2!=0&&*q>...

相似回答
大家正在搜