吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 987|回复: 6
收起左侧

[求助] 这两行代码是什么意思?

[复制链接]
18131431963 发表于 2021-10-19 16:52
将字母大小字互换

#include <stdio.h>
int main()
{
        char s[80];
        int i;
        printf("shuruzifuchuan:\n");
        for(i=0;((s=getchar())!='\n')&&(i<80);i++);
        s='\0';        //这两行是什么意思?
          for(i=0;s!='\0';i++)
          {
                  if(s<='z'&&s>='a')
                  s=s-32;
                  else if(s<='Z'&&s>='A')
                  s=s+32;
                  printf("%c\n",s);
          }
   
    return 0;
     
       
}

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

luanshils 发表于 2021-10-19 18:34
看着像赋值
木有海鲜 发表于 2021-10-19 18:51
tpdddP 发表于 2021-10-19 19:05
从键盘逐个接收字符串赋给s,并且只接收前80个字符。

免费评分

参与人数 1热心值 +1 收起 理由
18131431963 + 1 谢谢@Thanks!

查看全部评分

ryosga 发表于 2021-10-19 19:51
首先, 你的代码有问题
int getchar();  // getchar() 返回的是一个字符
所以 for(i=0;((s=getchar())!='\n')&&(i<80);i++);  这里的 s=getchar() 是错误的, 我想应该是 s[i] = getchar()
这句的意思就是从控制台读取字符串, 直到换行符'\n'或者达到80个字符未知
然后,  s='\0'; 也是有问题的, 应该是 s[i] = '\0';  这句是在字符串末尾增加一个结束符

免费评分

参与人数 1吾爱币 +1 收起 理由
18131431963 + 1 谢谢@Thanks!

查看全部评分

 楼主| 18131431963 发表于 2021-10-23 16:01
明白了,感谢各位!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 20:26

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表