解题思路以及注意事项:
本题主要了解scanf的用法,其格式为 scanf("%d或%c或%f(这里写入你想要输入的变量的格式)",&ch(这里写你想要把输入的值赋给的变量));
一定要注意输入格式不能错,整型用%d,字符型用%c,浮点型用%f。
&一定不能掉了,掉了编译链接没问题,但运行的时候会崩溃。
实例代码:
#include"stdio.h" int main() { char ch1,ch2,ch3,ch4,ch5; scanf("%c",&ch1); scanf("%c",&ch2); scanf("%c",&ch3); scanf("%c",&ch4); scanf("%c",&ch5); printf("%c%c%c%c%c",ch1+4,ch2+4,ch3+4,ch4+4,ch5+4); return 0; }
有什么不懂的可以在评论区评论
0.0分
215 人评分
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> //要将"China"译成密码,译码规律是:用原来字母后面的第4个字母代替原来的字母. //例如,字母"A"后面第4个字母是"E"."E"代替"A"。因此,"China"应译为"Glmre"。 //请编一程序,用赋初值的方法使cl、c2、c3、c4、c5五个变量的值分别为,’C’、’h’、’i’、’n’、’a’, //经过运算,使c1、c2、c3、c4、c5分别变为’G’、’l’、’m’、’r’、’e’,并输出。 int main() { char c1, c2 , c3, c4, c5; scanf("%c%c%c%c%c", &c1, &c2, &c3, &c4, &c5); c1 += 4; c2 += 4; c3 += 4; c4 += 4; c5 += 4; printf("%c%c%c%c%c", c1, c2, c3, c4, c5); return 0; }
#include<stdio.h> int main() { char ch1,ch2,ch3,ch4,ch5; scanf("%c%c%c%c%c",&ch1,&ch2,&ch3,&ch4,&ch5); printf("%ch%ch%ch%ch%ch",ch1+4,ch2+4,ch3+4,ch4+4,ch5+4); return 0; } 这个为什么是错的
caojiashuo 2024-03-30 05:19:37 |
%ch不对
为什么这个代码在我的编辑器里面不对呢?
#include<stdio.h> int main() { char c1,c2,c3,c4,c5; scanf("%c%c%c%c%c",&c1,&c2,&c3,&c4,&c5); 请问为什么是错的? printf("%c%c%c%c%c%c",c1+4,c2+4,c3+4,c4+4,c5+4); return 0; } }
#include<stdio.h> int main() { char ch; while((ch=getchar())!='\n') putchar(ch+4); } 提示我说超过限制了....他题目也没说带不带数字,多少个字母的密码啊。
#include<stdio.h> int main() { char c1,c2,c3,c4,c5; sacnf("%c%c%c%c%c",&c1,&c2,&c3,&c4,&c5); c1=c1+4; c2=c2+4; c3=c3+4; c4=c4+4; c5=c5+4; printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5); return 0; } 求问这个为什么编译不成功[Error] ld returned 1 exit status 是scanf不能连用嘛
答主这个好啊,容易看懂,主要是前面的章节都没怎么学,前面几个答主的都看不懂,才疏学浅了,哈哈
墨柒 2021-12-06 15:29:14 |
#include<stdio.h> int main() { char ch1,ch2,ch3,ch4,ch5; scanf("%c",&ch1); scanf("%C",&ch2); scanf("%c",&ch3); scanf("%C",&ch4); scanf("%C",&ch5); printf ("%C%C%C%C%C",ch1+4,ch2+4,ch3+4,ch4+4,ch5+4); }
墨柒 2021-12-06 15:29:30 |
有什么问题啊
想学C语音的赵XX 2022-01-28 17:57:38 |
@moyeqi scanf和printf这些括号里面都没加“”?
#include <stdio.h> #include <string.h> int main() { char s[6]; gets(s); for (int i = 0;s[i] != '\0';i++) { if (s[i] >= 'A' && s[i] <= 'Z') { s[i] = (s[i] + 4 - 'A') % 26 + 'A'; } if (s[i] > ='a' && s[i] < ='z') { s[i] = (s[i] + 4 - 'a') % 26 + 'a'; } } puts(s); return 0; } 我也想知道我哪里错了,一直找不出来
cry 2021-11-08 18:21:57 |
if (s[i] > ='a' && s[i] < ='z') 大哥,你的'> ='与'< ='出问题了,中间空格去掉就行了。
不系之舟 2021-11-28 17:43:22 |
@zhoujiaqi >=错了那是数学上才这样表示
阿尔图一 2022-01-14 21:20:50 |
i要单独定义
Fish3s 2022-01-25 21:42:29 |
#include <stdio.h> int main() { int i; char a[5]; for(i=0;i<5;i++) { scanf("%c",&a[i]); } for (i=0;i<5;i++) { if (a[i] >= 'A' && a[i] <= 'Z') { a[i] = (a[i] + 4 - 'A') % 26 + 'A'; printf("%c",a[i]); } if (a[i] >='a' && a[i] <='z') { a[i] = (a[i] + 4 - 'a') % 26 + 'a'; printf("%c",a[i]); } } return 0; }
Fish3s 2022-01-25 21:49:45 |
你的大于等于号和小于等于号那里多写了一个空格
Fish3s 2022-01-25 21:53:51 |
@uq_21510506713 在for里面定义i在线验证是可以通过的,不过我试了在VC6.0中不能这样,必须要在开头定义