解题思路:


愉快的心情才能使自己身心投入!

每题笑话:



小芳决定下个星期日结婚,她写信把这件大喜事告诉在外地打工的弟弟。信上这样写着:这个星期日,是我大洗的日子,请回。一个星期后,小芳收到一个大包裹和一封信,是弟弟寄来的。信的内容是:劳动紧张,不能回家,只得将脏衣服寄给你洗。辛苦你了,姐姐!




参考代码:

#include<stdio.h>
#include<string.h>
int main()
{
char a[100];
int i,j;
gets(a);
j=strlen(a);
for(i=0;i<j;i++)
{
if((a[i]>='a'&&a[i]<='y')||(a[i]>='A'&&a[i]<='Y'))
{
printf("%c",a[i]+1);
}
else if(a[i]=='z')
{
printf("a");
}
else if(a[i]=='Z')
{
printf("A");
}
else
{
printf("%c",a[i]);
}
}
return 0;
}

有不懂的可以留言,看在小的这么用心的份上,看客老爷们点个赞吧!

点赞(18)
 

0.0分

13 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 10 条评论

柠檬树下 4年前 回复TA
#include <stdio.h>
int main()
{
	char s[1000];
	int i=0;
	while ((s[i] = getchar()) != '\n') i++;
	s[i] = '\0';
	for (i = 0; s[i] != '\0'; i++)
	{
		if ((s[i] >= 'a'&&s[i] <= 'z') || (s[i] >= 'A'&&s[i] <= 'Z'))
		{
			if (s[i] == 'z') s[i] = 'a';
			else if (s[i] == 'Z') s[i] = 'A';
			else s[i]++;
		}
	}
	for (i = 0; s[i] != '\0'; i++)
	{
		printf("%c", s[i]);
	}
	printf("\n");
	return 0;
}
请问这个为什么会运行错误?哪位大佬能帮忙看看。
Noir 5年前 回复TA
好冷的笑话
酷酷流浪猫 5年前 回复TA
@清风小白 printf()函数打印不了空格,分隔符之类。建议改用puts()函数
酷酷流浪猫 5年前 回复TA
@lijd0621 printf()函数打印不了空格,分隔符之类。建议改用puts()函数
酷酷流浪猫 5年前 回复TA
@专业报大腿 printf()函数打印不了空格,分隔符之类。建议改用puts()函数
专业报大腿 5年前 回复TA
#include<stdio.h>
int main(){
	char tmp[1000];
	int i;
	gets(tmp);
	for(i=0;tmp[i]!='\0';i++){
		if(tmp[i]>='a' && tmp[i]<='z'){
			if(tmp[i]-97+4+1 >26){
				tmp[i]=(tmp[i]-97+1)%26+97;
			}
			else
				tmp[i]+=1;
		}else if(tmp[i]>='A' && tmp[i]<='Z'){
			if(tmp[i]-65+4+1>26){
				tmp[i]=(tmp[i]-65+1)%26+65;
			}
			else
				tmp[i]+=1;
		}
	}
	printf("%s\n",tmp);
	return 0;
}
lijd0621 5年前 回复TA
#include <stdio.h>
#include<string.h>

int main()
{
    char test[1024] = {0};
    scanf("%s", test);
	
	int i = 0;
    while(i < strlen(test))
	{
		if((test[i] >= 'a' && test[i] < 'z') || (test[i] >= 'A' && test[i] < 'Z'))
		{
			test[i] += 1;
		}
		
		if(test[i] == 'z')
		{
			test[i] = 'a';
		}
		
		if(test[i] == 'Z')
		{
			test[i] = 'A';
		}

		i++;
	}
	
    printf("%s\n", test);
    return 0;
}
请问这为什么错误???
清风小白 6年前 回复TA
#include<stdio.h>
#include<string.h>
int main()
{
    char a[1000];
    gets(a);
    for(int i=0;i<strlen(a);i++)
{
    if((a[i]<'z'&&a[i]>='a')||(a[i]<'Z'&&a[i]>='A'))
    a[i]++;
    else if(a[i]=='z'||a[i]=='Z')
             if(a[i]=='z') a[i]='a';
             else a[i]='A';
}
    printf("%s",a);
    return 0;
}
请问这个为什么会答案错误
1231231231 6年前 回复TA
@三日月夜空 if条件中有a[t]<='Z',而else if中为a[t]=='Z',有矛盾,且当a[t]=='Z'时,a[t]不应该为'A'吗?
三日月夜空 7年前 回复TA
#include<stdio.h>
#include<string.h>
void main()
{
    char a[20],i,t;
    gets(a);
    i=strlen(a);
    for(t=0;t<i;t++)
    {
        if((a[t]>='a'&&a[t]<'z')||(a[t]>='A'&&a[t]<='Z'))
            a[t]=a[t]+1;
        else if(a[t]=='z')
            a[t]='a';
        else if(a[t]=='Z')
            a[t]='Z';
    }
    puts(a);
}
请问这个为什么会运行错误