标题:初学者,不知道为何不能完成其正常功能,请大神指教!
只看楼主
kissSX
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2017-3-15
结帖率:100%
 问题点数:0 回复次数:4 
初学者,不知道为何不能完成其正常功能,请大神指教!
#include<stdio.h>
#include<string.h>
void ma(char *p);
void main()//完成小写字母转换成大写字母功能
{
    char a[100];
    printf("请输入字符:");
    scanf("%s",a);
    ma(a);
    printf("转换后的字符:%s\n",a);
}
void ma(char *p)
{
    char s[100];
    int i,j;
    p=s;
   
    for(j=0;j<10;j++)
    {    if(*p>='a'&&*p<='z')
            *p=*p-32;
             p++;
    }
}
搜索更多相关主题的帖子: include 字母 
2017-03-20 15:07
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1728
专家分:3216
注 册:2015-12-2
得分:0 
#include <stdio.h>
 main()
 {
     char a[50],*p;
     printf("请输入字符串:");
     scanf("%s",a);
     for(p=a;*p!='\0';p++)
     {
         if(*p>='a'&&*p<='z')*p=*p-32;
     }
     printf("新字符串为:%s",a);
 }
2017-03-20 15:16
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
void ma(char *p)
{
    for(;*p;p++)
        if(*p>='a'&&*p<='z')
            *p=*p-32;
}
2017-03-20 15:17
kissSX
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2017-3-15
得分:0 
回复 3楼 吹水佬
请问我的代码是错在哪呢?是指针的问题吗?
2017-03-20 15:29
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
得分:0 
问题在这一句 p=s; 你只是对空的数组s[100]做了转换,去掉这句就好了
2017-03-20 15:51



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-475286-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.155896 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved